:root{--bg:#f6f5f1;--surface:#fff;--surface-2:#efede6;--text:#1f1e1b;--text-2:#5f5d57;--text-3:#8f8c84;--border:#dedbd2;--border-strong:#c4c0b5;--accent:#1f5fa8;--accent-bg:#e3edf9;--ok:#2c6e1a;--ok-bg:#e4f1da;--warn:#8a5a0b;--warn-bg:#f8ecd6;--bad:#a3302d;--bad-bg:#f9e3e2;--radius:10px;--mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1a1a18;--surface:#242422;--surface-2:#2d2d2a;--text:#ecebe6;--text-2:#b3b1aa;--text-3:#85837c;--border:#3a3a36;--border-strong:#55544e;--accent:#8db8ec;--accent-bg:#1f3247;--ok:#9ed27f;--ok-bg:#233a1a;--warn:#ecc27a;--warn-bg:#3d2f14;--bad:#f0a09d;--bad-bg:#452322}}*,:before,:after{box-sizing:border-box;transition:none!important;animation:none!important}html,body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-text-size-adjust:100%;margin:0;font-size:16px;line-height:1.5}#app{max-width:560px;min-height:100dvh;margin:0 auto;padding:16px 16px 40px}button{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;min-height:44px;padding:0 16px}button:hover{background:var(--surface-2)}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);border-color:var(--accent);color:var(--surface)}button.ghost{color:var(--text-2);background:0 0;border-color:#0000}input[type=text]{font:inherit;font-family:var(--mono);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;min-height:52px;padding:0 14px;font-size:20px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spread{justify-content:space-between;align-items:center;gap:8px;display:flex}.muted{color:var(--text-2)}.small{font-size:13px}.mono{font-family:var(--mono)}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 20px;display:grid}.metric{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.metric .label{color:var(--text-3);font-size:13px}.metric .value{font-size:24px;font-weight:500}.stack{gap:8px;display:grid}.taskbar{color:var(--text-2);margin-bottom:18px;font-size:13px}.dots span{border:1px solid var(--border-strong);vertical-align:-1px;border-radius:50%;width:9px;height:9px;margin-right:3px;display:inline-block}.dots span.on{background:var(--ok);border-color:var(--ok)}.dots.attempts span{border-radius:2px}.dots.attempts span.on{background:var(--bad);border-color:var(--bad)}.prompt{font-family:var(--mono);word-break:break-word;font-size:24px;font-weight:500;line-height:1.3}.hint{min-height:24px;color:var(--text-2);margin:6px 0 16px}.intro-answer{font-family:var(--mono);color:var(--ok);font-size:22px}.options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.options button{font-family:var(--mono);text-align:left;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;align-items:center;gap:10px;min-width:0;min-height:56px;font-size:18px;display:flex}.options button.native{font-family:var(--sans);font-size:17px;line-height:1.3}.options button .key{font-family:var(--sans);color:var(--text-3);font-size:12px}.options button.ok{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}.options button.bad{background:var(--bad-bg);border-color:var(--bad);color:var(--bad);text-decoration:line-through}.options button.target{border:2px solid var(--ok)}.result{min-height:28px;font-family:var(--mono);margin-top:14px;font-size:17px}.result .ok{color:var(--ok)}.result .almost{color:var(--warn)}.result .bad{color:var(--bad)}.result .note{font-family:var(--sans);color:var(--text-3);font-size:13px}mark.diff{background:var(--bad-bg);color:var(--bad);border-radius:3px;padding:0 1px}.actions{gap:8px;margin-top:18px;display:flex}.actions button{flex:1}.task-screen{flex-direction:column;min-height:calc(100dvh - 56px);display:flex}.task-body{margin:auto 0;padding-bottom:8vh}.newtag{background:var(--accent-bg);color:var(--accent);border-radius:999px;margin-bottom:8px;padding:2px 10px;font-size:12px;display:inline-block}.summary{font-family:var(--mono);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:12px 0 20px;padding:16px;font-size:17px}.err{color:var(--bad);min-height:18px;font-size:13px}h1{margin:8px 0 4px;font-size:22px;font-weight:500}.legend{flex-wrap:wrap;gap:14px;margin:4px 0 14px;display:flex}.swatch{vertical-align:-1px;border:1px solid var(--border-strong);border-radius:3px;width:12px;height:12px;display:inline-block}.swatch.locked,.cell.locked{color:var(--text-3);background:0 0;border-style:dashed}.swatch.unseen,.cell.unseen{background:var(--surface)}.swatch.learning,.cell.learning{background:var(--warn-bg);border-color:var(--warn);color:var(--warn)}.swatch.mastered,.cell.mastered{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}.cell.off{opacity:.4}.wordlist{gap:6px;margin-bottom:12px;display:grid}.wordrow{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.wordhead{text-align:left;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.bar{background:var(--surface-2);height:3px;display:flex}.bar .mastered{background:var(--ok)}.bar .learning{background:var(--warn)}.detail{border-top:1px solid var(--border);gap:10px;padding:10px 12px 12px;display:grid}.grid{align-items:end;gap:4px;display:grid}.verbgrid{gap:10px;display:grid}.rowlabel{color:var(--text-2);align-self:center;font-size:12px}.colhead{color:var(--text-3);font-size:11px;display:block}.cell{border:1px solid var(--border-strong);text-align:center;word-break:break-word;border-radius:6px;justify-content:center;align-items:center;gap:3px;min-height:34px;padding:2px 4px;font-size:13px;display:flex}.cell.empty{border:none}.cell sup{font-size:10px;font-family:var(--sans)}.settings fieldset{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0 0 12px;padding:10px 14px 12px}.settings legend{color:var(--text-2);padding:0 4px;font-size:13px}.check{cursor:pointer;align-items:center;gap:10px;min-height:40px;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent)}.check .sub{color:var(--text-3);font-size:12px;line-height:1.3;display:block}.num{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.num input,.settings select{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:8px;min-height:40px;padding:0 8px}.num input{text-align:right;width:84px}.chips{flex-wrap:wrap;gap:6px 14px;display:flex}input.pwd{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;min-height:52px;padding:0 14px;font-size:17px}.account-link{min-height:36px;padding:0 10px;font-size:13px}.chips-row{flex-wrap:wrap;gap:6px;display:flex}.pill{min-height:44px;font-family:var(--mono);padding:0 14px;font-size:15px}.pill.sel{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.pill.okp{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}.tf-shown{font-family:var(--mono);padding:6px 0 4px;font-size:28px;font-weight:500}.tf-shown.ok{color:var(--ok)}.tf-shown.bad{color:var(--bad);text-decoration:line-through}.table-scene{gap:6px;display:grid}.table-row{grid-template-columns:74px minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:8px;display:grid}.table-row input{min-height:44px;font-size:17px}input.cell-ok{border-color:var(--ok);background:var(--ok-bg);color:var(--ok)}input.cell-almost{border-color:var(--warn);background:var(--warn-bg)}input.cell-bad{border-color:var(--bad);background:var(--bad-bg)}.bad{color:var(--bad)}
