:root{--bg: #0f1115;--surface: #171a21;--surface-2: #1e222b;--border: #2a2f3a;--text: #e6e8ee;--muted: #9aa3b2;--accent: #c96442;--accent-soft: #c9644220;--good: #3fb950;--good-soft: #3fb95018;--bad: #f85149;--bad-soft: #f8514918;--warn: #d29922;--radius: 10px;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media(prefers-color-scheme:light){:root{--bg: #faf9f7;--surface: #ffffff;--surface-2: #f2f0ed;--border: #ddd9d3;--text: #1f2328;--muted: #656d76;--accent: #bd5d3a;--accent-soft: #bd5d3a14;--good: #1a7f37;--good-soft: #1a7f3712;--bad: #cf222e;--bad-soft: #cf222e12;--warn: #9a6700}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}a{color:var(--accent)}.shell{max-width:860px;margin:0 auto;padding:0 16px 80px}.topbar{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);margin-bottom:24px}.topbar-inner{max-width:860px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.brand{font-weight:700;letter-spacing:-.01em;margin-right:auto;text-decoration:none;color:var(--text);font-size:15px}.brand span{color:var(--muted);font-weight:400}.navlink{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:14px;white-space:nowrap}.navlink:hover{background:var(--surface-2);color:var(--text)}.navlink.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.badge-dot{display:inline-block;min-width:18px;padding:0 5px;margin-left:5px;border-radius:9px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;text-align:center;line-height:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:16px}h1{font-size:26px;letter-spacing:-.02em;margin:8px 0 4px}h2{font-size:19px;margin:0 0 12px;letter-spacing:-.01em}h3{font-size:15px;margin:0 0 8px}.muted{color:var(--muted)}.small{font-size:13px}.mono{font-family:var(--mono);font-size:13px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}button,.btn{font:inherit;font-size:14px;font-weight:500;padding:9px 16px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;text-decoration:none;display:inline-block;transition:filter .12s ease}button:hover:not(:disabled),.btn:hover{filter:brightness(1.15)}button:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-danger{color:var(--bad);border-color:var(--bad);background:transparent}select,input[type=text],input[type=number]{font:inherit;font-size:14px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}label.field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.checkline{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text);text-transform:none;letter-spacing:0;font-weight:400;cursor:pointer}.qmeta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted);margin-bottom:12px}.pill{padding:2px 9px;border-radius:20px;background:var(--surface-2);border:1px solid var(--border);font-size:11.5px;white-space:nowrap}.pill.easy{color:var(--good)}.pill.medium{color:var(--warn)}.pill.hard{color:var(--bad)}.stem{font-size:17px;line-height:1.55;margin:0 0 18px}.options{display:flex;flex-direction:column;gap:9px}.option{display:flex;gap:12px;align-items:flex-start;text-align:left;width:100%;padding:13px 15px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);font-weight:400;line-height:1.5}.option:hover:not(:disabled){border-color:var(--accent);filter:none}.option.selected{border-color:var(--accent);background:var(--accent-soft)}.option.correct{border-color:var(--good);background:var(--good-soft)}.option.incorrect{border-color:var(--bad);background:var(--bad-soft)}.option:disabled{opacity:1;cursor:default}.option .letter{font-family:var(--mono);font-weight:700;font-size:13px;flex-shrink:0;width:22px;height:22px;line-height:22px;text-align:center;border-radius:5px;background:var(--surface);border:1px solid var(--border);margin-top:1px}.option.selected .letter{background:var(--accent);border-color:var(--accent);color:#fff}.option.correct .letter{background:var(--good);border-color:var(--good);color:#fff}.option.incorrect .letter{background:var(--bad);border-color:var(--bad);color:#fff}.option .mark{margin-left:auto;font-weight:700;flex-shrink:0}.verdict{font-weight:700;font-size:15px;margin-bottom:10px}.verdict.ok{color:var(--good)}.verdict.no{color:var(--bad)}.explain{border-left:3px solid var(--border);padding-left:14px;margin:12px 0;line-height:1.6}.rationale{background:var(--bad-soft);border:1px solid var(--border);border-left:3px solid var(--bad);border-radius:6px;padding:10px 13px;margin:8px 0;font-size:14.5px}.rationale.missed{background:var(--good-soft);border-left-color:var(--good)}.source{font-size:13px;color:var(--muted);margin-top:12px}.timer{font-family:var(--mono);font-size:15px;font-weight:700;padding:5px 11px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border)}.timer.warn{color:var(--warn);border-color:var(--warn)}.timer.danger{color:var(--bad);border-color:var(--bad);animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{opacity:.55}}.bar{height:7px;background:var(--surface-2);border-radius:4px;overflow:hidden;border:1px solid var(--border)}.bar>i{display:block;height:100%;background:var(--accent)}.bar.good>i{background:var(--good)}.bar.bad>i{background:var(--bad)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:6px}.grid button{padding:0;height:36px;font-size:13px;font-family:var(--mono)}.grid button.answered{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.grid button.flagged{border-color:var(--warn);color:var(--warn)}.grid button.current{outline:2px solid var(--text);outline-offset:1px}.grid button.wasCorrect{background:var(--good-soft);border-color:var(--good);color:var(--good)}.grid button.wasWrong{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.stat{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.stat .n{font-size:27px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.stat .k{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--border)}td{padding:8px;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}td.num{text-align:right;font-family:var(--mono);font-size:13px;white-space:nowrap}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag-list .pill{cursor:default}.hint{font-size:12.5px;color:var(--muted);margin-top:10px}kbd{font-family:var(--mono);font-size:11px;padding:1.5px 5px;border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;background:var(--surface-2)}.notice{padding:11px 14px;border-radius:var(--radius);border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--accent-soft);font-size:14px;margin-bottom:16px}.notice.bad{border-left-color:var(--bad);background:var(--bad-soft)}.notice.good{border-left-color:var(--good);background:var(--good-soft)}.sticky-actions{position:sticky;bottom:0;background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border);padding:12px 0;margin-top:16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}@media(max-width:560px){.stem{font-size:16px}.card{padding:14px}.sticky-actions button{flex:1}}
