:root {
  --md-text-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --md-code-font: "Cascadia Code", Consolas, monospace;
  --md-primary-fg-color: #0d3b36;
  --md-primary-fg-color--dark: #06211e;
  --md-accent-fg-color: #18b7a5;
  --docs-hero-start: #071a17;
  --docs-hero-end: #0f3b36;
}

[data-md-color-scheme="slate"] {
  --md-default-bg-color: #071312;
  --md-default-fg-color: #e5f5f2;
  --md-default-fg-color--light: #9ab7b2;
  --md-default-fg-color--lighter: #6e8e88;
}

.md-header {
  background: linear-gradient(135deg, var(--docs-hero-start) 0%, var(--docs-hero-end) 55%, #133f58 100%);
}

.md-main {
  background:
    radial-gradient(circle at top right, rgba(24, 183, 165, 0.12), transparent 28%),
    radial-gradient(circle at left top, rgba(14, 165, 233, 0.08), transparent 24%),
    linear-gradient(180deg, rgba(7, 26, 23, 0.04), transparent 20rem);
}

.hero {
  margin: 1.5rem 0 2rem;
  padding: 2rem;
  border-radius: 1.5rem;
  background: linear-gradient(135deg, var(--docs-hero-start), var(--docs-hero-end));
  color: white;
  box-shadow: 0 30px 60px rgba(7, 26, 23, 0.18);
}

.hero h1,
.hero .md-typeset h1 { color: white; margin: 0 0 0.5rem; }
.hero p { color: rgba(255, 255, 255, 0.92); }
.hero .eyebrow { letter-spacing: 0.12em; text-transform: uppercase; font-size: 0.78rem; font-weight: 700; color: rgba(255, 255, 255, 0.7); }
.hero .hero-meta { margin-top: 1rem; max-width: 52rem; }
.hero .md-button { margin: 0.4rem 0.5rem 0 0; border-radius: 0.5rem; color: #fff; border-color: rgba(255, 255, 255, 0.55); }
.hero .md-button--primary { background: #18b7a5; border-color: #18b7a5; color: #071a17; }

.md-typeset .grid.cards > ul > li {
  border-radius: 1rem;
  border: 1px solid rgba(24, 183, 165, 0.12);
  box-shadow: 0 12px 28px rgba(7, 26, 23, 0.05);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.md-typeset .grid.cards > ul > li:hover { transform: translateY(-2px); box-shadow: 0 18px 34px rgba(7, 26, 23, 0.08); }
.md-typeset .grid.cards .twemoji { color: var(--md-accent-fg-color); }
.md-typeset .mermaid,
.md-typeset .mermaid-source { overflow-x: auto; padding: 0.75rem; border-radius: 0.75rem; background: rgba(24, 183, 165, 0.035); }
.md-typeset table:not([class]) { border-radius: 0.75rem; overflow: hidden; }
.md-typeset table:not([class]) th { white-space: nowrap; }
.md-typeset code { border-radius: 0.35rem; }

@media (max-width: 600px) {
  .hero { padding: 1.35rem; border-radius: 1rem; }
  .hero h1 { font-size: 1.65rem; }
  .hero .eyebrow { font-size: 0.65rem; }
}

@media (prefers-reduced-motion: reduce) {
  .md-typeset .grid.cards > ul > li,
  .md-typeset .grid.cards > ul > li:hover { transition: none; transform: none; }
}
