/* SeekUplift brand layer over Material (slate).
   Tokens from brand/SEEKUPLIFT_DESIGN_SYSTEM.md and the app palette
   (navy800 #0a0f1e, teal #00d4aa, mint #a8ffe0, Space Grotesk / DM Sans).
   No layout widths that would force horizontal page scroll at 360px. */

:root,
[data-md-color-scheme="slate"] {
  color-scheme: dark;
  --su-navy-900: #07090f;
  --su-navy-800: #0a0f1e;
  --su-navy-700: #0c1120;
  --su-navy-600: #0d1221;
  --su-navy-500: #111827;
  --su-text: #f0f4ff;
  --su-text-dim: #b4c0d4;
  --su-muted: #8892a4;
  --su-faint: #7c8aa0;
  --su-teal: #00d4aa;
  --su-teal-deep: #009f80;
  --su-teal-dark: #006b56;
  --su-mint: #a8ffe0;
  --su-on-teal: #06231c;
  --su-warn: #ffb454;
  --su-line: rgba(255, 255, 255, 0.07);
  --su-line-strong: rgba(255, 255, 255, 0.12);
  --su-radius: 16px;
  --su-radius-sm: 10px;
  --su-display: "Space Grotesk", var(--md-text-font, "DM Sans"), ui-sans-serif, sans-serif;
  --su-body: "DM Sans", var(--md-text-font), ui-sans-serif, sans-serif;
  --su-mono: "DM Mono", var(--md-code-font), ui-monospace, monospace;

  --md-hue: 222;
  --md-default-fg-color: var(--su-text);
  --md-default-fg-color--light: var(--su-text-dim);
  --md-default-fg-color--lighter: var(--su-muted);
  --md-default-fg-color--lightest: var(--su-line-strong);
  --md-default-bg-color: var(--su-navy-900);
  --md-default-bg-color--light: rgba(7, 9, 15, 0.54);
  --md-default-bg-color--lighter: rgba(7, 9, 15, 0.26);
  --md-default-bg-color--lightest: rgba(255, 255, 255, 0.06);
  --md-primary-fg-color: var(--su-navy-800);
  --md-primary-fg-color--light: var(--su-navy-600);
  --md-primary-fg-color--dark: var(--su-navy-900);
  --md-primary-bg-color: var(--su-text);
  --md-primary-bg-color--light: var(--su-text-dim);
  --md-accent-fg-color: var(--su-teal);
  --md-accent-fg-color--transparent: rgba(0, 212, 170, 0.12);
  --md-accent-bg-color: var(--su-on-teal);
  --md-accent-bg-color--light: var(--su-on-teal);
  --md-typeset-color: var(--su-text-dim);
  --md-typeset-a-color: var(--su-teal);
  --md-typeset-table-color: var(--su-line-strong);
  --md-typeset-table-color--light: rgba(255, 255, 255, 0.035);
  --md-typeset-mark-color: rgba(0, 212, 170, 0.28);
  --md-code-fg-color: var(--su-mint);
  --md-code-bg-color: var(--su-navy-600);
  --md-code-hl-color: rgba(0, 212, 170, 0.18);
  --md-code-hl-string-color: var(--su-teal);
  --md-code-hl-keyword-color: var(--su-mint);
  --md-code-hl-comment-color: var(--su-muted);
  --md-admonition-fg-color: var(--su-text);
  --md-admonition-bg-color: var(--su-navy-600);
  --md-footer-bg-color: var(--su-navy-900);
  --md-footer-bg-color--dark: var(--su-navy-900);
  --md-shadow-z1: 0 1px 0 var(--su-line);
  --md-shadow-z2: 0 8px 24px rgba(0, 0, 0, 0.35);
  --md-shadow-z3: 0 16px 40px rgba(0, 0, 0, 0.45);
}

html {
  scrollbar-color: rgba(136, 146, 164, 0.45) transparent;
}

body {
  font-family: var(--su-body);
  background: var(--su-navy-900);
  color: var(--su-text);
}

::selection {
  background: rgba(0, 212, 170, 0.28);
  color: var(--su-text);
}

/* Dawn glow — brand radial, static (no motion in the WebView). */
.md-main {
  background:
    radial-gradient(900px 420px at 50% -120px, rgba(0, 212, 170, 0.12), transparent 70%),
    var(--su-navy-900);
}

/* Header matches app chrome, not a teal bar. */
.md-header {
  background: rgba(10, 15, 30, 0.94);
  color: var(--su-text);
  border-bottom: 1px solid var(--su-line);
  box-shadow: 0 1px 0 rgba(0, 212, 170, 0.08);
  backdrop-filter: blur(16px);
}

.md-header__topic,
.md-header__title {
  font-family: var(--su-display);
  font-weight: 600;
  letter-spacing: -0.03em;
}

.md-header__button.md-logo img,
.md-nav__button.md-logo img {
  height: 2.2rem;
  width: auto;
  filter: drop-shadow(0 0 8px rgba(0, 212, 170, 0.4));
}

.md-header__button.md-logo:hover img,
.md-nav__button.md-logo:hover img {
  filter: drop-shadow(0 0 12px rgba(168, 255, 224, 0.55));
}

.md-header__button {
  color: var(--su-text);
}

/* Material hides the logo below the drawer breakpoint. The in-app
   WebView is always that width — keep the Token Sprout in chrome. */
@media screen and (max-width: 76.1875em) {
  .md-header__inner {
    display: flex;
  }

  .md-header__button[for="__drawer"] {
    order: -1;
  }

  .md-header__button.md-logo {
    display: inline-flex;
  }

  .md-header__button.md-logo img {
    height: 1.85rem;
  }
}

.md-search__form {
  border-radius: 999px;
}

@media screen and (min-width: 60em) {
  .md-search__form {
    background: rgba(255, 255, 255, 0.06);
  }

  .md-search__form:hover,
  .md-search__form:focus-within {
    background: rgba(0, 212, 170, 0.12);
  }
}

.md-search-result__meta,
.md-search-result__title {
  font-family: var(--su-display);
}

.md-search-result mark {
  background: transparent;
  color: var(--su-mint);
  box-shadow: inset 0 -2px 0 var(--su-teal);
}

/* Drawer / sidebar */
.md-sidebar {
  background: transparent;
}

.md-nav--primary .md-nav__title {
  background: var(--su-navy-800);
  color: var(--su-text);
  font-family: var(--su-display);
  font-weight: 600;
  letter-spacing: -0.02em;
}

.md-nav--primary .md-nav__title .md-logo img {
  height: 2.6rem;
}

.md-nav__item--section > .md-nav__link {
  font-family: var(--su-mono);
  font-weight: 500;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--su-muted);
}

.md-nav__link {
  color: var(--su-text-dim);
  border-radius: var(--su-radius-sm);
  font-size: 0.82rem;
}

.md-nav__link:hover,
.md-nav__link:focus {
  color: var(--su-teal);
}

.md-nav__item .md-nav__link--active,
.md-nav__link--active {
  color: var(--su-teal);
}

.md-nav--secondary .md-nav__title {
  font-family: var(--su-mono);
  font-weight: 500;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--su-muted);
  background: transparent;
}

.md-nav__link--active:not(.md-nav__container) {
  color: var(--su-teal);
}

.md-typeset {
  font-family: var(--su-body);
  font-weight: 400;
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--su-text-dim);
  overflow-wrap: break-word;
}

.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4 {
  font-family: var(--su-display);
  font-weight: 600;
  letter-spacing: -0.03em;
  color: var(--su-text);
}

.md-typeset h1 {
  font-size: 1.85em;
}

.md-typeset a {
  color: var(--su-teal);
}

.md-typeset a:hover {
  color: var(--su-mint);
}

.md-typeset .headerlink {
  color: rgba(0, 212, 170, 0.35);
}

.md-typeset hr {
  border-color: var(--su-line);
}

.md-typeset blockquote {
  border-left: 0.2rem solid var(--su-teal);
  color: var(--su-text-dim);
  background: rgba(0, 212, 170, 0.05);
  border-radius: 0 var(--su-radius-sm) var(--su-radius-sm) 0;
  padding: 0.6em 1em;
}

.md-typeset code,
.md-typeset kbd,
.md-typeset pre {
  font-family: var(--su-mono);
}

.md-typeset code {
  background: rgba(0, 212, 170, 0.08);
  color: var(--su-mint);
  border-radius: 6px;
  word-break: break-word;
}

.md-typeset pre,
.md-typeset pre > code {
  background: var(--su-navy-600);
  color: var(--su-text);
  border-radius: var(--su-radius);
  white-space: pre-wrap;
  overflow-wrap: break-word;
}

.md-typeset table:not([class]) {
  background: var(--su-navy-600);
  border: 1px solid var(--su-line);
  border-radius: var(--su-radius);
  overflow: hidden;
  font-size: 0.95em;
}

.md-typeset table:not([class]) th {
  background: var(--su-navy-500);
  color: var(--su-teal);
  font-family: var(--su-mono);
  font-weight: 500;
  font-size: 0.85em;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  vertical-align: bottom;
}

.md-typeset table:not([class]) td {
  color: var(--su-text-dim);
}

.md-typeset table:not([class]) tr:hover td {
  background: rgba(0, 212, 170, 0.05);
}

.md-typeset .admonition,
.md-typeset details {
  border-radius: var(--su-radius);
  border: 1px solid var(--su-line);
  box-shadow: none;
  background: var(--su-navy-600);
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-left-color: var(--su-warn);
}

.md-typeset .warning > .admonition-title,
.md-typeset .warning > summary {
  background: rgba(255, 180, 84, 0.12);
}

.md-typeset .admonition.note,
.md-typeset details.note {
  border-left-color: var(--su-teal);
}

.md-typeset .note > .admonition-title,
.md-typeset .note > summary {
  background: rgba(0, 212, 170, 0.1);
}

.md-typeset .admonition-title,
.md-typeset summary {
  font-family: var(--su-display);
  font-weight: 600;
  color: var(--su-text);
}

.md-typeset .tabbed-set {
  border-radius: var(--su-radius);
}

.md-typeset .tabbed-labels > label {
  font-family: var(--su-display);
  color: var(--su-muted);
}

.md-typeset .tabbed-labels > label:hover,
.md-typeset .tabbed-set > input:checked + label {
  color: var(--su-teal);
}

.md-footer {
  background: var(--su-navy-900);
  color: var(--su-muted);
  border-top: 1px solid var(--su-line);
}

.md-footer__inner {
  padding-top: 0.8rem;
}

.md-footer__title,
.md-footer__direction {
  font-family: var(--su-display);
}

.md-footer__title {
  color: var(--su-text);
}

.md-footer-meta {
  background: var(--su-navy-900);
}

.md-copyright {
  color: var(--su-faint);
  font-size: 0.75rem;
}

.md-footer {
  font-size: 0.75rem;
}

.md-top {
  background: var(--su-teal);
  color: var(--su-on-teal);
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(0, 212, 170, 0.28);
}

.md-top:hover {
  background: var(--su-mint);
  color: var(--su-on-teal);
}

.md-typeset .md-button {
  border-radius: 999px;
  font-family: var(--su-display);
  font-weight: 600;
}

.md-typeset .md-button--primary {
  background: var(--su-teal);
  border-color: var(--su-teal);
  color: var(--su-on-teal);
}

.md-tooltip {
  background: var(--su-navy-500);
  color: var(--su-text);
  border-radius: var(--su-radius-sm);
}

.md-overlay {
  background: rgba(7, 9, 15, 0.72);
}
