/* SEED Centre — supplied day/night theme, adapted to site components. */

  /* ---------- Palettes ---------- */
  :root {
    --seed-green: #1c5e38;
    --seed-green-deep: #123f26;
    --seed-gold: #8b5e15;
    --seed-cream: #f4f1e6;
    --seed-bg: #ffffff;
    --seed-text: #3a4540;
    --seed-line: #e5e1d4;
  }
  html[data-theme="dark"] {
    --seed-green: #5cc489;       /* brighter green so it reads on dark */
    --seed-green-deep: #e9f2ec;  /* headings become soft white-green */
    --seed-gold: #e0b25a;
    --seed-cream: #15221b;       /* "cream" sections become deep forest */
    --seed-bg: #0e1712;
    --seed-text: #c9d3cc;
    --seed-line: #24362b;
    color-scheme: dark;
  }

  /* ---------- Smooth switch ---------- */
  html.seed-theme-anim, html.seed-theme-anim * {
    transition: background-color .35s ease, color .35s ease, border-color .35s ease !important;
  }

  /* ---------- Toggle button ---------- */
  .seed-theme-toggle {
    position: fixed; right: 1.1rem; bottom: 1.1rem; z-index: 9999;
    display: inline-flex; align-items: center; gap: .6rem;
    font: inherit; font-weight: 600; font-size: .95rem; cursor: pointer;
    padding: .45rem 1rem .45rem .45rem; border-radius: 999px;
    border: 2px solid var(--seed-green); background: var(--seed-bg); color: var(--seed-green);
    box-shadow: 0 6px 20px rgba(0,0,0,.12);
  }
  .seed-theme-toggle:focus-visible { outline: 3px solid var(--seed-gold); outline-offset: 3px; }
  .stt-track {
    position: relative; width: 52px; height: 28px; border-radius: 999px;
    background: #f1d98a; transition: background .35s ease;
  }
  .stt-thumb {
    position: absolute; top: 3px; left: 3px; width: 22px; height: 22px; border-radius: 50%;
    display: grid; place-items: center; background: #fff; color: #c98a0b;
    box-shadow: 0 1px 3px rgba(0,0,0,.25);
    transition: transform .35s cubic-bezier(.4,1.4,.6,1), background .35s, color .35s;
  }
  .stt-thumb svg { width: 14px; height: 14px; position: absolute; transition: opacity .25s, transform .35s; }
  .stt-moon { opacity: 0; transform: rotate(-60deg); }
  html[data-theme="dark"] .stt-track { background: #24362b; }
  html[data-theme="dark"] .stt-thumb { transform: translateX(24px); background: #0e1712; color: #e0b25a; }
  html[data-theme="dark"] .stt-sun { opacity: 0; transform: rotate(60deg); }
  html[data-theme="dark"] .stt-moon { opacity: 1; transform: none; }
  @media (prefers-reduced-motion: reduce) {
    .stt-thumb, .stt-thumb svg, .stt-track { transition: none; }
  }

  /* ---------- SEED Watch tabs (if added) in night mode ---------- */
  html[data-theme="dark"] .seed-watch {
    --sw-primary: #5cc489; --sw-accent: #e0b25a; --sw-heading: #e9f2ec;
    --sw-cream: #15221b; --sw-ink: #c9d3cc; --sw-muted: #a9b6ae; --sw-surface: #0e1712;
  }
  html[data-theme="dark"] .seed-watch .sw-tab[aria-selected="true"],
  html[data-theme="dark"] .seed-watch .sw-btn { color: #0e1712; }
  html[data-theme="dark"] .seed-watch .sw-icon { background: rgba(92,196,137,.12); }

/* Map the site's text tokens without turning green surfaces into pale headings. */
html[data-theme="dark"] {
  --cream: #15221b;
  --mist: #172a20;
  --ink: #e9f2ec;
  --muted: #c9d3cc;
  --subtle: #a9b6ae;
  --line: #30483a;
  --gold-text: #e0b25a;
  --error: #ffac99;
  --footer: #0a110d;
}
html[data-theme="dark"] body { background: var(--seed-bg); color: var(--seed-text); }
html[data-theme="dark"] .site-header,
html[data-theme="dark"] .nav { background: var(--seed-bg); }
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3 { color: var(--seed-green-deep); }
html[data-theme="dark"] a { color: var(--seed-green); }
html[data-theme="dark"] a:hover { color: var(--lime-soft); }
html[data-theme="dark"] .wordmark,
html[data-theme="dark"] .wordmark span,
html[data-theme="dark"] .nav-toggle { color: var(--seed-green); }
html[data-theme="dark"] .nav-toggle { border-color: var(--seed-green); }
html[data-theme="dark"] .nav a { color: var(--ink); }
html[data-theme="dark"] .nav a:hover,
html[data-theme="dark"] .nav a[aria-current="page"] { color: var(--seed-green); }
html[data-theme="dark"] .section--dark { background: #102d1d; }
html[data-theme="dark"] .section--green { background: #153b27; }
html[data-theme="dark"] .card,
html[data-theme="dark"] .pub,
html[data-theme="dark"] .form-panel { background: #172a20 !important; border-color: var(--line); }
html[data-theme="dark"] .card--dark { background: #102218 !important; }
html[data-theme="dark"] .chip,
html[data-theme="dark"] .tag { background: #1d3427 !important; border-color: var(--line); color: var(--seed-text); }
html[data-theme="dark"] .placeholder-photo { background: #243c2d; }
html[data-theme="dark"] .focus-list,
html[data-theme="dark"] .focus-item { border-color: var(--line); }
html[data-theme="dark"] .icon-tile { background: #23603c; }
html[data-theme="dark"] .pub-cover--brief { background: #1c4930; }
html[data-theme="dark"] .pub-cover--paper .num { color: var(--ink); }
html[data-theme="dark"] .pub-meta .series { color: var(--seed-green); }
html[data-theme="dark"] .btn--primary,
html[data-theme="dark"] .nav .btn,
html[data-theme="dark"] .filter-btn[aria-pressed="true"] {
  background: var(--seed-green); border-color: var(--seed-green); color: #0e1712;
}
html[data-theme="dark"] .btn--primary:hover,
html[data-theme="dark"] .nav .btn:hover,
html[data-theme="dark"] .filter-btn[aria-pressed="true"]:hover { background: #8bdba9; border-color: #8bdba9; color: #0e1712; }
html[data-theme="dark"] .btn--outline,
html[data-theme="dark"] .btn--ghost-light,
html[data-theme="dark"] .filter-btn { background: transparent; border-color: var(--seed-green); color: var(--seed-green); }
html[data-theme="dark"] .btn--outline:hover,
html[data-theme="dark"] .btn--ghost-light:hover,
html[data-theme="dark"] .filter-btn:hover { background: #243c2d; color: var(--ink); }
html[data-theme="dark"] .btn--light { background: #d2ebd9; color: #123f24; }
html[data-theme="dark"] .btn--light:hover { background: #e9f2ec; color: #123f24; }
html[data-theme="dark"] .input,
html[data-theme="dark"] .textarea,
html[data-theme="dark"] .select { background: #101e16; color: var(--ink); border-color: #65836f; }
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color: #a9b6ae; opacity: 1; }
html[data-theme="dark"] .site-footer { color: var(--seed-text); }
html[data-theme="dark"] .site-footer a { color: #b3e3c4; }
html[data-theme="dark"] .site-footer a:hover { color: #fff; }
html[data-theme="dark"] .footer-bottom { border-color: var(--line); color: #a9b6ae; padding-bottom: 64px; }
html[data-theme="dark"] .skip-link { background: #1b5e35; color: #fff; }
html[data-theme="dark"] .seed-watch .sw-tab[aria-selected="true"] .sw-dot { background: #123f26; }
html[data-theme="dark"] .seed-watch .sw-btn:hover { color: #0e1712; background: #8bdba9; }
html[data-theme="dark"] img:not([src$=".svg"]) { filter: brightness(.88) contrast(1.05); }
/* Leave space for the floating control at the end of every page, in either theme. */
.footer-bottom { padding-bottom: 64px; }
@media (prefers-reduced-motion: reduce) {
  html.seed-theme-anim, html.seed-theme-anim * { transition: none !important; }
}
