:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--c-v:#1d9e75;--c-B:#7f56d9;--c-F:#e8613c;--c-I:#d99400;--c-ink:#1f2937;--c-muted:#9ca3af;--c-pos:#dc2626;--c-neg:#2563eb;--c-north:#dc2626;--c-south:#2563eb;--c-wire:#6b7280;--c-paper:#fff;--m-ink:var(--text);--m-O:#d23a2c;--m-N:#2f5fd0;--m-Br:#a0561c;--m-Cl:#1d9a55;--m-F:#1a9aa0;--m-S:#b59a00;--m-I:#7b3fb0;--bg:#f4f2fb;--bg-glow-1:#7f56d91f;--bg-glow-2:#1d9e7517;--surface:var(--c-paper);--surface-2:#f6f5fb;--surface-3:#eeecf6;--text:#1f2333;--text-2:#5c6175;--border:#e4e1ef;--border-strong:#d2cde4;--accent:#7f56d9;--accent-2:#6941c6;--accent-soft:#7f56d91a;--on-accent:#fff;--ok:#16a34a;--ok-strong:#15803d;--ok-soft:#e8f8ee;--ok-ring:#16a34a59;--bad:#dc2626;--bad-soft:#fdeeee;--warm:#e8613c;--shadow-card:0 1px 2px #1f23330a, 0 8px 28px -10px #4c368c2e;--shadow-btn:0 1px 0 #1f23330a, 0 2px 6px -2px #1f233314}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--c-v:#34c99a;--c-B:#ab8ef5;--c-F:#ff8a66;--c-I:#f5b83d;--c-ink:#e6e8ee;--c-muted:#7d8699;--c-pos:#ff6b6b;--c-neg:#5aa2ff;--c-north:#e5484d;--c-south:#3b7ef0;--c-wire:#a3aab8;--c-paper:#151922;--m-O:#ff7a6b;--m-N:#7aa8ff;--m-Br:#e09a5c;--m-Cl:#5fd394;--m-F:#5fd3d8;--m-S:#e6cc4a;--m-I:#c9a0ff;--bg:#0b0e14;--bg-glow-1:#ab8ef51a;--bg-glow-2:#34c99a0f;--surface-2:#1b2029;--surface-3:#232935;--text:#e9ebf1;--text-2:#9ba3b4;--border:#252b38;--border-strong:#343c4d;--accent:#ab8ef5;--accent-2:#c2abff;--accent-soft:#ab8ef524;--on-accent:#12101c;--ok:#3dd68c;--ok-strong:#3dd68c;--ok-soft:#3dd68c1f;--ok-ring:#3dd68c66;--bad:#ff6b6b;--bad-soft:#ff6b6b1f;--warm:#ff8a66;--shadow-card:0 1px 0 #ffffff08 inset, 0 12px 32px -12px #0009;--shadow-btn:0 1px 0 #ffffff08 inset}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{min-height:100vh;color:var(--text);background:radial-gradient(900px 500px at 10% -10%, var(--bg-glow-1), transparent 60%), radial-gradient(700px 420px at 100% 0%, var(--bg-glow-2), transparent 60%), var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;background-attachment:fixed;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.5;transition:background-color .25s,color .25s}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}kbd{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);border-bottom-width:2px;border-radius:5px;padding:.05em .4em;font-family:inherit;font-size:.78em;font-weight:600}.muted{color:var(--text-2)}.shell{max-width:760px;padding:max(14px, env(safe-area-inset-top)) 14px 32px;margin:0 auto;overflow-x:clip}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:4px 2px 14px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.logo{color:var(--c-B);flex:none}h1{letter-spacing:-.015em;margin:0;font-size:1.15rem;font-weight:750;line-height:1.2}.controls{align-items:center;gap:8px;display:flex}.seg{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px;display:inline-flex}.seg button,.icon-btn{width:34px;height:30px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;transition:background .2s,color .2s,transform .15s;display:inline-grid}.seg button:hover,.icon-btn:hover{color:var(--text)}.seg button.on{background:var(--surface);color:var(--accent);box-shadow:0 1px 3px #0000001f}[data-theme=dark] .seg button.on{background:var(--surface-3)}.theme-cycle{display:none!important}.icon-btn{background:var(--surface-2);border:1px solid var(--border);width:38px;height:38px}.icon-btn.on{color:var(--accent);background:var(--accent-soft);border-color:#0000}.bar-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.topic-toggle{border:1px solid var(--border);background:var(--surface);min-width:0;box-shadow:var(--shadow-btn);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:7px 12px 7px 14px;transition:border-color .2s;display:inline-flex}.topic-toggle:hover{border-color:var(--border-strong)}.tt-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);font-size:.72rem;font-weight:700}.tt-value{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.chev{color:var(--text-2);transition:transform .2s}.topic-toggle.open .chev{transform:rotate(180deg)}.pills{flex:none;gap:6px;display:flex}.pill{background:var(--surface);border:1px solid var(--border);color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:2px;padding:5px 10px;font-size:.85rem;display:inline-flex}.pill b{color:var(--text)}.pill.streak.hot{color:var(--warm);background:linear-gradient(135deg,#e8613c24,#d9940024);border-color:#0000}.pill.streak.hot b{color:var(--warm)}.pill.bump{animation:.45s cubic-bezier(.3,1.6,.5,1) bump}.pill.best span{color:var(--c-I)}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:18px;margin-top:14px}.topics-panel{margin:0 0 14px;padding:14px;animation:.25s ease-out fade-down}details.panel>summary{cursor:pointer;border-radius:18px;align-items:center;gap:10px;padding:14px 16px;font-weight:650;list-style:none;display:flex}details.panel>summary::-webkit-details-marker{display:none}details.panel>summary:after{content:"▾";color:var(--text-2);margin-left:auto;transition:transform .2s}details.panel[open]>summary:after{transform:rotate(180deg)}.panel-icon{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:9px;place-items:center;font-size:.9rem;display:inline-grid}.summary-note{color:var(--text-2);font-size:.85rem;font-weight:500}details.panel>:not(summary){padding:0 16px}details.panel[open]>:not(summary){animation:.25s ease-out fade-down}details.panel>:last-child{padding-bottom:16px}.topics{gap:12px;display:grid}.topic-group{border-top:1px dashed var(--border);gap:8px;padding-top:10px;display:grid}.topic-row{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.875rem;transition:background .15s,border-color .15s,color .15s,transform .1s}.chip:active{transform:scale(.96)}.chip:hover{border-color:var(--accent)}.chip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chip-cat{border-style:dashed;justify-self:start;font-weight:650}.chip-cat.on{border-style:solid}.chip-topic{background:var(--surface-2);font-weight:600}.topic-sub{border-left:2px solid var(--border);align-items:center;padding-left:10px}.chip-thru{font-size:.8rem}.topic-empty{color:var(--bad);margin:0;font-size:.9rem}.notice{background:var(--accent-soft);color:var(--text);border-radius:12px;margin:0 0 12px;padding:10px 14px;font-size:.9rem;animation:.3s ease-out fade-down}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:22px;padding:14px 16px 18px;transition:border-color .3s,box-shadow .3s;animation:.35s cubic-bezier(.2,.8,.3,1) card-in;position:relative}.card-ok{border-color:var(--ok-ring)}.card-bad{border-color:var(--border-strong)}.card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.tag{flex-wrap:wrap;align-items:baseline;column-gap:8px;min-width:0;font-size:.8rem;display:inline-flex}.tag-cat{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-size:.7rem;font-weight:700}.tag-title{color:var(--text-2)}.btn-ghost{border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:5px 11px;font-size:.8rem;transition:color .15s,border-color .15s;display:inline-flex}.btn-ghost:hover{color:var(--text);border-color:var(--border-strong)}.diagram-wrap{border-radius:14px;margin:4px -6px 0;overflow:hidden}.diagram-wrap>svg{width:100%;height:auto;display:block}.diagram-wrap>svg.scheme{width:auto;max-width:100%;margin:8px auto}.mol{max-width:100%;height:auto;display:block}.boot-error{text-align:center;max-width:32rem;color:var(--text-2);margin:20vh auto 0;padding:0 16px}.prompt{text-wrap:pretty;margin:10px 2px 12px;font-size:1.06rem;line-height:1.55}.q{font-weight:750}.btn-text{color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:4px 2px;font-size:.9rem;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .15s}.btn-text:hover{text-decoration-color:currentColor}.btn-text.danger{color:var(--bad)}.hint-btn{margin:-4px 0 10px}.hint{background:var(--surface-2);border-left:3px solid var(--c-I);border-radius:12px;margin:-2px 0 12px;padding:10px 12px;font-size:.95rem;animation:.25s ease-out fade-down}.hint-label{color:var(--c-I);margin-right:4px;font-weight:700}.pad{--gap:8px;margin-top:4px}.pad-row{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.pad-row.n3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=480px){.pad-row.n3 .choice{padding-left:3px;padding-right:3px}.pad-row.n3 .choice .label{letter-spacing:-.015em;overflow-wrap:normal;font-size:.66rem}}.nw{white-space:nowrap}.pad-row.n2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:460px;margin-left:auto;margin-right:auto}.pad-mols{gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pad-mols .choice{min-height:118px;padding:14px 8px 10px}.pad-mols.n3 .choice:last-child{width:calc(50% - var(--gap) / 2);grid-column:1/-1;justify-self:center}.choice .letter{letter-spacing:.04em;color:var(--text-2);font-size:.72rem;font-weight:800;position:absolute;top:7px;left:10px}.mol-box{place-items:center;width:100%;line-height:0;display:grid}.mol-box .mol{width:auto;max-height:140px}.mol-cap{color:var(--text-2);text-align:center;font-size:.74rem;line-height:1.3}.choice.is-correct .mol,.choice.is-wrong .mol{--m-ink:currentColor;--m-O:currentColor;--m-N:currentColor;--m-Br:currentColor;--m-Cl:currentColor;--m-F:currentColor;--m-S:currentColor;--m-I:currentColor}.choice.is-correct .letter,.choice.is-correct .mol-cap,.choice.is-wrong .letter,.choice.is-wrong .mol-cap{color:inherit}.choice .why{text-align:center;color:inherit;margin-top:4px;font-size:.74rem;line-height:1.3}.pad-text{gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pad-text .choice{min-height:64px}.pad-text .choice .label{color:var(--text);font-size:.92rem;font-weight:650}.pad-text .choice.is-correct .label,.pad-text .choice.is-wrong .label{color:inherit}.choice .label sub,.choice .label sup{font-size:.72em;line-height:0}.choice{border:1.5px solid var(--border-strong);background:var(--surface-2);min-width:0;min-height:74px;box-shadow:var(--shadow-btn), 0 3px 0 -1px var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 6px;transition:transform .12s,background .2s,border-color .2s,color .2s,opacity .25s,box-shadow .2s;display:flex;position:relative}.choice:hover:not([aria-disabled=true]){border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.choice:active:not([aria-disabled=true]){box-shadow:none;transform:translateY(1px)scale(.97)}.choice[aria-disabled=true]{cursor:default}.glyph{color:var(--text);font-size:1.85rem;font-weight:500;line-height:1}.choice .label{color:var(--text-2);text-align:center;overflow-wrap:anywhere;font-size:.74rem;font-weight:600;line-height:1.2}.pad-row .glyph{font-size:2rem}.pad-row .label{font-size:.85rem}.key{opacity:0;padding:0 .35em;font-size:.62rem;transition:opacity .2s;position:absolute;top:5px;right:6px}@media (hover:hover) and (pointer:fine){.pad:hover .key,.pad:focus-within .key{opacity:.8}}.choice.is-correct{background:var(--ok);border-color:var(--ok);color:#fff;box-shadow:0 6px 18px -6px var(--ok-ring)}[data-theme=dark] .choice.is-correct{color:#06210f}.choice.is-correct .glyph,.choice.is-correct .label{color:inherit}.choice.is-wrong{background:var(--bad-soft);border-color:var(--bad);color:var(--bad);box-shadow:none}.choice.is-wrong .glyph,.choice.is-wrong .label{color:var(--bad)}.choice.is-dim{opacity:.45;box-shadow:none}.pop{animation:.45s cubic-bezier(.3,1.7,.5,1) pop}.shake{animation:.42s cubic-bezier(.36,.07,.19,.97) shake}.glow{animation:1.1s ease-out 2 glow}.burst{pointer-events:none;position:absolute;inset:0;overflow:visible}.burst i{opacity:0;border-radius:2px;width:7px;height:11px;margin:-5px 0 0 -3px;animation:.8s cubic-bezier(.15,.7,.3,1) forwards fly;position:absolute;top:50%;left:50%}.burst i.round{border-radius:50%;width:8px;height:8px}.feedback-slot{min-height:0}.feedback{border-radius:999px;justify-content:center;align-items:center;gap:8px;width:fit-content;max-width:100%;margin:14px auto 0;padding:8px 16px;font-size:1rem;font-weight:700;animation:.4s cubic-bezier(.3,1.5,.5,1) msg-in;display:flex}.feedback.ok{background:var(--ok-soft);color:var(--ok-strong)}.feedback.bad{background:var(--surface-2);color:var(--text)}.feedback.streak{color:var(--warm);background:linear-gradient(135deg,#e8613c29,#d994002e,#7f56d929);font-size:1.08rem}.fb-icon{border:2px solid;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.8rem;display:inline-grid}.explain{background:var(--surface-2);border:1px solid var(--border);border-radius:16px;margin-top:14px;padding:14px 16px 16px;animation:.35s cubic-bezier(.2,.8,.3,1) rise}.explain.ok{border-color:var(--ok-ring)}.explain h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);margin:0 0 6px;font-size:.8rem}.explain-body{text-wrap:pretty;font-size:.98rem;line-height:1.6}.explain-body p{margin:0 0 .5em}.next-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.btn-primary{background:var(--accent);min-height:48px;color:var(--on-accent);cursor:pointer;box-shadow:0 6px 18px -8px var(--accent);border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:1rem;font-weight:700;transition:transform .12s,background .2s,box-shadow .2s;display:inline-flex}.btn-primary:hover{background:var(--accent-2);transform:translateY(-1px)}.btn-primary:active{transform:translateY(1px)scale(.98)}.btn-primary.next{flex:auto;max-width:280px}.btn-primary.next span{transition:transform .2s}.btn-primary.next:hover span,.btn-primary.next:focus-visible span{transform:translate(3px)}.kbd-tip{color:var(--text-2);font-size:.8rem}@media (hover:none){.kbd-tip{display:none}}.skip-row{justify-content:flex-end;margin-top:8px;display:flex}.skip-row .btn-text{color:var(--text-2);font-weight:500}.empty{text-align:center;justify-items:center;gap:4px;padding:36px 12px 28px;display:grid}.empty-art{color:var(--c-B);opacity:.85;margin-bottom:8px;animation:3.5s ease-in-out infinite float}.empty-title{margin:0;font-size:1.2rem;font-weight:750}.empty .muted{margin:0 0 12px}.cheat-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.cheat-grid section{background:var(--surface-2);border-radius:14px;padding:12px 14px}.cheat-grid h3{margin:0 0 4px;font-size:.95rem}.cheat-grid p{color:var(--text-2);margin:0;font-size:.9rem;line-height:1.55}.cheat-grid p b{color:var(--text)}.conv{color:var(--text-2);gap:4px;margin:0 0 8px;padding:0;font-size:.9rem;list-style:none;display:grid}.conv li{align-items:center;gap:8px;display:flex}.sym{text-align:center;width:26px;color:var(--c-ink);font-size:1.25rem;line-height:1}.line{border-top:3px solid var(--c-ink);width:26px;display:inline-block}.line.dashed{border-top-style:dashed;border-top-color:var(--c-muted)}.cheat-grid p.legend{font-size:.85rem}.stats{gap:12px;display:grid}.stat-group h4{text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);margin:0 0 6px;font-size:.72rem}.stat-row{grid-template-columns:minmax(0,1.4fr) minmax(60px,1fr) auto;align-items:center;gap:10px;padding:3px 0;font-size:.9rem;display:grid}.stat-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar{background:var(--surface-3);border-radius:999px;height:8px;overflow:hidden}.fill{border-radius:inherit;height:100%;transition:width .5s cubic-bezier(.2,.8,.3,1);display:block}.fill.hi{background:var(--ok)}.fill.mid{background:var(--c-I)}.fill.lo{background:var(--c-F)}.stat-num{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:.85rem}.panel-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;font-size:.9rem;display:flex}.progress .muted{margin:0;font-size:.9rem}.foot{text-align:center;color:var(--text-2);margin-top:26px;font-size:.8rem}.foot p{margin:4px 0}.foot .keys kbd{margin:0 1px}@media (hover:none){.foot .keys{display:none}}@media (width<=480px){.shell{padding-left:10px;padding-right:10px}h1{font-size:1.02rem}.card{border-radius:20px;padding:12px 12px 16px}.diagram-wrap{margin:2px -4px 0}.prompt{font-size:1rem}.pad{--gap:6px}.choice{border-radius:14px;min-height:68px}.glyph{font-size:1.6rem}.choice .label{font-size:.68rem}.tt-label,.seg{display:none}.theme-cycle{display:inline-grid!important}.icon-btn{width:36px;height:36px}.logo{width:26px;height:26px}.pill{padding:5px 8px}}@media (width>=640px){.shell{padding-top:28px}h1{font-size:1.3rem}.card{padding:18px 22px 22px}.choice{min-height:82px}}@keyframes card-in{0%{opacity:0;transform:translateY(8px)scale(.99)}}@keyframes fade-down{0%{opacity:0;transform:translateY(-4px)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)scale(.92)}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.12)}70%{transform:scale(.97)}to{transform:scale(1)}}@keyframes bump{40%{transform:scale(1.18)}}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(3px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}@keyframes glow{0%{box-shadow:0 0 0 0 var(--ok-ring)}70%{box-shadow:0 0 0 12px #0000}to{box-shadow:0 0 #0000}}@keyframes fly{0%{opacity:1;transform:translate(0)rotate(0)scale(.6)}70%{opacity:1}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(var(--rot)) scale(1)}}@keyframes float{50%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.explain-body ol.steps{margin:0;padding-left:1.3em}.explain-body ol.steps li+li{margin-top:4px}.pad-chairs .choice{min-height:150px;padding:18px 10px 12px}.pad-chairs .mol-box .mol{max-height:none}@media (width<=560px){.pad-mols.pad-chairs{grid-template-columns:minmax(0,1fr)}}.chair-stem{justify-items:center;padding:6px 0 2px;display:grid}.chair-stem svg{max-width:100%;height:auto}.fmt-check-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.fmt-check-row .btn-primary[disabled]{opacity:.45;cursor:default;transform:none}.fmt-check-row .muted{font-size:.85rem}.fmt-why{color:var(--text-2);font-size:.78rem;line-height:1.35}.fmt-why sub,.fmt-why sup{font-size:.7em}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:.7rem;font-weight:800}.rank-wrap{position:relative}.rank-ends{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;margin:0 4px 6px;font-size:.75rem;font-weight:700;display:flex}.rank{gap:8px;margin:0;padding:0;list-style:none;display:grid;position:relative}.rank li{border:1.5px solid var(--border-strong);background:var(--surface-2);-webkit-user-select:none;user-select:none;border-radius:14px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px 8px 6px;transition:border-color .2s,background .2s,box-shadow .2s;display:grid}.rank li.dragging{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 10px 24px -12px #00000059}.rank.locked li{cursor:default}.rank li.ok{border-color:var(--ok);background:var(--ok-soft)}.rank li.bad{border-color:var(--bad);background:var(--bad-soft)}.rank .grip{cursor:grab;touch-action:none;color:var(--text-2);border-radius:10px;align-content:center;align-self:stretch;justify-items:center;gap:2px;display:grid}.rank .grip .pos{font-variant-numeric:tabular-nums;font-weight:800}.rank .grip .dots{letter-spacing:-1px;opacity:.6;font-size:.7rem}.rank.locked .grip{cursor:default}.rank .row-body{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.rank .row-body svg{flex:none;max-width:100%;height:auto}.rank .row-body .fmt-why{flex:140px}.rank .mv{flex-direction:column;gap:4px;display:flex}.rank .mv button{border:1px solid var(--border-strong);background:var(--surface);width:38px;height:34px;color:var(--text);cursor:pointer;border-radius:10px;font-size:1rem}.rank .mv button:hover:not([disabled]){border-color:var(--accent);color:var(--accent)}.rank .mv button[disabled]{opacity:.35;cursor:default}.rank .mark{padding:0 6px;font-size:1.1rem;font-weight:800}.rank li.ok .mark{color:var(--ok-strong)}.rank li.bad .mark{color:var(--bad)}.rank-answer{margin-top:14px}.rank-answer .rank li{grid-template-columns:34px minmax(0,1fr)}.lab-tray{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.chipr{border:1.5px solid var(--border-strong);background:var(--surface-2);min-height:42px;color:var(--text);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-btn), 0 3px 0 -1px var(--border);border-radius:999px;align-items:center;padding:6px 14px;font-size:.88rem;font-weight:700;transition:transform .12s,border-color .15s,background .15s;display:inline-flex}.chipr:hover:not([disabled]),.chipr.armed{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.chipr.armed{transform:translateY(-1px)}.chipr[disabled]{opacity:.5;cursor:default}.chipr.drag-ghost{z-index:50;pointer-events:none;transition:none;position:fixed;transform:translate(-50%,-50%)rotate(-3deg)scale(1.06);box-shadow:0 10px 24px -8px #00000059}.lab-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid;position:relative}.lcard{border:1.5px solid var(--border-strong);background:var(--surface-2);min-width:0;color:inherit;font:inherit;cursor:pointer;box-shadow:var(--shadow-btn), 0 3px 0 -1px var(--border);border-radius:16px;align-content:start;justify-items:center;gap:6px;padding:12px 8px 10px;transition:border-color .15s,background .15s,transform .12s;display:grid;position:relative}.lcard:hover:not([aria-disabled=true]),.lcard.over{border-color:var(--accent);background:var(--accent-soft)}.lcard.over{box-shadow:0 0 0 3px var(--accent-soft)}.lcard[aria-disabled=true]{cursor:default}.lcard .mol-box{place-items:center;max-width:100%;min-height:84px;display:grid}.lcard .mol-box svg{max-width:100%;height:auto}.lcard .mol-cap{color:var(--text-2);font-size:.74rem}.lslot{border:2px dashed var(--border-strong);min-width:112px;min-height:32px;color:var(--text-2);border-radius:999px;justify-content:center;align-items:center;padding:3px 12px;font-size:.8rem;font-weight:650;display:inline-flex}.lslot.full{border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--surface)}.lcard.ok{border-color:var(--ok);background:var(--ok-soft)}.lcard.ok .lslot{border-color:var(--ok);color:var(--ok-strong)}.lcard.bad{border-color:var(--bad);background:var(--bad-soft)}.lcard.bad .lslot{border-color:var(--bad);color:var(--bad);text-decoration:line-through}.lcard .lfix{color:var(--ok-strong);font-size:.8rem;font-weight:750}.lcard .fmt-why{text-align:center}@media (width<=340px){.lab-grid{grid-template-columns:minmax(0,1fr)}}.tapwrap{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;justify-items:center;padding:26px 10px 18px;display:grid;position:relative}.tapwrap .tap-tag{color:var(--text-2);font-size:.86rem;font-weight:700;position:absolute;top:8px;right:12px}.tapwrap svg.tapmol{max-width:100%;height:auto;display:block;overflow:visible}.tapmol circle.hit{fill:#0000;stroke:#0000;stroke-width:2.5px;cursor:pointer;transition:fill .15s,stroke .15s}.tapmol circle.hit:focus{outline:none}.tapmol circle.hit:hover,.tapmol circle.hit:focus-visible{fill:var(--accent-soft);stroke:var(--accent)}.tapmol.locked circle.hit{cursor:default}.tapmol.locked circle.hit:hover{fill:#0000;stroke:#0000}.tapmol circle.hit.wrong,.tapmol.locked circle.hit.wrong:hover{fill:var(--bad-soft);stroke:var(--bad)}.tapmol circle.hit.right,.tapmol.locked circle.hit.right:hover{fill:var(--ok-soft);stroke:var(--ok)}.tapmol circle.hit.right.pulse{animation:1s ease-in-out 2 tap-glow}@keyframes tap-glow{50%{stroke-width:5px}}.tap-note{margin-top:10px}.tap-product{background:var(--surface);border:1px dashed var(--border-strong);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;padding:10px;display:flex}.tap-product .tagline{color:var(--text-2);font-size:.82rem;font-weight:650}.tap-product-mol{justify-items:center;display:grid}.tap-product-mol svg{max-width:100%;height:auto}@media (prefers-reduced-motion:reduce){.rank li,.lcard,.chipr,.tapmol circle.hit{transition:none}.tapmol circle.hit.right.pulse{animation:none}}
