:root{--bg:#EDF2F6;--surface:#fff;--fg:#14232F;--muted:#536575;--line:#D6E0E8;--accent:#1F5E8C;--accent-soft:#DCE9F3;--deep:#0B3A5B;--inc:#11806F;--bad:#C2412D}
@media (prefers-color-scheme:dark){:root{--bg:#0A131A;--surface:#111E28;--fg:#E2ECF3;--muted:#93A6B6;--line:#223443;--accent:#6AAEDD;--accent-soft:#16304A;--deep:#CFE6F7;--inc:#4CC7B3;--bad:#F08C7A}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 "Onest",system-ui,-apple-system,"Segoe UI",sans-serif}
.wrap{max-width:560px;margin:0 auto;padding:max(24px,env(safe-area-inset-top)) 16px 48px}
h1{font:600 26px/1.2 "Unbounded","Onest",sans-serif;color:var(--deep);margin:8px 0 6px}h2{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:22px 0 8px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}
.muted{color:var(--muted)}.hint{font-size:14px;color:var(--muted);margin:8px 0 0}
label{display:block;font-size:14px;color:var(--muted);margin:10px 0 4px}
input,select{width:100%;font:inherit;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--fg)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:600 15.5px inherit;font-family:inherit;padding:11px 18px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--accent);cursor:pointer;text-decoration:none}
.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff}.btn.full{width:100%;margin-top:14px}
.row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.row:first-child{border-top:0}
.err{color:var(--bad);font-size:14.5px;min-height:1.4em;margin:8px 0 0}.ok{color:var(--inc)}
.mods{display:grid;gap:12px;grid-template-columns:1fr 1fr}.mod{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:16px;background:var(--surface);border:1px solid var(--line);text-decoration:none;color:var(--fg)}
.mod b{font:600 19px "Unbounded","Onest",sans-serif;color:var(--deep)}.mod span{color:var(--muted);font-size:14.5px}
@media (max-width:420px){.mods{grid-template-columns:1fr}}
