
:root{--bg:#f3f6f7;--win:#ffffff;--ink:#17304A;--text:#253B4B;--muted:#536779;--line:#cfdbe1;--teal:#25B9C1;
--teal-ink:#007F82;--teal-wash:#e2f4f5;--on-teal:#06262A;--field:#ffffff;--bar:#17304A;
--ui:"Segoe UI","Source Sans 3",Arial,sans-serif}
@media (prefers-color-scheme:dark){:root{--bg:#0f1b26;--win:#162635;--ink:#e6eef3;--text:#d3dee5;--muted:#9aaebb;
--line:#2c4152;--teal:#3cc7cf;--teal-ink:#6fd8de;--teal-wash:#173b44;--on-teal:#06262A;--field:#0f1e2b;--bar:#0b1620;
color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--ui);font-size:15px;line-height:1.45;padding:24px 16px 48px}
.win{max-width:560px;margin:0 auto;background:var(--win);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.bar{background:var(--bar);color:#fff;padding:10px 16px;font-weight:700}.bar span{color:var(--teal)}
.body{padding:18px;display:grid;gap:14px}
h2{color:var(--ink);font-size:20px;margin:0}p{margin:0}
.muted{color:var(--muted);font-size:14px}
.field{display:grid;gap:4px}label{font-size:14px}
input,select{font:inherit;font-size:15px;color:var(--text);background:var(--field);border:1px solid var(--line);border-radius:4px;padding:7px 9px;width:100%}
.btn{font:inherit;font-size:15px;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:6px;padding:8px 16px;cursor:pointer}
.btn.primary{background:var(--teal);border-color:var(--teal);color:var(--on-teal);font-weight:700}
.steps{display:flex;gap:8px;flex-wrap:wrap}
.steps span{font-size:13px;border:1px solid var(--line);border-radius:999px;padding:2px 10px;color:var(--muted)}
.steps span.on{background:var(--teal-wash);color:var(--teal-ink);border-color:var(--teal);font-weight:700}
.callout{background:var(--teal-wash);border-radius:8px;padding:10px 12px;font-size:14px}
.check{display:flex;gap:8px;align-items:flex-start;font-size:14px}.check input{width:auto;margin-top:3px}
.check a{color:var(--teal-ink)}
.foot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.problem{color:#a3271f;font-size:14px}.problem:empty{display:none}
.hidden{display:none}.trap{position:absolute;left:-10000px}
a.btn{text-decoration:none;display:inline-block}
