:root{color-scheme:light;--bg:#f1f5f9;--panel:#fff;--text:#172b43;--muted:#53667a;--line:#c9d4df;--accent:#155e75;--soft:#e5f3f5}html[data-theme=midnight]{color-scheme:dark;--bg:#0d1625;--panel:#172338;--text:#edf4fc;--muted:#b1c0d4;--line:#435570;--accent:#80d3e1;--soft:#203947}*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,sans-serif;background:var(--bg);color:var(--text)}header{max-width:1040px;margin:auto;padding:26px 24px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:23px;font-weight:750;text-decoration:none;color:var(--text)}main{max-width:660px;margin:24px auto;padding:40px;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 14px 40px #10203008}h1{font-size:32px;line-height:1.2;margin:8px 0 20px}h2{font-size:20px}p{color:var(--muted)}a{color:var(--accent)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;color:var(--accent)}fieldset{border:0;border-top:1px solid var(--line);padding:24px 0 8px;margin-top:26px}legend{padding:0 12px 0 0;font-size:19px;font-weight:650}label{display:block;font-weight:600;margin:18px 0}input,select{display:block;width:100%;font:inherit;color:var(--text);background:var(--panel);padding:12px;border:1px solid var(--line);border-radius:7px;margin-top:6px}input:focus,select:focus,button:focus,a:focus{outline:3px solid #2eafc8;outline-offset:3px}button,.button{display:inline-block;background:var(--accent);color:var(--panel);font:inherit;font-weight:650;border:0;border-radius:7px;padding:12px 18px;margin:12px 0;cursor:pointer;text-decoration:none}.secondary{background:transparent;color:var(--accent);border:1px solid var(--line);font-size:14px}.error{border-left:4px solid #c94343;padding:14px;background:var(--soft);color:var(--text)}.notice{padding:14px;background:var(--soft);color:var(--text)}.reference{font-size:36px;letter-spacing:.18em;font-weight:750;color:var(--text)}.muted,footer{font-size:14px;color:var(--muted)}footer{text-align:center;padding:26px}form+form{margin-top:24px;border-top:1px solid var(--line);padding-top:12px}@media(max-width:700px){main{margin:12px;padding:25px}h1{font-size:28px}}
