/* Shared tokens and base styling. Generated from the builder page so every
   screen uses one palette; edit app/static/prototype.html and re-run
   tools/build_prototype.py rather than editing this by hand. */


@font-face{
  font-family:"Bebas Neue";
  src:url("/static/fonts/BebasNeue-Regular.ttf") format("truetype");
  font-weight:400;font-style:normal;font-display:block;
}

/* ---- tokens: light is the base, both dark states redefine only these ---- */
:root{
  --navy:#1D3A6C; --mid:#125189; --sky:#299CD7; --red:#DF272C;
  --ground:#F5F8FC;      /* cool neutral, biased toward the sky accent */
  --surface:#FFFFFF;
  --surface-2:#EEF3FA;
  --rule:#DCE4F0;
  --rule-strong:#C3D0E4;
  --ink:#1A2233;
  --ink-2:#4A5568;
  --muted:#77839A;
  --accent:#1F7FB5;      /* sky, darkened for AA on white */
  --accent-ink:#FFFFFF;
  --good:#0F7A5A;
  --warn:#9A6412;
  --shadow:0 1px 2px rgba(23,42,77,.06),0 8px 24px rgba(23,42,77,.06);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ground:#0F1521; --surface:#161E2D; --surface-2:#1D2739;
    --rule:#2A3546; --rule-strong:#3A4759;
    --ink:#E8EDF5; --ink-2:#B4BFD0; --muted:#8592A8;
    --accent:#57B3E4; --accent-ink:#0B1220;
    --good:#4FC49B; --warn:#DFAE5C;
    --shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.3);
  }
}
:root[data-theme="dark"]{
  --ground:#0F1521; --surface:#161E2D; --surface-2:#1D2739;
  --rule:#2A3546; --rule-strong:#3A4759;
  --ink:#E8EDF5; --ink-2:#B4BFD0; --muted:#8592A8;
  --accent:#57B3E4; --accent-ink:#0B1220;
  --good:#4FC49B; --warn:#DFAE5C;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.3);
}

*{box-sizing:border-box}
body{
  margin:0;background:var(--ground);color:var(--ink);
  font-family:"Helvetica Neue",Helvetica,-apple-system,"Segoe UI",system-ui,sans-serif;
  font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;
}
.display{font-family:"Bebas Neue","Helvetica Neue",sans-serif;font-weight:400;letter-spacing:.02em}
.eyebrow{
  font-family:"Bebas Neue",sans-serif;font-size:12px;letter-spacing:.14em;
  color:var(--muted);text-transform:uppercase;
}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}

