:root{color-scheme:light;--ink:#17211b;--muted:#627067;--paper:#f6f4ed;--panel:#fff;--line:#dce1da;--accent:#23664b;--warn:#fff3cf}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,sans-serif}header,main,nav{max-width:1080px;margin:auto;padding:1.25rem}header{display:flex;justify-content:space-between;align-items:center}h1,h2,p{margin-top:0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-size:.75rem;font-weight:700;margin-bottom:.25rem}.muted{color:var(--muted)}nav{display:flex;gap:1.5rem;border-block:1px solid var(--line)}nav span{color:var(--muted)}nav a{color:var(--accent);font-weight:700;text-decoration:none}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:1.25rem 0}.grid article,.panel,.notice{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:1.25rem}.grid strong{color:var(--muted)}.notice{background:var(--warn);display:flex;gap:.7rem}.login{min-height:100vh;display:grid;place-items:center}.login .panel{width:min(420px,100%)}label{display:grid;gap:.35rem;margin:1rem 0;font-weight:650}input,select{font:inherit;padding:.7rem;border:1px solid #aeb8b0;border-radius:7px;background:white}button{font:inherit;font-weight:700;color:white;background:var(--accent);border:0;border-radius:7px;padding:.7rem 1rem;cursor:pointer}.quiet{background:#e3ebe6;color:var(--accent)}.error{color:#962a23}.success{color:#145c3c}.lines{display:grid;grid-template-columns:2fr 1fr;gap:0 1rem}dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:.6rem 0}dt{color:var(--muted)}dd{font-weight:650}@media(max-width:620px){.lines{grid-template-columns:1fr}.notice{display:block}nav{gap:.8rem;overflow:auto}}

.auth-panel{max-width:480px;margin:8vh auto}.auth-footer{margin-top:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}.account-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.account-row p{margin:.25rem 0}a{color:var(--accent)}.panel+.panel{margin-top:1.5rem}input,select{min-width:0;width:100%;box-sizing:border-box}@media(max-width:620px){.form-grid{grid-template-columns:1fr}.account-row{align-items:flex-start;flex-direction:column}.auth-panel{margin:3vh auto}header strong{overflow-wrap:anywhere}}
