.lg-page{--font-formula:"JetBrains Mono", ui-monospace, Menlo, monospace;--lit:#ffe27a;--lit-edge:#d9a30f;--lit-ink:#6b4b00;--fresh:#e9e2ff;--fresh-edge:#6d4aa3;flex-direction:column;gap:1.5rem;width:100%;min-height:100vh;padding:1.5rem 0 4rem;display:flex}.lg-page [hidden]{display:none!important}.lg-page .lg-top{align-items:center;display:flex}.lg-page .back-pill{background:var(--glass-bg-medium);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);color:var(--color-text-primary);border-radius:999px;align-items:center;gap:.5rem;padding:.5rem 1.05rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex;box-shadow:0 2px 8px #1a20160d}.lg-page .back-pill:hover{background:var(--glass-bg-strong);transform:translate(-2px)}.lg-page .lg-heading .section-headline{margin-bottom:.6rem;font-size:clamp(2rem,4.2vw,2.9rem)}.lg-page .lg-panel{flex-direction:column;gap:1rem;padding:1.1rem;display:flex}.lg-page .lg-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;padding:.1rem .15rem;display:flex}.lg-page .lg-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:1rem;display:grid}.lg-page .pill-group{background:#1a201612;border:1px solid #ffffff80;border-radius:999px;flex-wrap:wrap;gap:2px;max-width:100%;padding:3px;display:inline-flex}.lg-page .pill-group button{font:inherit;letter-spacing:-.01em;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:.5rem 1.15rem;font-size:.85rem;font-weight:600;transition:background .2s,color .2s}.lg-page .pill-group button:hover{color:var(--color-text-primary)}.lg-page .pill-group button[aria-selected=true],.lg-page .pill-group button[aria-pressed=true]{background:var(--color-text-primary);color:var(--color-text-light);box-shadow:0 2px 8px #1a201633}.lg-page .pill-group button:disabled{opacity:.4;cursor:not-allowed}.lg-page .pill-group.small button{padding:.36rem .85rem;font-size:.78rem}.lg-page .tdot{background:var(--c);border-radius:50%;width:9px;height:9px;margin-right:.5rem;display:inline-block;box-shadow:0 0 0 1.5px #1a20168c}.lg-page .stage{height:100%;min-height:600px;box-shadow:var(--glass-inner-bevel);background-color:#ffffff80;background-image:radial-gradient(#1a201612 1px,#0000 1px);background-size:22px 22px;border:1px solid #ffffffa6;border-radius:1.1rem;flex-direction:column;display:flex;position:relative;overflow:hidden}.lg-page .stage-top{z-index:3;flex-direction:column;align-items:flex-start;gap:.55rem;padding:.85rem .95rem 0;display:flex;position:relative}.lg-page .formula-line{background:var(--glass-bg-strong);border:1px solid var(--glass-border);max-width:100%;font-family:var(--font-formula);color:var(--color-text-primary);white-space:nowrap;border-radius:.9rem;padding:.5rem .95rem;font-size:1rem;font-weight:600;overflow-x:auto;box-shadow:0 4px 14px #1a20160d}.lg-page .formula-line .row+.row{margin-top:.15rem}.lg-page .formula-line .lab{color:var(--color-text-muted);margin-right:.5rem;font-family:STIX Two Math,Cambria Math,Times New Roman,serif;font-style:italic;font-weight:400}.lg-page .switches{flex-wrap:wrap;gap:.4rem;display:flex}.lg-page .sw{cursor:pointer;font:inherit;font-family:var(--font-formula);color:var(--color-text-primary);background:#ffffffeb;border:1px solid #1a201629;border-radius:999px;align-items:center;gap:.55rem;padding:.3rem .4rem .3rem .75rem;font-size:.84rem;font-weight:700;transition:transform .15s;display:inline-flex;box-shadow:0 2px 6px #1a20160d}.lg-page .sw:hover:not(:disabled){transform:translateY(-1px)}.lg-page .sw:disabled{cursor:default}.lg-page .sw .track{background:#cfd4c9;border-radius:999px;width:30px;height:17px;transition:background .2s;position:relative}.lg-page .sw .track:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.lg-page .sw.on .track{background:var(--lit-edge)}.lg-page .sw.on .track:after{transform:translate(13px)}.lg-page .sw sub{font-size:.7em}.lg-page .stage-body{flex:1;min-height:0;position:relative}.lg-page .tree-svg{touch-action:manipulation;width:100%;height:100%;position:absolute;inset:0}.lg-page .empty-hint{color:var(--color-text-muted);text-align:center;pointer-events:none;place-items:center;margin:0;padding:2rem;font-size:.95rem;line-height:1.6;display:grid;position:absolute;inset:0}.lg-page .stage-foot{z-index:3;pointer-events:none;justify-content:space-between;align-items:flex-end;gap:.6rem;display:flex;position:absolute;bottom:.9rem;left:.9rem;right:.9rem}.lg-page .status-pill,.lg-page .result-pill{background:var(--glass-bg-strong);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);border-radius:999px;padding:.5rem 1rem;font-size:.82rem;font-weight:600;box-shadow:0 4px 14px #1a20160f}.lg-page .status-pill{color:var(--color-text-secondary);-webkit-line-clamp:3;border-radius:1.1rem;-webkit-box-orient:vertical;min-width:0;line-height:1.45;display:-webkit-box;overflow:hidden}.lg-page .result-pill{white-space:nowrap;color:var(--color-text-primary);flex-shrink:0;align-items:center;gap:.45rem;display:inline-flex}.lg-page .result-pill:empty{display:none}.lg-page .result-pill .bulb{background:#cfd4c9;border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 1.5px #1a201659}.lg-page .result-pill.on{color:var(--lit-ink);background:#fff6d6}.lg-page .result-pill.on .bulb{background:var(--lit);box-shadow:0 0 0 1.5px var(--lit-edge), 0 0 10px 2px #ffd84dcc}.lg-page .result-pill.good{color:#2f5a27;background:#eef7e9}.lg-page .result-pill.bad{color:#9a3517;background:#fdeee7}.lg-page .tree-svg text{font-family:var(--font-primary)}.lg-page .tedge{stroke:#a3ab9d;stroke-width:1.8px;stroke-linecap:round;transition:stroke .3s,stroke-width .3s}.lg-page .tedge.on{stroke:var(--lit-edge);stroke-width:3.2px}.lg-page .lamp-glow{fill:none}.lg-page .lamp-glow.on{fill:url(#lg-glow)}.lg-page .tnode{outline:none;transition:transform .38s cubic-bezier(.2,0,0,1),opacity .3s}.lg-page .tnode .disc{fill:#fff;stroke:#1a2016;stroke-width:1.8px;transition:fill .3s,stroke .3s}.lg-page .tnode .ring{fill:none;stroke:#1a2016;stroke-width:1.5px;stroke-dasharray:3 3.5;opacity:0;transition:opacity .2s}.lg-page .tnode .k{fill:#1a2016;text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:16px;font-weight:700}.lg-page .tnode.k-atom .k,.lg-page .tnode.k-tvar .k{font-family:var(--font-formula);font-size:14px}.lg-page .tnode .k .sub{font-size:10px}.lg-page .tnode.val-t .disc{fill:var(--lit);stroke:var(--lit-edge)}.lg-page .tnode.val-t .k{fill:var(--lit-ink)}.lg-page .tnode.val-f .disc{stroke:#a3ab9d}.lg-page .tnode.val-f .k{fill:#6f7a69}.lg-page .tnode.k-tvar .disc{fill:var(--fresh);stroke:var(--fresh-edge)}.lg-page .tnode.k-tvar .k{fill:#46297a}.lg-page .tnode.is-focus .ring,.lg-page .tnode:focus-visible .ring{opacity:1}.lg-page .tnode.is-click{cursor:pointer}.lg-page .tnode.is-click:hover .ring{opacity:.6}.lg-page .tnode.is-simple .ring{opacity:1;stroke:var(--fresh-edge);stroke-width:2px;stroke-dasharray:4 3;animation:1.4s linear infinite lg-dash}.lg-page .tnode.is-chi .disc,.lg-page .tnode.is-pick .disc{fill:#e3f29a;stroke:#1a2016;stroke-width:2.4px}.lg-page .tnode.is-new .disc{stroke-width:2.6px}.lg-page .tnode.is-right .disc{fill:#dcefd3;stroke:#3f7d34;stroke-width:2.4px}.lg-page .tnode.is-wrong .disc{fill:#fbe3da;stroke:#b4472a;stroke-width:2.4px}.lg-page .tnode.is-dim{opacity:.3!important}@keyframes lg-dash{to{stroke-dashoffset:-14px}}.lg-page .tnode.k-hole .disc{fill:#fffffff2;stroke:#1a2016;stroke-dasharray:5 4}.lg-page .tk text{font-family:var(--font-formula);fill:#1a2016;text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:15px;font-weight:600}.lg-page .tk.op{cursor:pointer;outline:none}.lg-page .tk.op rect{fill:#eef1e7;stroke:#1a201640;stroke-width:1px;transition:fill .15s}.lg-page .tk.op:hover rect,.lg-page .tk.op:focus-visible rect{fill:#cae650;stroke:#1a2016}.lg-page .tk.op.hint rect{stroke:#1a2016;stroke-width:2px;stroke-dasharray:3 2}.lg-page .tk.op.wrong rect{fill:#fbe3da;stroke:#b4472a;animation:.35s lg-shake}@keyframes lg-shake{25%{transform:translate(-2px)}75%{transform:translate(2px)}}.lg-page .table-wrap{padding:.4rem .9rem 4.4rem;position:absolute;inset:0;overflow:auto}.lg-page .tt{border-collapse:separate;border-spacing:0;font-family:var(--font-formula);background:#ffffffe6;border:1px solid #fffffff2;border-radius:.85rem;margin:0 auto;font-size:.85rem;box-shadow:0 4px 16px #1a20160f}.lg-page .tt th{z-index:1;white-space:nowrap;background:#f3f4ee;border-bottom:1.5px solid #1a201624;padding:.5rem .65rem;font-weight:700;position:sticky;top:0}.lg-page .tt th:first-child{border-top-left-radius:.85rem}.lg-page .tt th:last-child{border-top-right-radius:.85rem}.lg-page .tt th.cl{color:var(--color-text-muted);font-weight:600}.lg-page .tt th.cl.is-focus{color:#1a2016;background:#e8f59c}.lg-page .tt td{text-align:center;border-bottom:1px solid #1a20160f;padding:.28rem .65rem;transition:background .2s,opacity .2s}.lg-page .tt td.n{color:var(--color-text-muted);font-size:.7rem}.lg-page .tt .sep{border-left:2px solid #1a20161f}.lg-page .tt tr.is-row{cursor:pointer}.lg-page .tt tr.is-row:hover td{background:#cae65024}.lg-page .tt tr.is-current td{background:#cae65047}.lg-page .tt tr.is-current td:first-child{box-shadow:inset 3px 0 #1a2016}.lg-page .tt tr.is-untested td{opacity:.35}.lg-page .tt tr.is-hit td{color:#9aa394;background:#1a20161a;text-decoration:line-through #1a201640}.lg-page .tt .v0{color:#8a9484}.lg-page .tt .v1{color:#1a2016;font-weight:700}.lg-page .tt .lamp{vertical-align:middle;background:#e4e7df;border-radius:50%;width:16px;height:16px;display:inline-block;box-shadow:inset 0 0 0 1.5px #1a201633}.lg-page .tt .lamp.on{background:var(--lit);box-shadow:inset 0 0 0 1.5px var(--lit-edge), 0 0 8px 1px #ffd84db3}.lg-page .tt .lamp.q{background:0 0;box-shadow:inset 0 0 0 1.5px #1a201640}.lg-page .tt td.cl.is-focus{background:#e8f59c66}.lg-page .tt button.cell{font:inherit;min-width:2.4rem;color:var(--color-text-muted);cursor:pointer;background:#fff;border:1.5px dashed #1a201659;border-radius:999px;padding:.12rem .4rem;font-size:.74rem;font-weight:700}.lg-page .tt button.cell.t{border-style:solid;border-color:var(--lit-edge);background:var(--lit);color:var(--lit-ink)}.lg-page .tt button.cell.f{color:#5e6d57;background:#eef0ea;border-style:solid;border-color:#a3ab9d}.lg-page .tt button.cell.ok{box-shadow:0 0 0 2px #7cc36a}.lg-page .tt button.cell.bad{box-shadow:0 0 0 2px #e3593a}.lg-page .tt-note{text-align:center;color:var(--color-text-muted);margin:.6rem 0 0;font-size:.78rem}.lg-page .fx{font-family:var(--font-formula);color:var(--color-text-primary);overflow-wrap:anywhere;background:#1a20160e;border-radius:6px;padding:.02rem .3rem;font-size:.92em;font-weight:600}.lg-page .fx sub,.lg-page .formula-line sub{font-size:.72em}.lg-page mark{color:inherit;background:#e8f59c;border-radius:4px;padding:0 .08rem;box-shadow:0 0 0 1.5px #b9cf3c}.lg-page mark.hl-hover{background:#e2eef9;box-shadow:0 0 0 1.5px #8fb6dc}.lg-page .mv{font-family:STIX Two Math,Cambria Math,Times New Roman,serif;font-size:1.06em;font-style:italic}.lg-page .side{min-width:0}.lg-page .side-panel{flex-direction:column;gap:.75rem;display:flex}.lg-page .sub-card{background:#ffffff80;border:1px solid #ffffffbf;border-radius:1rem;flex-direction:column;gap:.7rem;min-width:0;padding:1rem 1.1rem;display:flex}.lg-page .side-title,.lg-page .task-title,.lg-page .row-title{letter-spacing:-.02em;margin:0;font-size:.95rem;font-weight:700}.lg-page .task-title{font-size:1.15rem}.lg-page .side-title:before{content:"";background:var(--accent,#cae650);border-radius:50%;width:9px;height:9px;margin-right:.5rem;display:inline-block;box-shadow:0 0 0 1.5px #1a201680}.lg-page .side-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.lg-page .count{font-family:var(--font-mono);color:var(--color-text-muted);font-size:.74rem}.lg-page .field-hint,.lg-page .muted{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.5}.lg-page .facts{color:var(--color-text-secondary);margin:0;font-size:.85rem;line-height:1.65}.lg-page .facts b{color:var(--color-text-primary)}.lg-page code{font-family:var(--font-mono);background:#1a201612;border-radius:5px;padding:.05rem .35rem;font-size:.8em}.lg-page .grow{flex:1}.lg-page .btn{font:inherit;color:var(--color-text-primary);background:var(--glass-bg-medium);border:1px solid var(--glass-border);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-size:.83rem;font-weight:600;transition:transform .2s,background .2s,opacity .2s;display:inline-flex;box-shadow:0 2px 8px #1a20160d}.lg-page .btn:hover:not(:disabled){background:var(--glass-bg-strong);transform:translateY(-1px)}.lg-page .btn.primary{background:var(--color-text-primary);color:var(--color-text-light);border-color:var(--color-text-primary)}.lg-page .btn.primary:hover:not(:disabled){background:#2b3624}.lg-page .btn.small{padding:.38rem .85rem;font-size:.78rem}.lg-page .btn:disabled,.lg-page .icon-btn:disabled{opacity:.4;cursor:not-allowed}.lg-page .icon-btn{width:38px;height:38px;color:var(--color-text-primary);background:var(--glass-bg-medium);border:1px solid var(--glass-border);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,background .2s;display:inline-flex}.lg-page .icon-btn:hover:not(:disabled){background:var(--glass-bg-strong);transform:translateY(-1px)}.lg-page .btn-row,.lg-page .action-row,.lg-page .transport,.lg-page .value-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.lg-page .transport{justify-content:center}.lg-page button:focus-visible,.lg-page input:focus-visible,.lg-page select:focus-visible,.lg-page summary:focus-visible,.lg-page a:focus-visible{outline:2px solid var(--color-text-primary);outline-offset:2px}.lg-page .f-input{border:1px solid var(--glass-border);width:100%;min-width:0;font-family:var(--font-formula);color:var(--color-text-primary);background:#ffffffe6;border-radius:.9rem;padding:.6rem .95rem;font-size:.95rem}.lg-page .f-input.is-bad{border-color:#e3a58f;box-shadow:0 0 0 2px #fbe3da}.lg-page .inline-form{gap:.5rem;display:flex}.lg-page .parse-msg{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.45}.lg-page .parse-msg.bad{color:#9a3517}.lg-page .parse-msg.good{color:#2f5a27}.lg-page .keypad{flex-wrap:wrap;gap:.3rem;display:flex}.lg-page .keypad button{border:1px solid var(--glass-border);min-width:2.2rem;height:2.15rem;font-family:var(--font-formula);color:var(--color-text-primary);cursor:pointer;background:#ffffffd9;border-radius:.6rem;padding:0 .55rem;font-size:.95rem;font-weight:700}.lg-page .keypad button:hover{background:#fff}.lg-page .keypad button.wide{font-family:var(--font-primary);font-size:.76rem;font-weight:600}.lg-page .stepper{border:1px solid var(--glass-border);background:#ffffffd9;border-radius:999px;align-items:center;padding:2px;display:inline-flex}.lg-page .stepper button{width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.1rem;font-weight:600}.lg-page .stepper button:hover{background:#1a201612}.lg-page .stepper input{text-align:center;width:3.2rem;font:inherit;color:var(--color-text-primary);-moz-appearance:textfield;background:0 0;border:0;font-size:1rem;font-weight:700}.lg-page .stepper input::-webkit-outer-spin-button,.lg-page .stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lg-page .select-row{align-items:center;gap:.6rem;display:flex}.lg-page .select-row label{color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.lg-page .select-row select{-webkit-appearance:none;appearance:none;border:1px solid var(--glass-border);min-width:0;font:inherit;color:var(--color-text-primary);cursor:pointer;background:#ffffffd9 url("data:image/svg+xml;utf8,<svg fill=\"%231a2016\" height=\"12\" viewBox=\"0 0 24 24\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M7 10l5 5 5-5z\"/></svg>") right .8rem center no-repeat;border-radius:999px;flex:1;padding:.5rem 2.1rem .5rem 1rem;font-size:.83rem;font-weight:500}.lg-page .range{width:100%;accent-color:var(--color-text-primary);cursor:pointer;margin:.15rem 0}.lg-page .speed-row{color:var(--color-text-secondary);align-items:center;gap:.7rem;font-size:.8rem;font-weight:600;display:flex}.lg-page .speed-row output{font-family:var(--font-mono);text-align:right;min-width:2.6rem;font-size:.75rem}.lg-page .switch-row{cursor:pointer;align-items:center;gap:.65rem;display:flex}.lg-page .switch-row input{opacity:0;pointer-events:none;position:absolute}.lg-page .switch{background:#1a20162e;border-radius:999px;flex-shrink:0;width:40px;height:24px;transition:background .2s;position:relative}.lg-page .switch:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.lg-page .switch-row input:checked+.switch{background:var(--color-text-primary)}.lg-page .switch-row input:checked+.switch:after{transform:translate(16px)}.lg-page .switch-text{flex-direction:column;font-size:.85rem;display:flex}.lg-page .switch-text small{color:var(--color-text-muted);font-size:.75rem;line-height:1.4}.lg-page .side-panel[data-submode=auto] .only-step,.lg-page .side-panel[data-submode=step] .only-auto{display:none}.lg-page .chip-row{flex-wrap:wrap;gap:.4rem;display:flex}.lg-page .chip{font:inherit;cursor:pointer;color:var(--color-text-primary);background:color-mix(in srgb, var(--c,#fff) 30%, #fff);border:1px solid color-mix(in srgb, var(--c,#dfe3da) 80%, #fff);border-radius:999px;padding:.34rem .8rem;font-size:.78rem;font-weight:600;transition:background .2s,transform .15s}.lg-page .chip:hover{background:var(--c,#fff);transform:translateY(-1px)}.lg-page .chip[aria-pressed=true]{background:var(--c,#fff);border-color:#1a2016;font-weight:700;box-shadow:0 0 0 1px #1a2016}.lg-page .chip.c-lime{--c:#cae650}.lg-page .chip.c-lav{--c:#cdbfff}.lg-page .chip.c-coral{--c:#ffb4a2}.lg-page .chip.c-sky{--c:#9bd6f5}.lg-page .chip.c-mint{--c:#8ee3c4}.lg-page .chip.c-sun{--c:#ffd36e}.lg-page .narr-msg{color:var(--color-text-primary);min-height:4.6em;margin:0;font-size:.92rem;line-height:1.62}.lg-page .lesson-title{letter-spacing:-.025em;margin:0;font-size:1.2rem;font-weight:700}.lg-page .lesson-body{color:var(--color-text-secondary);font-size:.92rem;line-height:1.65}.lg-page .lesson-body p{margin:0 0 .65rem}.lg-page .lesson-body b{color:var(--color-text-primary)}.lg-page .lesson-body ul{margin:0 0 .65rem;padding-left:1.15rem}.lg-page .lesson-body li{margin-bottom:.3rem}.lg-page .lesson-body .try{color:#3d4a1a;background:#f6fadf;border:1px solid #dcea9a;border-radius:.8rem;margin:0 0 .65rem;padding:.55rem .8rem;font-size:.86rem}.lg-page .lesson-body .try b{color:#2b3412}.lg-page .lesson-body .big{text-align:center;color:var(--color-text-primary);font-family:var(--font-formula);background:#ffffffbf;border:1px solid #fffffff2;border-radius:.8rem;margin:0 0 .65rem;padding:.6rem .85rem;font-size:.9rem;font-weight:600;line-height:1.7;overflow-x:auto}.lg-page .lesson-body table.mini{border-collapse:collapse;width:100%;margin:0 0 .7rem;font-size:.82rem}.lg-page .lesson-body table.mini th,.lg-page .lesson-body table.mini td{text-align:left;vertical-align:top;border-bottom:1px solid #1a20161a;padding:.32rem .4rem}.lg-page .lesson-body table.mini th{color:var(--color-text-muted);font-size:.74rem;font-weight:700}.lg-page .lesson-body table.mini td.c{text-align:center;font-family:var(--font-formula)}.lg-page .lesson-body .load-row{flex-wrap:wrap;gap:.35rem;margin:0 0 .65rem;display:flex}.lg-page .lesson-body .kinds{text-align:center;grid-template-columns:repeat(3,1fr);gap:.35rem;margin:0 0 .65rem;font-size:.78rem;display:grid}.lg-page .lesson-body .kinds div{background:#fff;border:1px solid #1a20161f;border-radius:.7rem;padding:.5rem .3rem}.lg-page .lesson-body .kinds b{font-size:.86rem;display:block}.lg-page .lesson-body .kinds .on{border-color:var(--lit-edge);background:#fff6d6}.lg-page .lesson-body .kinds .half{background:linear-gradient(90deg,#fff 50%,#fff6d6 50%)}.lg-page .lesson-body .brackets{text-align:center;grid-template-columns:repeat(3,1fr);margin:-.35rem 0 .65rem;font-size:.72rem;font-weight:700;display:grid}.lg-page .lesson-body .brackets span{padding-top:.2rem}.lg-page .lesson-body .brackets .sat{border-top:2.5px solid var(--lit-edge);color:var(--lit-ink);grid-column:2/4}.lg-page .lesson-body .brackets .ref{color:#5e6d57;border-top:2.5px solid #8a9484;grid-area:2/1/auto/3;margin-top:.3rem}.lg-page .step-dots{flex-wrap:wrap;gap:.35rem;display:flex}.lg-page .step-dots button{cursor:pointer;background:0 0;border:1.5px solid #1a2016;border-radius:50%;width:11px;height:11px;padding:0}.lg-page .step-dots button.is-current{background:#1a2016}.lg-page .step-dots button.is-past{background:#cae650}.lg-page .mini-q{background:#ffffffb8;border:1.5px dashed #1a20162e;border-radius:.9rem;margin:0 0 .7rem;padding:.7rem .8rem}.lg-page .mini-q>p:first-child{color:var(--color-text-primary);margin:0 0 .45rem;font-weight:600}.lg-page .mq-opts{flex-wrap:wrap;gap:.35rem;display:flex}.lg-page .mq-opts button{font:inherit;color:var(--color-text-primary);cursor:pointer;background:#fff;border:1px solid #1a201629;border-radius:999px;padding:.36rem .85rem;font-size:.82rem;font-weight:600}.lg-page .mq-opts button.right{background:#dcefd3;border-color:#3f7d34}.lg-page .mq-opts button.wrong{background:#fbe3da;border-color:#b4472a}.lg-page .mq-why{font-size:.84rem;margin:.45rem 0 0!important}.lg-page .slider-box{background:#ffffffbf;border:1px solid #fffffff2;border-radius:.9rem;flex-direction:column;gap:.5rem;margin:0 0 .65rem;padding:.7rem .8rem;display:flex}.lg-page .bars{flex-direction:column;gap:.35rem;display:flex}.lg-page .bar{grid-template-columns:5.2rem 1fr 3rem;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;display:grid}.lg-page .bar .track{background:#1a201612;border-radius:999px;height:12px;display:block;overflow:hidden}.lg-page .bar .fill{background:#ffb4a2;border-radius:999px;height:100%;transition:width .3s;display:block}.lg-page .bar .fill.ts{background:#cdbfff}.lg-page .bar output{font-family:var(--font-mono);text-align:right}.lg-page .rule-pick{flex-wrap:wrap;gap:.3rem;margin:0 0 .55rem;display:flex}.lg-page .rule-pick button{font:inherit;font-family:var(--font-formula);cursor:pointer;background:#fff;border:1px solid #1a201629;border-radius:.6rem;min-width:2.4rem;padding:.3rem .6rem;font-size:.9rem;font-weight:700}.lg-page .rule-pick button[aria-pressed=true]{background:var(--color-text-primary);color:var(--color-text-light)}.lg-page .rules-out{flex-direction:column;gap:.35rem;margin:0 0 .65rem;display:flex}.lg-page .rules-out div{background:#fff;border:1px solid #1a20161a;border-radius:.7rem;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:.6rem;padding:.4rem .6rem;font-size:.82rem;display:grid}.lg-page .rules-out span:first-child{color:var(--color-text-secondary)}.lg-page .task-prompt{color:var(--color-text-secondary);margin:0;font-size:.92rem;line-height:1.6}.lg-page .options{flex-direction:column;gap:.45rem;display:flex}.lg-page .options button{text-align:left;font:inherit;cursor:pointer;color:var(--color-text-primary);border:1px solid var(--glass-border);background:#ffffffb8;border-radius:.85rem;align-items:flex-start;gap:.6rem;padding:.7rem 1rem;font-size:.86rem;font-weight:600;transition:background .2s,border-color .2s;display:flex}.lg-page .options button:hover:not(:disabled){background:#fff}.lg-page .options button[aria-checked=true]{border-color:var(--color-text-primary);box-shadow:inset 0 0 0 1px var(--color-text-primary);background:#fff}.lg-page .options button.right{background:#e1efdb;border-color:#8fba7e}.lg-page .options button.wrong{background:#fdeee7;border-color:#e3a58f}.lg-page .options.multi button:before{content:"";background:#fff;border:1.8px solid #1a201673;border-radius:4px;flex-shrink:0;width:15px;height:15px;margin-top:.1rem}.lg-page .options.multi button[aria-checked=true]:before{background:var(--color-text-primary) url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"white\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"/></svg>") center / 11px no-repeat;border-color:var(--color-text-primary)}.lg-page .options.multi button.missed{border-style:dashed;border-color:#8fba7e}.lg-page .options.grid{grid-template-columns:1fr 1fr;display:grid}.lg-page .match-rows{flex-direction:column;gap:.6rem;display:flex}.lg-page .match-row{border:1px solid var(--glass-border);background:#ffffffb3;border-radius:.85rem;flex-direction:column;gap:.4rem;padding:.65rem .75rem;display:flex}.lg-page .match-row .ml{color:var(--color-text-primary);font-size:.86rem;font-weight:600;line-height:1.5}.lg-page .match-row select{-webkit-appearance:none;appearance:none;width:100%;font:inherit;color:var(--color-text-primary);cursor:pointer;background:#fff url("data:image/svg+xml;utf8,<svg fill=\"%231a2016\" height=\"12\" viewBox=\"0 0 24 24\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M7 10l5 5 5-5z\"/></svg>") right .7rem center no-repeat;border:1px solid #1a201633;border-radius:.6rem;padding:.45rem 2rem .45rem .7rem;font-size:.84rem}.lg-page .match-row.right{background:#e8f3e2;border-color:#b4d3a6}.lg-page .match-row.wrong{background:#fdeee7;border-color:#f0c5b5}.lg-page .match-row .mfix{color:#2f5a27;font-size:.8rem;font-weight:600}.lg-page .result{border:1px solid;border-radius:1rem;padding:.9rem 1.1rem;font-size:.86rem;line-height:1.55}.lg-page .result strong{margin-bottom:.2rem;font-size:.95rem;display:block}.lg-page .result p{margin:.25rem 0 0}.lg-page .result.good{color:#2a4d22;background:#e8f3e2;border-color:#b4d3a6}.lg-page .result.almost{color:#5c4a0a;background:#f8f1d8;border-color:#e3d28d}.lg-page .result.wrong{color:#8a3014;background:#fdeee7;border-color:#f0c5b5}.lg-page .result.info{color:var(--color-text-primary);background:#ffffffa6;border-color:#ffffffe6}.lg-page .hints ol{color:var(--color-text-secondary);flex-direction:column;gap:.5rem;margin:0;padding-left:1.15rem;font-size:.85rem;line-height:1.55;display:flex}.lg-page .qdots{flex-wrap:wrap;gap:.35rem;display:flex}.lg-page .qdots i{border:1.5px solid #1a201659;border-radius:50%;width:14px;height:14px}.lg-page .qdots i.solved{background:#7cc36a;border-color:#2f5a27}.lg-page .qdots i.missed{background:#f0907a;border-color:#9a3517}.lg-page .qdots i.revealed{background:#f3cf6a;border-color:#7a5a0a}.lg-page .qdots i.skipped{background:#cfd4c9;border-color:#5e6d57}.lg-page .qdots i.current{background:#fff;border-width:2.5px;border-color:#1a2016}.lg-page .summary .score{letter-spacing:-.04em;margin:0;font-size:2.2rem;font-weight:700}.lg-page .mistakes{font-family:var(--font-mono);color:#9a3517;background:#fdeee7;border-radius:999px;padding:.15rem .55rem;font-size:.74rem;font-weight:700}.lg-page .mistakes.zero{color:#2f5a27;background:#eef7e9}.lg-page .work-card{background:#ffffff80;border:1px solid #ffffffbf;border-radius:1rem;flex-direction:column;gap:.6rem;padding:1rem 1.15rem;display:flex}.lg-page .work-scroll{max-height:300px;overflow:auto}.lg-page .dt{border-collapse:collapse;width:100%;font-size:.84rem}.lg-page .dt th{text-align:left;color:var(--color-text-muted);background:#f6f7f2;border-bottom:1.5px solid #1a201624;padding:.35rem .6rem;font-size:.72rem;font-weight:700;position:sticky;top:0}.lg-page .dt td{vertical-align:top;font-family:var(--font-formula);color:var(--color-text-primary);border-bottom:1px solid #1a201612;padding:.45rem .6rem;font-size:.84rem}.lg-page .dt td.word{font-family:var(--font-primary);color:var(--color-text-muted);white-space:nowrap;font-size:.78rem;font-weight:700}.lg-page .dt td .tag{background:var(--fresh);border:1.5px solid var(--fresh-edge);color:#46297a;border-radius:6px;padding:.05rem .45rem;font-weight:700;display:inline-block}.lg-page .dt tr.is-new td,.lg-page .dt tr.is-cur td{background:#cae65033}.lg-page .dt tr.final td{font-family:var(--font-primary);background:#f6fadf;font-weight:600}.lg-page .lg-rules{padding:1rem 1.4rem}.lg-page .lg-rules summary{cursor:pointer;letter-spacing:-.02em;font-size:.95rem;font-weight:700;list-style-position:inside}.lg-page .rules-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1rem;display:grid}.lg-page .rules-grid h3{margin:0 0 .35rem;font-size:.88rem}.lg-page .rules-grid p{color:var(--color-text-secondary);margin:0;font-size:.86rem;line-height:1.65}.lg-page .rules-grid b{color:var(--color-text-primary)}.lg-page .hash-row{flex-wrap:wrap;gap:.35rem .9rem;margin-bottom:.9rem;display:flex}.lg-page .hash{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:.8rem;font-weight:700}.lg-page .hash.h-teal{color:#0f766e}.lg-page .hash.h-violet{color:#6d3fc4}.lg-page .hash.h-coral{color:#c2410c}.lg-page .hash.h-blue{color:#1d5fa8}.lg-page .hash.h-green{color:#2a7a2e}.lg-page .hash.h-amber{color:#a16207}.lg-page .hash.h-gray{color:#5e6d57}.lg-page .hash.h-pink{color:#b4237a}.lg-page .hash.h-red{color:#b4231a}@media (width<=1020px){.lg-page .lg-grid{grid-template-columns:1fr}.lg-page .stage{height:500px;min-height:500px}.lg-page .rules-grid{grid-template-columns:1fr;gap:1rem}}@media (width<=560px){.lg-page .lg-panel{padding:.75rem}.lg-page .stage{height:460px;min-height:460px}.lg-page #mode-tabs button{padding:.5rem .65rem}.lg-page #mode-tabs .tdot{margin-right:.3rem}.lg-page .formula-line{font-size:.86rem}.lg-page .options.grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.lg-page *{transition:none!important;animation:none!important}}
