/* Honey and Glacier themes. Honey is default; Glacier via <html data-palette="glacier">.
   Light/dark follows the system unless <html data-theme="light|dark"> forces it.
   Each dark token list appears twice on purpose: once for the system setting, once for manual Dark. */

/* Honey light (default) */
:root {
  color-scheme: light;
  --bg:#F5EFE6; --surface:#FFFFFF; --surface-alt:#FBF7F0; --line:#E8DFD1;
  --text:#3D2B1F; --muted:#6F6152; --link:#6B4A34;
  --primary:#6B4A34; --on-primary:#FFFFFF;
  --accent:#D9A441; --accent-text:#86611E; --accent-tint:rgba(217,164,65,.18);
  --success:#7C9463; --control-border:#C9A27E;
  --warn-bg:#F7DDD4; --warn-text:#A6452F; --warn-border:#F7DDD4;
  --danger:#B4432E; --danger-bg:#B4432E; --danger-fg:#FFFFFF; --danger-border:#B4432E;
  --chip-bg:#F6E6C8; --chip-text:#8A5A16; --brand-1:#6B4A34; --brand-2:#86611E;
  --focus-glow:0 0 0 3px var(--accent-tint);
  --font:system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-display:"Fredoka","Nunito","Varela Round",system-ui,sans-serif;
  --radius:10px; --radius-card:16px;
}
/* Honey dark: system dark unless Light is forced, or Dark forced */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg:#1E1815; --surface:#2C2420; --surface-alt:#241D19; --line:#3A2F28;
    --text:#EDE6DC; --muted:#A69A8D; --link:#E0A94C;
    --primary:#EDE6DC; --on-primary:#1E1815;
    --accent:#E0A94C; --accent-text:#E0A94C; --accent-tint:rgba(224,169,76,.16);
    --success:#8FA876; --control-border:#6B5D50;
    --warn-bg:#4A2A22; --warn-text:#F0A08A; --warn-border:#4A2A22;
    --chip-bg:#4A3A1D; --chip-text:#E8C176; --brand-1:#EDE6DC; --brand-2:#E0A94C;
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg:#1E1815; --surface:#2C2420; --surface-alt:#241D19; --line:#3A2F28;
  --text:#EDE6DC; --muted:#A69A8D; --link:#E0A94C;
  --primary:#EDE6DC; --on-primary:#1E1815;
  --accent:#E0A94C; --accent-text:#E0A94C; --accent-tint:rgba(224,169,76,.16);
  --success:#8FA876; --control-border:#6B5D50;
  --warn-bg:#4A2A22; --warn-text:#F0A08A; --warn-border:#4A2A22;
  --chip-bg:#4A3A1D; --chip-text:#E8C176; --brand-1:#EDE6DC; --brand-2:#E0A94C;
}

/* Glacier light */
:root[data-palette="glacier"] {
  color-scheme: light;
  --bg:#F1F3F3; --surface:#F7F8F8; --surface-alt:#EAEEEF; --line:#D5DCDF;
  --text:#4C5A63; --muted:#6A6C64; --link:#4A6F82;
  --primary:#6C93A6; --on-primary:#1E2528;
  --accent:#6C93A6; --accent-text:#3E6072; --accent-tint:rgba(108,147,166,.16);
  --success:#6C93A6; --control-border:#AEB9BE;
  --warn-bg:#F7F8F8; --warn-text:#735750; --warn-border:#8E7069;
  --danger:#735750; --danger-bg:#F7F8F8; --danger-fg:#735750; --danger-border:#D5DCDF;
  --chip-bg:#8FA39B; --chip-text:#26301F; --brand-1:#4C5A63; --brand-2:#4C5A63;
  --focus-glow:none;
  --font:"Avenir Next","Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;
  --font-display:var(--font);
  --radius:6px; --radius-card:6px;
}
/* Glacier dark: system dark unless Light is forced, or Dark forced */
@media (prefers-color-scheme: dark) {
  :root[data-palette="glacier"]:not([data-theme="light"]) {
    color-scheme: dark;
    --bg:#1E2528; --surface:#252D31; --surface-alt:#21292C; --line:#333D42;
    --text:#EAEEEE; --muted:#B7B9AE; --link:#8FB6C7;
    --primary:#8FB6C7; --on-primary:#1E2528;
    --accent:#8FB6C7; --accent-text:#8FB6C7; --accent-tint:rgba(143,182,199,.14);
    --success:#8FB6C7; --control-border:#AEB9BE;
    --warn-bg:#252D31; --warn-text:#B39690; --warn-border:#B39690;
    --danger:#B39690; --danger-bg:#252D31; --danger-fg:#B39690; --danger-border:#333D42;
    --chip-bg:#A9BDB4; --chip-text:#26301F; --brand-1:#EAEEEE; --brand-2:#EAEEEE;
  }
}
:root[data-palette="glacier"][data-theme="dark"] {
  color-scheme: dark;
  --bg:#1E2528; --surface:#252D31; --surface-alt:#21292C; --line:#333D42;
  --text:#EAEEEE; --muted:#B7B9AE; --link:#8FB6C7;
  --primary:#8FB6C7; --on-primary:#1E2528;
  --accent:#8FB6C7; --accent-text:#8FB6C7; --accent-tint:rgba(143,182,199,.14);
  --success:#8FB6C7; --control-border:#AEB9BE;
  --warn-bg:#252D31; --warn-text:#B39690; --warn-border:#B39690;
  --danger:#B39690; --danger-bg:#252D31; --danger-fg:#B39690; --danger-border:#333D42;
  --chip-bg:#A9BDB4; --chip-text:#26301F; --brand-1:#EAEEEE; --brand-2:#EAEEEE;
}

/* Shared component wiring */
body { margin:0; background:var(--bg); color:var(--text); font:15px/1.5 var(--font); }
h1,h2,h3 { font-weight:600; color:var(--text); } h2,h3 { font-family:var(--font-display); }
a { color:var(--link); text-decoration:none; } a:hover { text-decoration:underline; }
:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.card { background:var(--surface); border:1.5px solid var(--line); border-radius:var(--radius-card); }
button { border-radius:var(--radius); border:1.5px solid var(--line); background:var(--surface); color:var(--text); }
button:hover { border-color:var(--control-border); }
button.primary { background:var(--primary); border-color:var(--primary); color:var(--on-primary); font-weight:600; }
button.danger { background:var(--danger-bg); border-color:var(--danger-border); color:var(--danger-fg); }
input, select, textarea { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); color:var(--text); }
input:focus, select:focus, textarea:focus { border-color:var(--accent); box-shadow:var(--focus-glow); }
.chip { background:var(--chip-bg); color:var(--chip-text); border-radius:999px; font-weight:600; }
.nav-item[aria-current] { background:var(--accent-tint); }
.error { background:var(--warn-bg); color:var(--warn-text); border:1px solid var(--warn-border); }
