:root{--bg:#0f1226;--card:#191d3a;--tx:#eef0ff;--mut:#a9aed6;--ac:#f5b942}
@media (prefers-color-scheme:light){:root{--bg:#f6f4ee;--card:#fff;--tx:#1b1d33;--mut:#5b5f80;--ac:#b8780a}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:17px/1.6 system-ui,sans-serif}
main,header,footer{max-width:640px;margin:0 auto;padding:16px}
header a{color:var(--ac);font-weight:700;font-size:22px;text-decoration:none}
h1{font-size:30px;line-height:1.2;margin:.6em 0 .3em}
p,li{color:var(--mut)}
.card{background:var(--card);border-radius:14px;padding:20px;margin:20px 0}
label{display:block;margin:12px 0 4px;color:var(--tx)}
input{width:100%;padding:12px;border-radius:8px;border:1px solid var(--mut);background:var(--bg);color:var(--tx);font:inherit}
button{margin-top:18px;width:100%;padding:14px;border:0;border-radius:8px;background:var(--ac);color:#111;font:inherit;font-weight:700;cursor:pointer}
footer{font-size:14px;color:var(--mut)}footer a{color:var(--mut)}
#msg{display:none;margin-top:16px;color:var(--tx)}
select{width:100%;padding:12px;border-radius:8px;border:1px solid var(--mut);background:var(--bg);color:var(--tx);font:inherit}
label.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--mut)}
label.chk input{width:auto;margin-top:4px}
h2{font-size:20px;margin-top:1.6em}
