@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:optional;src:url(/static/fonts/InterVariable.woff2?v=693b77d4f32e) format("woff2")}
@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:optional;src:url(/static/fonts/InterVariable-Italic.woff2?v=e564f652916d) format("woff2")}
/* The only stylesheet served before login. Same tokens as app.css, no names in it. */
/* Palette (task #86): light only, same tokens as app.css. */
:root{color-scheme:light;--white:#fff;--green:#003f2d;--river:#435254;--hl:#17e88f;--bg:var(--white);--card:var(--white);--head:var(--green);--ink:var(--river);--mute:var(--river);--line:#cad1d3;--acc:var(--green);--acc-ink:var(--white);--bad:#a4262c;--bad-bg:#fde8e8;--focus:var(--hl);--r:12px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Calibre,Inter,system-ui,sans-serif}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 2px var(--acc)}
main.login{max-width:420px;margin:12vh auto 0;padding:24px 16px;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--green);border-radius:var(--r)}
h1{font-size:1.4rem;margin:0 0 .8em;color:var(--head);font-family:"Financier Display",Inter,system-ui,sans-serif}
label{display:block;font-weight:600;margin-bottom:6px}
input{width:100%;font:inherit;font-size:1.4rem;letter-spacing:.15em;font-variant-numeric:tabular-nums;color:var(--ink);background:var(--bg);border:1px solid var(--mute);border-radius:10px;padding:12px;min-height:52px;margin-bottom:14px}
.btn{display:flex;width:100%;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:10px;border:1px solid var(--acc);background:var(--acc);color:var(--acc-ink);font:inherit;font-weight:600;cursor:pointer}
.err{background:var(--bad-bg);color:var(--bad);border:1px solid var(--bad);border-radius:10px;padding:10px 12px;margin:0 0 14px}
