:root{--bg:#f5f3f7;--surface:#fff;--sunk:#eeeaf1;--ink:#231829;--muted:#6b6072;--line:#e2dce7;--accent:#a8114c;--accent-ink:#fff;--ok:#1d7a50;--ok-soft:#dff2e8;--warn:#955600;--warn-soft:#fcefd5;--bad:#b42318;--bad-soft:#fde6e3;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#141017;--surface:#1e1823;--sunk:#181319;--ink:#f2ecf5;--muted:#a99eb0;--line:#33293a;--accent:#ff5d97;--accent-ink:#22070f;--ok:#62d39e;--ok-soft:#11301f;--warn:#f0b65c;--warn-soft:#33240c;--bad:#ff8b80;--bad-soft:#3a1714;color-scheme:dark}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.4rem}h2{font-size:1.15rem}h3{font-size:1rem}
.wrap{max-width:560px;margin:0 auto;padding:0 16px 96px}.wide{max-width:1000px}
.top{padding:16px 16px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.muted{color:var(--muted)}.small{font-size:.86rem}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;margin-top:12px}
.row{display:flex;gap:10px;align-items:center}.row.top{align-items:flex-start}.grow{flex:1;min-width:0}
.pill{display:inline-flex;font-size:.76rem;font-weight:600;border-radius:999px;padding:2px 9px;background:var(--sunk);color:var(--muted);white-space:nowrap}
.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}
button,.btn{font:inherit;font-weight:600;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px 14px;cursor:pointer;min-height:44px}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.block{display:flex;width:100%;justify-content:center;align-items:center;margin-top:10px;text-decoration:none}
button:disabled{opacity:.5}
input,select,textarea{font:inherit;width:100%;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
textarea{min-height:70px;resize:vertical}label.f{display:block;font-size:.84rem;font-weight:600;margin-top:10px}label.f>*{margin-top:4px;font-weight:400}
.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
.tabs button{flex:1;border:0;border-radius:0;background:none;font-size:.72rem;padding:10px 2px;color:var(--muted);min-height:54px}
.tabs button[aria-current=page]{color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}
.seg{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.seg button{border-radius:999px;padding:6px 12px;font-size:.84rem;min-height:36px}
.seg button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.opt{display:flex;gap:10px;align-items:flex-start;text-align:left;width:100%;border:0;border-top:1px solid var(--line);border-radius:0;background:none;padding:10px 0}
.bx{flex:none;width:22px;height:22px;border-radius:6px;border:2px solid var(--line);display:grid;place-items:center;font-weight:700;color:#fff;margin-top:2px}
.opt[aria-pressed=true] .bx{background:var(--ok);border-color:var(--ok)}
.tri{display:grid;gap:6px;margin-top:8px}.tri>div{background:var(--sunk);border-radius:10px;padding:8px 10px;font-size:.88rem;white-space:pre-wrap}.tri b{display:block;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
canvas.sig{width:100%;height:170px;border:1px dashed var(--muted);border-radius:10px;background:#fff;touch-action:none;display:block;margin-top:8px}
.msg{padding:10px 12px;border-radius:10px;margin-top:10px;font-size:.92rem}.msg.err{background:var(--bad-soft);color:var(--bad)}.msg.ok{background:var(--ok-soft);color:var(--ok)}
.toast{position:fixed;left:50%;bottom:80px;transform:translateX(-50%);background:#231829;color:#fff;padding:10px 16px;border-radius:10px;z-index:9;max-width:90vw;font-size:.9rem}
.qrbox{background:#fff;padding:12px;border-radius:12px;display:grid;place-items:center;margin-top:10px}.qrbox svg,.qrbox img{width:min(78vw,300px);height:auto}
table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:8px;border-top:1px solid var(--line);vertical-align:top}th{font-size:.74rem;text-transform:uppercase;color:var(--muted)}
.stars{display:flex;gap:6px;margin-top:6px}.stars button{width:44px;padding:0}.stars button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
a{color:var(--accent)}.hide{display:none}
