:root{--bg:#f6f7fb;--card:#fff;--ink:#16181d;--muted:#5d6472;--line:#dde1ea;--brand:#2453d6;--brand2:#1a3fa8;--on:#fff;--fill:#2453d6;--ok:#1a7f4b;--bad:#b3261e;--soft:#eef2fd;--field:#fff;--fieldline:#c9cfdb}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0f1115;--card:#181b22;--ink:#eceef3;--muted:#a3a9b6;--line:#3a4150;--brand:#8fa8ff;--fill:#3a63e6;--brand2:#8aa5ff;--on:#fff;--ok:#5cc28a;--bad:#ff8a80;--soft:#1d2433;--field:#232835;--fieldline:#566074}}
:root[data-theme="dark"]{--bg:#0f1115;--card:#181b22;--ink:#eceef3;--muted:#a3a9b6;--line:#3a4150;--brand:#8fa8ff;--fill:#3a63e6;--brand2:#8aa5ff;--on:#fff;--ok:#5cc28a;--bad:#ff8a80;--soft:#1d2433;--field:#232835;--fieldline:#566074}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 -apple-system,system-ui,"Segoe UI",Roboto,sans-serif}
main{max-width:520px;margin:0 auto;padding:28px 16px 40px}
a{color:var(--brand)}
.brand{font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);text-decoration:none}
h1{font-size:34px;line-height:1.1;margin:10px 0 8px;letter-spacing:-.01em}
h2{font-size:18px;margin:0 0 10px}
.lead{color:var(--muted);margin:0 0 22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px 16px;margin-bottom:16px}
label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin:12px 0 4px}
input,select{width:100%;font:inherit;color:var(--ink);background:var(--field);border:1.5px solid var(--fieldline);border-radius:10px;padding:11px 12px;min-height:46px}
input:focus,select:focus{outline:none;border-color:var(--brand)}
.two{display:grid;grid-template-columns:110px 1fr;gap:10px}
.hint{font-size:13px;color:var(--muted);margin:4px 2px 0;min-height:18px}.hint.ok{color:var(--ok)}.hint.bad{color:var(--bad)}
button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:700;border:0;border-radius:12px;min-height:48px;padding:0 18px;background:var(--fill);color:var(--on);cursor:pointer;text-decoration:none}
button:disabled{opacity:.55;cursor:default}
.ghost{background:var(--soft);color:var(--brand)}
.wide{width:100%;margin-top:18px}
.row{display:flex;gap:8px;margin-top:12px}.row>*{flex:1}
.msg{margin:10px 0 0;font-size:14px}.msg.bad{color:var(--bad)}
.link{word-break:break-all;background:var(--soft);border-radius:10px;padding:10px 12px;font:14px ui-monospace,SFMono-Regular,Menlo,monospace;margin:10px 0 0}
.fine{font-size:13px;color:var(--muted)}
.pillars{display:grid;grid-template-columns:1fr;gap:10px}
.pillar{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}.pillar b{font-size:17px}.pillar p{margin:4px 0 0;color:var(--muted);font-size:14px}
.tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--soft);color:var(--brand);border-radius:999px;padding:2px 8px;margin-left:6px;vertical-align:middle}
footer{text-align:center;font-size:13px;color:var(--muted);margin-top:24px}
[hidden]{display:none!important}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:400;color:var(--ink);margin:12px 0 0;line-height:1.4;cursor:pointer}
.chk input{appearance:none;-webkit-appearance:none;width:22px;height:22px;min-height:0;flex:none;margin:0;padding:0;border:2px solid var(--fieldline);border-radius:6px;background:var(--field);display:grid;place-content:center;cursor:pointer}
.chk input:checked{background:var(--fill);border-color:var(--fill)}.chk input:checked::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}
.chk input:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
input:disabled{opacity:.5}
.made{display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.made img{width:56px;height:auto}.made b{color:var(--ink)}
.donate{min-height:38px;padding:0 16px;background:#b30f3e;color:#fff;font-size:14px}
.topline{display:flex;align-items:center;justify-content:space-between}
.theme{width:34px;height:34px;min-height:0;padding:0;border-radius:999px;background:var(--soft);color:var(--brand);font-size:17px;flex:none}
html{color-scheme:light}:root[data-theme="dark"]{color-scheme:dark}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]){color-scheme:dark}}
.build{display:block;text-align:center;font-size:11px;color:var(--muted);opacity:.7;margin:14px 0 6px;font-variant-numeric:tabular-nums}
