/*
 * AIAHL digital theme v2 — Quiet Navigation
 * Deep botanical ink, warm ivory, and restrained champagne-gold accents.
 * Data high/low colors are semantic only and never carry meaning without labels.
 */
:root {
  --ink: #071512;
  --panel: #0e2621;
  --panel2: #17332d;
  --line: #315149;
  --paper: #f3f0e7;
  --white: #fffcf5;
  --muted: #aebdb7;
  --gold: #ddbd62;
  --gold-hi: #f0d992;
  --gold-ink: #806018;
  --on-gold: #13231f;
  --paper-ink: #172923;
  --paper-muted: #556861;
  --cyan: #70d4bb;
  --high: #51c7a9;
  --low: #ef8068;
  --warn: #ddbd62;
}

html { color-scheme: dark; }
body {
  background: var(--ink);
  color: var(--white);
  font-family: Inter, "Noto Sans TC", "Noto Sans JP", system-ui, -apple-system, "Segoe UI", sans-serif;
}
::selection { background: var(--gold); color: var(--on-gold); }

/* Navigation and controls */
.site-header {
  background: rgba(7, 21, 18, .92);
  border-bottom-color: rgba(174, 189, 183, .16);
  box-shadow: 0 1px 0 rgba(255, 252, 245, .02);
}
.nav a { color: #bdc9c4; }
.nav a:hover { color: var(--white); }
.button,
.nav a.button,
.nav a.button:visited {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--on-gold);
  box-shadow: 0 8px 24px rgba(7, 21, 18, .18);
}
.button:hover,
.nav a.button:hover {
  background: var(--gold-hi);
  border-color: var(--gold-hi);
  color: var(--on-gold);
  box-shadow: 0 12px 30px rgba(7, 21, 18, .26);
}
.button.secondary,
.nav a.button.secondary {
  background: transparent;
  border-color: #46635b;
  color: var(--white);
  box-shadow: none;
}
.button.secondary:hover,
.nav a.button.secondary:hover {
  background: rgba(221, 189, 98, .09);
  border-color: var(--gold);
  color: var(--white);
}
.button:focus-visible,
.nav a:focus-visible,
.language-switch button:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--gold-hi);
  outline-offset: 3px;
}
.language-switch {
  background: #0b201c;
  border-color: #3b5750;
}
.language-switch button { color: #b9c7c2; }
.language-switch button:hover { color: var(--white); }
.language-switch button.active {
  background: var(--gold);
  color: var(--on-gold);
}

/* Hero and illustrative model card */
.hero {
  background:
    linear-gradient(110deg, rgba(7, 21, 18, .98), rgba(10, 27, 23, .94)),
    var(--ink);
}
.hero:before {
  background: radial-gradient(circle, rgba(221, 189, 98, .13), transparent 66%);
}
.hero h1 { color: var(--white); }
.hero h1 em { color: var(--gold-hi); }
.hero-copy { color: #d2ddd8; }
.microcopy { color: #91a49d; }
.eyebrow { color: var(--gold); }
.window-card {
  border-color: #3a5b52;
  background: linear-gradient(145deg, #112a25, #091916);
  box-shadow: 0 34px 90px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 252, 245, .03);
}
.window-top { color: #a9bab4; }
.window-top strong { color: var(--white); }
.status {
  border-color: rgba(221, 189, 98, .62);
  color: var(--gold-hi);
  background: rgba(221, 189, 98, .06);
}
.chart:before,
.chart:after { border-top-color: #35534c; }
.axis { background: #3a5750; }
.curve path {
  stroke: var(--gold-hi);
  filter: drop-shadow(0 0 9px rgba(221, 189, 98, .2));
}
.point { border-color: #10251f; }
.point-label {
  border-color: #49675f;
  background: #0b1c19;
  color: #d7e0dc;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .2);
}
.point.low .point-label span,
.point.low .point-label strong { color: var(--low); }
.point.high .point-label span,
.point.high .point-label strong { color: var(--high); }
.chart-label,
.illustrative { color: #91a59e; }

/* Dark information surfaces */
.trust-strip {
  background: #091a17;
  border-color: rgba(174, 189, 183, .15);
}
.trust-item { border-color: rgba(174, 189, 183, .14); }
.trust-item span { color: var(--gold); }
.trust-item strong { color: #e8eee9; }
.section:not(.paper) { background: var(--ink); }
.section-head h2,
.evidence-intro h2,
.contact h2 { color: var(--white); }
.section-head p,
.evidence-intro p,
.card p,
.step p,
details p { color: var(--muted); }
.card {
  border-color: #304e47;
  background: linear-gradient(160deg, #0f2823, #0b1f1b);
  box-shadow: inset 0 1px 0 rgba(255, 252, 245, .025);
}
.card h3 { color: #edf2ee; }
.card-no { color: var(--gold); }
.steps {
  border-color: #35544c;
  background: #0b201c;
}
.step {
  border-color: #35544c;
  background: linear-gradient(180deg, #102a24, #0a1d19);
}
.step-index { color: var(--gold-hi); }
.evidence-list,
.evidence-row,
.faq-list,
details { border-color: #2d4942; }
.evidence-row:before { color: var(--gold); }
.evidence-row span { color: var(--muted); }
.evidence-row strong { color: #edf2ee; }
summary { color: #edf2ee; }
summary:after { color: var(--gold); }
details[open] { background: rgba(14, 38, 33, .48); }

/* Warm, editorial surfaces */
.section.paper {
  color-scheme: light;
  background: var(--paper);
  color: var(--paper-ink);
}
.paper .section-head h2,
.paper .card h3 { color: var(--paper-ink); }
.paper .section-head p,
.paper .card p { color: var(--paper-muted); }
.paper .eyebrow,
.paper .card-no { color: var(--gold-ink); }
.paper .card {
  border-color: #d6d4ca;
  background: var(--white);
  box-shadow: 0 12px 34px rgba(23, 41, 35, .055);
}
.demo {
  border-color: #d2d2c8;
  background: var(--white);
  box-shadow: 0 25px 70px rgba(23, 41, 35, .11);
}
.demo-controls { background: #113d34; }
.demo-controls .eyebrow { color: var(--gold-hi); }
.control { border-color: rgba(255, 252, 245, .17); }
.control span { color: #b6c9c2; }
.demo-result { background: var(--white); color: var(--paper-ink); }
.demo-result-top span,
.result label { color: #63746e; }
.demo-result-top strong,
.result time,
.result b { color: var(--paper-ink); }
.result {
  border-color: #d5d5cc;
  background: #fbf9f3;
}
.result.low { border-top-color: #5cb99f; }
.result.high { border-top-color: #d8745e; }
.demo-note { color: #5f716a; }
.comparison {
  border-color: #d2d2c8;
  background: var(--white);
}
.comparison > div { background: var(--white); }
.comparison > div + div {
  border-color: #d2d2c8;
  background: #eae9e2;
}
.comparison h3 { color: var(--paper-ink); }
.comparison li {
  border-color: #d7d7ce;
  color: #354a43;
}
.comparison .is li:before { color: #267660; }
.comparison .is-not li:before { color: #9d594a; }

/* Consultation and footer */
.contact {
  background: linear-gradient(135deg, #0d2924, #1b302a);
  border-top: 1px solid rgba(221, 189, 98, .16);
}
.contact p { color: #bdcbc5; }
.consult-context {
  border-color: rgba(221, 189, 98, .55);
  background: rgba(7, 21, 18, .3);
  color: var(--gold-hi);
}
.footer {
  background: #06110f;
  border-top: 1px solid rgba(174, 189, 183, .12);
}
.footer-links a { color: #aebdb7; }
.footer-links a:hover { color: var(--white); }
.legal { color: #879a93; }

@media (max-width: 900px) {
  .trust-item { border-color: rgba(174, 189, 183, .14); }
}

@media (prefers-contrast: more) {
  :root { --muted: #cbd5d1; --paper-muted: #42544d; }
  .nav a { color: #e0e7e3; }
  .button.secondary { border-color: #81928c; }
}
