/* Keep the original palette as the default. Midnight follows system appearance. */
:root { color-scheme: light dark; }

@media (prefers-color-scheme: dark) {
  :root {
    --paper:#0b1323;
    --ink:#f7f3ea;
    --muted:#bbc9dc;
    --blue:#a5caff;
    --line:#35475f;
    --midnight-surface:#16243a;
    --midnight-raised:#20334e;
    --midnight-edge:#4b607b;
    --midnight-action:#a9ceff;
    --midnight-action-ink:#0b1b36;
  }

  body {
    background:radial-gradient(ellipse min(680px,72vw) 600px at 78% 405px,#172f54,transparent),var(--paper);
  }

  .course-cta, .course-cta.light-cta {
    background:var(--midnight-action);
    border-color:var(--midnight-action);
    color:var(--midnight-action-ink);
  }
  .course-cta:hover {
    background:#c0ddff;
    border-color:#c0ddff;
    color:var(--midnight-action-ink);
  }
  .course-cta:focus-visible {
    outline:2px solid var(--blue);
    outline-offset:5px;
  }

  .real-learning-card {
    background:linear-gradient(160deg,#283c5b,#182941);
    border-color:var(--midnight-edge);
    box-shadow:0 14px 32px #050a1480;
  }
  .learning-card-header { color:#d8e5f9; }
  .lesson-marker, .step-number { color:var(--blue); }
  .lesson-marker { background:var(--blue); }
  .learning-priorities li { border-color:var(--midnight-edge); }
  .home-project-preview, .principles-grid article, .work-tags span {
    background:var(--midnight-surface);
    border-color:var(--line);
  }
  .work-tags span { color:var(--muted); }
  .principle-symbol { background:var(--midnight-raised); }
  .artwork-showcase, .work-art, .about-artwork, .project-story-body figure {
    background:linear-gradient(145deg,var(--midnight-raised),var(--midnight-surface));
    border-color:var(--line);
  }
  .about-artwork .visual-label { color:var(--muted); }
  .about-artwork > img { border-color:var(--midnight-edge); }

  /* Light document and product thumbnails remain as authored. */
  .showcase-frame, .sample-paper, .paper-sheet, .reader-top, .course-browser, .browser-top {
    color:#142338;
    color-scheme:light;
  }
  .sample-paper .sheet-top, .paper-sheet .sheet-top { color:#315fae; }
  .reader-top span { color:#526079; }
  .course-browser aside .selected { color:#315fae; }

  .card-details, .card-details::before, .card-details::after,
  .work-preview, .coming-soon-dialog { border-color:var(--midnight-edge); }
  .details-dismiss:hover { background:var(--midnight-raised); }
  .work-preview::backdrop, .coming-soon-dialog::backdrop { background:#050a14bf; }

  .inquiry-main :is(textarea,input):not([type="radio"]):not([type="checkbox"]) {
    background:var(--midnight-surface);
    border-color:var(--midnight-edge);
  }
  .inquiry-main :is(textarea,input)::placeholder { color:var(--muted); }
  .inquiry-main :is(.demo-notice,.footnote,legend) { color:var(--muted); }
  .inquiry-main .choice {
    background:var(--midnight-surface);
    border-color:var(--midnight-edge);
  }
  .inquiry-main .choice:has(input:checked) {
    background:var(--midnight-raised);
    border-color:var(--blue);
  }
  .inquiry-main pre { background:var(--midnight-surface); }
  .inquiry-main .send-status { color:#ffb9b7; }

  .contact-banner {
    background-color:#080f1d;
    background-image:linear-gradient(90deg,#080f1d 0%,#080f1dec 40%,#080f1d55 75%),url('../assets/images/learning-waves.svg');
  }
}

/* The inquiry banner uses a light surface when Midnight is inactive. */
@media (prefers-color-scheme: light) {
  .contact-banner {
    background-color:#eff3f8;
    background-image:linear-gradient(90deg,#eff3f8 0%,#eff3f8f2 38%,#eff3f85c 76%),url('../assets/images/learning-waves.svg');
    color:var(--ink);
  }

  .contact-banner p,
  .contact-banner .client-sign-in-note p { color:#43536a; }
  .contact-banner .contact-direct a,
  .contact-banner .client-sign-in { color:#244c86; }
  .contact-banner .client-sign-in-note { border-top-color:#c6d2e2; }

  .contact-banner .light-cta {
    background:#244c86;
    border-color:#244c86;
    color:#fff;
  }
  .contact-banner .light-cta:hover {
    background:#1a3b6a;
    border-color:#1a3b6a;
  }
}
