:root{--fg:#1a1a2e;--muted:#667;--accent:#2d5bd7;--bg:#f4f5f9;--card:#fff;--err:#c0392b}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}#root{max-width:760px;margin:0 auto;padding:1.5rem 1rem 4rem}.card{background:var(--card);border-radius:12px;margin:1rem 0;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #00000014}h1{font-size:1.4rem}.bar{background:var(--card);font-variant-numeric:tabular-nums;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000014}.stem{white-space:pre-wrap;background:#f7f7fb;border-radius:8px;padding:.75rem;font-family:ui-monospace,SF Mono,Menlo,monospace;overflow-x:auto}.choices{margin:.5rem 0 0;padding:0;list-style:none}.choices li{margin:.35rem 0}.choices label{cursor:pointer;border-radius:8px;align-items:baseline;gap:.5rem;padding:.5rem .6rem;display:flex}.choices label:hover{background:#f0f2fa}.clabel{color:var(--accent);font-weight:600}form label{color:var(--muted);margin:.75rem 0;font-size:.9rem;display:block}input{border:1px solid #ccd;border-radius:8px;width:100%;margin-top:.25rem;padding:.55rem .7rem;font-size:1rem;display:block}input[type=radio]{width:auto;margin:0;display:inline}button{font:inherit;cursor:pointer;background:#fff;border:1px solid #ccd;border-radius:8px;padding:.5rem .9rem}button.primary{background:var(--accent);color:#fff;border-color:var(--accent);margin-top:.75rem}button:disabled{opacity:.6;cursor:default}.tabs{gap:.5rem;margin:.5rem 0 1rem;display:flex}.tabs .active{background:var(--accent);color:#fff;border-color:var(--accent)}.error{color:var(--err)}.warn{color:var(--err);font-weight:600}.hint{color:var(--muted);font-size:.85rem}.score{font-size:1.6rem;font-weight:700}.editor{border:1px solid #ccd;border-radius:8px;overflow:hidden}
