:root{--board:#2d4a3e;--board-deep:#24392f;--card:#27423a;--card-lift:#315a4c;--line:#3f6a5a;--chalk:#f5f2e8;--chalk-sub:#b8c4b4;--chalk-dim:#5a7a6c;--acc:#ffe066;--jia:#7fb3e8;--yi:#f5b95e;--wrong:#e4574f;--ok-bg:#3a6a52;--bad-bg:#4a2f2c;--fs-hero:26px;--fs-h1:22px;--fs-h2:18px;--fs-lead:17px;--fs-body:16px;--fs-sub:13px;--fs-tag:12px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--r-card:16px;--r-btn:12px;--r-pill:20px;--font:"Microsoft YaHei","PingFang SC","Noto Sans SC",sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--board);color:var(--chalk);font-family:var(--font)}button{font-family:var(--font)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@keyframes vertical-pop-in{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}.retry-tag,.teach-tag{color:var(--acc);border-color:var(--acc);font-weight:700}@keyframes drawX{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes charIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes popIn{0%{opacity:0;transform:scale(.6)}55%{opacity:1;transform:scale(1.16)}to{opacity:1;transform:scale(1)}}@keyframes dropDown{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes meetPulse{0%{r:5;opacity:.85}to{r:26;opacity:0}}.dim-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:.45s cubic-bezier(.3,.7,.3,1) 50ms forwards drawX}.dim-caps{opacity:0;animation:.22s ease-out .42s forwards fadeIn}.fade-in{animation:.45s ease-out both fadeIn}.fade-in-up{animation:.4s ease-out both fadeInUp}.pop-in{transform-box:fill-box;transform-origin:50%;animation:.5s cubic-bezier(.25,1,.4,1) both popIn}.vline-drop{transform-box:fill-box;transform-origin:top;animation:.4s cubic-bezier(.3,.7,.3,1) both dropDown}.meet-pulse{animation:.8s ease-out 2 meetPulse}@media (prefers-reduced-motion:reduce){.dim-line,.dim-caps,.fade-in,.fade-in-up,.pop-in,.vline-drop,.meet-pulse{animation-duration:10ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.char{animation-duration:10ms!important;animation-delay:0s!important}}@media (max-width:720px){.tool-grid{grid-template-columns:1fr}}.quiz{gap:var(--s3);flex-direction:column;display:flex}.quiz-step-label{font-size:var(--fs-tag);color:var(--chalk-sub);margin-bottom:-6px}.dots{gap:7px;margin:2px 0 6px;display:flex}.dot{background:#6b8c7d;border-radius:50%;width:9px;height:9px;transition:background .25s,transform .25s}.dot.on{background:var(--acc);transform:scale(1.25)}.svgbox{background:var(--board-deep);border-radius:var(--r-btn);padding:8px 6px}.vertical-pop{background:var(--card-lift);border:1px solid var(--line);border-radius:var(--r-btn);width:210px;max-width:62%;margin:-2px 4px 0 auto;padding:7px 12px 2px;animation:.28s ease-out vertical-pop-in;box-shadow:0 3px 12px #00000029}.vertical-pop .vtitle{font-size:var(--fs-tag);color:var(--chalk-sub);justify-content:space-between;align-items:center;display:flex}.vertical-close{color:var(--chalk-dim);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px;line-height:1}.vertical-reopen{font-size:var(--fs-tag);border:1px solid var(--chalk-dim);border-radius:var(--r-pill);color:var(--chalk-sub);cursor:pointer;background:0 0;margin-top:10px;padding:7px 14px}.card{background:var(--card);border-radius:var(--r-card);padding:var(--s4);box-shadow:0 4px 18px #0000002e}.tag{font-size:var(--fs-tag);color:var(--chalk);border:1px solid var(--chalk-dim);border-radius:var(--r-pill);margin-bottom:10px;padding:2px 10px;display:inline-block}.stmt{font-size:var(--fs-lead);line-height:1.75}.say{font-size:var(--fs-h2);font-weight:600;line-height:1.7}.opts{flex-direction:column;gap:10px;margin-top:14px;display:flex}.opt{background:var(--card-lift);border:2px solid var(--line);color:var(--chalk);font-size:var(--fs-body);border-radius:var(--r-btn);cursor:pointer;text-align:left;min-height:52px;padding:14px;transition:all .2s}.opt:active{transform:scale(.98)}.opt:disabled{cursor:default}.opt.right{border-color:var(--acc);background:var(--ok-bg);font-weight:700}.opt.bad{border-color:var(--wrong);opacity:.85}.fb{color:var(--acc);margin-top:12px;font-size:14px;line-height:1.6}.ans{color:var(--acc);text-align:center;margin-top:12px;font-size:24px;font-weight:800}.ans .calc{font-size:var(--fs-body);color:var(--chalk-sub);margin-top:6px;font-weight:400;display:block}.sol{word-break:break-all;overflow-wrap:anywhere;font-size:15px;line-height:2}.sol b{color:var(--acc)}.btn{background:var(--acc);width:100%;color:var(--board);font-size:var(--fs-lead);border-radius:var(--r-btn);margin-top:var(--s3);cursor:pointer;border:none;padding:15px;font-weight:700;text-decoration:none;display:block}.btn:active{transform:scale(.98)}.btn:disabled{background:var(--chalk-dim);color:var(--board-deep);cursor:default}.btn.ghost{color:var(--chalk-sub);border:1.5px solid var(--chalk-dim);background:0 0;font-weight:400}.l3{padding:6px 0}.l3 .lab{font-size:var(--fs-sub);color:var(--chalk-sub);justify-content:space-between;margin-bottom:12px;display:flex}.l3 .lab b{color:var(--chalk)}.ratio-bar{border-radius:var(--r-btn);border:1.5px solid var(--line);height:34px;margin-bottom:6px;display:flex;overflow:hidden}.ratio-bar .seg{font-size:var(--fs-tag);color:var(--board-deep);white-space:nowrap;justify-content:center;align-items:center;font-weight:700;transition:width .15s;display:flex;overflow:hidden}.ratio-bar .seg.jia{background:var(--acc)}.ratio-bar .seg.yi{background:var(--chalk-dim)}.scrub-row{align-items:center;gap:12px;display:flex}.scrub-label{font-size:var(--fs-tag);color:var(--chalk-sub);text-align:right;min-width:64px}.chalk-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;touch-action:pan-y;background:0 0;width:100%;height:44px;margin:0}.chalk-slider::-webkit-slider-runnable-track{background:var(--chalk-dim);border-radius:3px;height:6px}.chalk-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--acc);border:4px solid var(--board-deep);border-radius:50%;width:34px;height:34px;margin-top:-14px;box-shadow:0 2px 8px #0006}.chalk-slider::-moz-range-track{background:var(--chalk-dim);border-radius:3px;height:6px}.chalk-slider::-moz-range-thumb{background:var(--acc);border:4px solid var(--board-deep);border-radius:50%;width:26px;height:26px}.ai-mask{z-index:50;background:#00000080;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.ai-sheet{background:var(--card);width:100%;max-width:560px;padding:var(--s3) var(--s4) calc(var(--s4) + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;flex-direction:column;max-height:78vh;margin:0 auto;display:flex}.ai-head{padding:var(--s1) 0 var(--s3);justify-content:space-between;align-items:center;display:flex}.ai-title{color:var(--acc);font-size:15px;font-weight:700}.ai-close{border:1.5px solid var(--line);width:36px;height:36px;color:var(--chalk-sub);cursor:pointer;background:0 0;border-radius:50%;font-size:14px}.ai-list{padding:var(--s2) 0;flex-direction:column;flex:1;gap:10px;min-height:140px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;border-radius:14px;max-width:82%;padding:11px 13px;font-size:14px;line-height:1.7}.bubble.ai{background:var(--card-lift);border-top-left-radius:4px;align-self:flex-start}.bubble.me{background:var(--acc);color:var(--board);border-top-right-radius:4px;align-self:flex-end;font-weight:600}.qreplies{padding:var(--s1) 0;flex-wrap:wrap;gap:8px;display:flex}.qreply{border:1.5px solid var(--yi);color:var(--yi);border-radius:var(--r-pill);cursor:pointer;background:0 0;padding:7px 13px;font-size:13px}.qreply:disabled{opacity:.4}.chatbar{margin-top:var(--s2);gap:8px;display:flex}.chatbar input{background:var(--board-deep);border:1.5px solid var(--line);border-radius:var(--r-btn);color:var(--chalk);font-size:15px;font-family:var(--font);flex:1;padding:12px}.chatbar input:focus{border-color:var(--acc);outline:none}.chatbar .btn{width:auto;margin:0;padding:0 18px}.topbar{margin-bottom:var(--s4);align-items:center;gap:10px;display:flex}.back{background:var(--card);width:44px;height:44px;color:var(--chalk);cursor:pointer;border:1.5px solid #7a978a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:24px;font-weight:700;line-height:1;text-decoration:none;display:flex}.topbar .tt{font-size:var(--fs-h2);flex:1;font-weight:700}.wrap{width:100%;max-width:560px;margin:0 auto;padding:18px 16px 110px}.footer-note{text-align:center;font-size:var(--fs-tag);color:var(--chalk-dim);padding:var(--s6) 0;line-height:1.8}.hintbox{flex-direction:column;gap:8px;display:flex}.hintlv{background:var(--card);border:1.5px dashed var(--chalk-dim);border-radius:var(--r-card);color:var(--chalk);padding:10px 14px;font-size:14px;line-height:1.7}.hintlv .hno{font-size:var(--fs-tag);color:var(--board);background:var(--acc);border-radius:var(--r-pill);margin-right:8px;padding:1px 9px;font-weight:700;display:inline-block;transform:translateY(-1px)}.assist-row{gap:8px;display:flex}.assist-row .btn{flex:1;margin-top:0;padding:11px;font-size:14px}.replay-banner{border:1.5px dashed var(--acc);color:var(--chalk);font-size:14px;line-height:1.7}.replay-banner b{color:var(--acc)}.retry-tag,.teach-tag{color:var(--acc);border-color:var(--acc);font-weight:700}.drill-tag{color:var(--chalk-sub);border-color:var(--chalk-dim);font-weight:600}.skip-anim{margin-top:-4px;padding:9px;font-size:14px}.answer-row{align-items:center;gap:10px;margin-top:14px;display:flex}.answer-input{background:var(--board-deep);border:2px solid var(--line);border-radius:var(--r-btn);min-width:0;color:var(--chalk);font-size:20px;font-weight:700;font-family:var(--font);flex:1;padding:12px 14px}.answer-input:focus{border-color:var(--acc);outline:none}.answer-input::placeholder{color:var(--chalk-dim);font-size:14px;font-weight:400}.answer-unit{min-width:32px;font-size:var(--fs-body);color:var(--chalk-sub)}.ask-actions{gap:8px;display:flex}.ask-actions .btn{flex:1;margin-top:10px}.fb.ok{color:var(--acc)}.fb.bad{color:var(--wrong)}.qmini .st.na{background:var(--chalk-dim);color:var(--board-deep)}.brandrow{margin-bottom:var(--s5);align-items:center;gap:10px;display:flex}.badge{background:var(--acc);color:var(--board);border-radius:var(--r-pill);letter-spacing:.5px;padding:4px 12px;font-size:14px;font-weight:800}.brandrow>span:not(.badge){color:var(--chalk);opacity:.92;font-size:13.5px}.hero-t{font-size:var(--fs-hero);letter-spacing:.5px;font-weight:800;line-height:1.35}.hero-t em{color:var(--acc);-webkit-text-decoration:underline wavy var(--yi);text-decoration:underline wavy var(--yi);text-underline-offset:6px;font-style:normal;text-decoration-thickness:2px}.hero-s{font-size:var(--fs-sub);color:var(--chalk-sub);margin-top:10px;line-height:1.8}.placeholder{border:2px dashed var(--chalk-dim);border-radius:var(--r-btn);text-align:center;color:var(--chalk-dim);font-size:var(--fs-sub);margin:var(--s3) 0;padding:26px 12px;line-height:1.7}.placeholder b{color:var(--chalk-sub)}.grid5{margin:var(--s2) 0 var(--s3);grid-template-columns:1fr 1fr;gap:10px;display:grid}.grid5 .card{margin:0;padding:14px}.grid5 .ic{background:var(--card-lift);border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:8px;font-size:20px;display:flex}.grid5 .nm{font-size:15px;font-weight:700}.grid5 .ct{font-size:var(--fs-tag);color:var(--chalk-sub);margin-top:3px}.vlist{flex-direction:column;gap:10px;display:flex}.vitem{font-size:var(--fs-body);gap:10px;line-height:1.6;display:flex}.vitem .n{background:var(--card-lift);width:22px;height:22px;color:var(--acc);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:13px;font-weight:700;display:flex}details{border-bottom:1px solid var(--line);padding:12px 2px}details summary{font-size:var(--fs-body);cursor:pointer;justify-content:space-between;align-items:center;font-weight:600;list-style:none;display:flex}details summary:after{content:"+";color:var(--acc);font-size:18px}details[open] summary:after{content:"–"}details p{font-size:var(--fs-sub);color:var(--chalk-sub);padding-top:8px;line-height:1.8}.pricebox{text-align:center;padding:var(--s5) var(--s4)}.pricebox .now{color:var(--acc);font-size:44px;font-weight:800}.pricebox .lim{font-size:var(--fs-sub);color:var(--chalk-sub);margin-top:6px}.checklist{margin:var(--s3) 0;text-align:left;flex-direction:column;gap:12px;display:flex}.codewrap{margin:var(--s4) 0 var(--s2);justify-content:center;gap:8px;display:flex}.code-cell{background:var(--board-deep);border:2px solid var(--line);width:46px;height:56px;color:var(--chalk);border-radius:10px;justify-content:center;align-items:center;font-size:24px;font-weight:800;display:flex}.code-cell.f{border-color:var(--acc);color:var(--acc)}.phone-input{background:var(--board-deep);border:2px solid var(--line);width:100%;height:56px;color:var(--chalk);letter-spacing:2px;font-size:18px;font-family:var(--font);border-radius:10px;padding:0 14px}.phone-input:focus{border-color:var(--acc);outline:none}.errmsg{background:var(--bad-bg);border:1.5px solid var(--wrong);color:var(--wrong);border-radius:var(--r-btn);font-size:var(--fs-sub);margin-top:var(--s3);padding:12px;line-height:1.6}.okmsg{background:var(--ok-bg);border:1.5px solid var(--acc);color:var(--acc);border-radius:var(--r-btn);font-size:var(--fs-sub);margin-top:var(--s3);padding:12px;line-height:1.6}.prog{margin-bottom:var(--s4);align-items:center;gap:10px;display:flex}.prog .bar{background:var(--chalk-dim);border-radius:4px;flex:1;height:8px;overflow:hidden}.prog .bar i{background:var(--acc);border-radius:4px;height:100%;display:block}.prog span{font-size:var(--fs-sub);color:var(--chalk-sub)}.groupcard{margin-bottom:var(--s3)}.groupcard .gh{align-items:center;gap:10px;margin-bottom:12px;display:flex}.groupcard .gh .nm{font-size:var(--fs-lead);flex:1;font-weight:700}.groupcard .gh .go{font-size:var(--fs-tag);color:var(--acc);border:1.5px solid var(--acc);border-radius:var(--r-pill);padding:4px 12px}.qgrid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.qcell{aspect-ratio:1;background:var(--card-lift);border:1.5px solid var(--line);color:var(--chalk-sub);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-height:44px;font-size:13px;display:flex}.qcell.ok{background:var(--ok-bg);color:var(--acc);border-color:var(--ok-bg)}.qcell.no{border-color:var(--wrong);color:var(--wrong)}.qcell.cur{border-color:var(--acc);color:var(--chalk);border-width:2px}.qmini{border-bottom:1px solid var(--line);font-size:var(--fs-sub);align-items:center;gap:10px;padding:10px 0;display:flex}.qmini:last-child{border-bottom:none}.qmini .st{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:flex}.st.ok{background:var(--ok-bg);color:var(--acc)}.st.no{background:var(--bad-bg);color:var(--wrong)}.result-row{justify-content:center;align-items:center;gap:14px;margin:10px 0 4px;display:flex}.rnum{color:var(--acc);font-size:40px;font-weight:800}.rsep{color:var(--chalk-dim);font-size:24px}.wrongrow{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:12px 0;display:flex}.wrongrow:last-child{border-bottom:none}.wrongrow .info{flex:1}.wrongrow .qt{font-size:var(--fs-tag);color:var(--chalk-sub);margin-bottom:3px}.wrongrow .stem{font-size:14px;line-height:1.6}.wrongrow .why{font-size:var(--fs-tag);color:var(--wrong);margin-top:3px}.wrongrow .re{border:1.5px solid var(--acc);color:var(--acc);font-size:var(--fs-tag);border-radius:var(--r-pill);cursor:pointer;background:0 0;flex-shrink:0;margin-top:4px;padding:6px 12px}.mrow{margin-bottom:12px}.mrow .ml{font-size:var(--fs-sub);justify-content:space-between;margin-bottom:5px;display:flex}.mrow .ml b{color:var(--chalk)}.mbar{background:var(--chalk-dim);border-radius:5px;height:10px;overflow:hidden}.mbar i{background:var(--acc);border-radius:5px;height:100%;display:block}.mbar i.low{background:var(--yi)}.mbar i.bad{background:var(--wrong)}.cat-legend{color:var(--chalk-sub);flex-wrap:wrap;align-items:center;gap:14px;margin-top:10px;font-size:12px;display:flex}.cat-legend .st{vertical-align:-1px;border-radius:50%;width:9px;height:9px;margin-right:4px;display:inline-block}.cat-head{font-size:var(--fs-tag);color:var(--chalk-sub);margin-bottom:6px;font-weight:700}.cat-ic{margin-right:6px}.cat-types{flex-wrap:wrap;gap:8px;display:flex}.cat-chip{background:var(--card);border:1.5px solid var(--line);border-radius:var(--r-pill);align-items:center;gap:6px;padding:7px 12px;font-size:13px;display:flex}.cat-chip b{color:var(--chalk)}.cat-chip i{color:var(--chalk-sub);font-size:12px;font-style:normal}.cat-chip em{border-radius:var(--r-pill);padding:1px 8px;font-size:11px;font-style:normal}.cat-chip.live{border-color:var(--acc)}.cat-chip.live em{background:var(--acc);color:var(--board-deep);font-weight:700}.cat-chip.soon em{border:1px solid var(--chalk-sub);color:var(--chalk-sub)}.cat-chip.v2{opacity:.55}.cat-chip.v2 em{color:var(--chalk-dim)}.st.live{background:var(--acc)}.st.soon{background:var(--chalk-sub)}.st.v2{background:var(--chalk-dim)}.cat-group{margin-bottom:10px}.cat-head{font-size:var(--fs-tag);color:var(--chalk-sub);align-items:center;gap:8px;padding:2px 4px 8px;font-weight:700;display:flex}.cat-count{margin-left:auto;font-weight:400}.cat-row{border-top:1px dashed var(--line);grid-template-columns:minmax(108px,auto) 1fr auto;align-items:center;gap:10px;padding:9px 4px;display:grid}.cat-row:first-child{border-top:none}.cat-row b{color:var(--chalk);font-size:14px}.cat-row i{color:var(--chalk-sub);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-style:normal;overflow:hidden}.cat-row.live b{color:var(--acc)}.st-pill{border-radius:var(--r-pill);white-space:nowrap;padding:1px 8px;font-size:11px;font-style:normal}.st-pill.live{background:var(--acc);color:var(--board-deep);font-weight:700}.st-pill.soon{border:1px solid var(--chalk-sub);color:var(--chalk-sub)}.st-pill.v2{color:var(--chalk-dim)}.cat-row.v2{opacity:1}.st-pill.v2{border:1px solid var(--chalk-sub);color:var(--chalk-sub)}.qgrid.mini{grid-template-columns:repeat(8,1fr);gap:6px}.qcell.mini{aspect-ratio:auto;border-radius:8px;min-height:34px;padding:0;font-size:12px;position:relative}.qcell.mini.teach{border-color:var(--acc);color:var(--acc);font-weight:700}.qcell.mini.drill{color:var(--chalk-sub)}.qcell.mini.st-ok{background:var(--ok-bg)}.qcell.mini.st-no{border-color:var(--wrong)}.qcell.mini .st{font-size:10px;font-style:normal;font-weight:700;position:absolute;top:-4px;right:-2px}.qcell.mini.st-ok .st{color:var(--acc)}.qcell.mini.st-no .st{color:var(--wrong)}.gh .cnt{font-size:var(--fs-tag);display:inline-block}.gh .cnt-teach{color:var(--acc);font-weight:700}.gh .cnt-drill{color:var(--chalk-sub)}.resumecard{border-color:var(--acc);justify-content:space-between;align-items:center;margin-bottom:14px;padding:14px 16px;display:flex}.resumecard .rc-main{align-items:center;gap:12px;display:flex}.resumecard .rc-play{color:var(--acc);font-size:20px}.resumecard .rc-title{color:var(--chalk);font-size:16px;font-weight:700}.resumecard .rc-sub{font-size:var(--fs-tag);color:var(--chalk-sub);margin-top:2px}.resumecard .go{color:var(--acc);font-size:20px}.tool{max-width:880px}.tool .topbar{align-items:center}.tabs{margin-bottom:var(--s3);flex-wrap:wrap;gap:6px;display:flex}.tpl-tab{border:1.5px solid var(--line);background:var(--card-lift);color:var(--chalk);border-radius:var(--r-pill);cursor:pointer;padding:6px 12px;font-size:12.5px;font-weight:700}.tpl-tab.on{border-color:var(--acc);color:var(--acc)}.tpl-tab:disabled{opacity:.55;cursor:default}.share-note{border:1.5px dashed var(--acc);color:var(--chalk);font-size:14px;line-height:1.7}.tool-grid{gap:var(--s4);grid-template-columns:300px 1fr;align-items:start;display:grid}@media (max-width:720px){.tool-grid{grid-template-columns:1fr}}.tpl-desc{color:var(--chalk-sub);margin-bottom:14px;font-size:13px;line-height:1.7}.field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.flabel{color:var(--chalk-sub);font-size:13px}.finput{background:var(--board-deep);border:2px solid var(--line);border-radius:var(--r-btn);color:var(--chalk);font-size:18px;font-weight:700;font-family:var(--font);width:100%;padding:10px 12px}.finput:focus{border-color:var(--acc);outline:none}.finput.bad{border-color:var(--wrong)}.finput:disabled{opacity:.55}.ferr{color:var(--wrong);font-size:12px}.unit-row{gap:8px;display:flex}.unit-opt{border:1.5px solid var(--line);color:var(--chalk-sub);border-radius:var(--r-pill);cursor:pointer;background:0 0;flex:1;padding:8px 4px;font-size:13px}.unit-opt.on{border-color:var(--acc);color:var(--acc);font-weight:700}.unit-opt:disabled{opacity:.55;cursor:default}.names-toggle{color:var(--chalk-dim);cursor:pointer;text-align:left;background:0 0;border:none;padding:2px 0;font-size:12px}.names-toggle:hover{color:var(--chalk-sub)}.names-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.invalid-note{color:var(--wrong);margin-top:4px;font-size:13px}.nice-note{color:var(--chalk-sub);background:var(--board-deep);border-radius:var(--r-btn);margin-top:6px;padding:10px 12px;font-size:12.5px;line-height:1.7}.nice-btn{border:1.5px solid var(--acc);color:var(--acc);border-radius:var(--r-pill);cursor:pointer;background:0 0;margin-top:6px;padding:5px 12px;font-size:12.5px;display:block}.tool-actions{gap:8px;display:flex}.tool-actions .btn{flex:1;margin-top:14px}.tool-stage{flex-direction:column;gap:10px;display:flex}.tool-stage .svgbox.dim{opacity:.45}.play-row{align-items:center;gap:12px;display:flex}.pbtn{border:1.5px solid var(--line);background:var(--card);width:44px;height:44px;color:var(--chalk);cursor:pointer;border-radius:50%;flex-shrink:0;font-size:16px}.pbtn:disabled{opacity:.45;cursor:default}.rates{gap:4px;display:flex}.rate{border:1px solid var(--line);color:var(--chalk-sub);border-radius:var(--r-pill);cursor:pointer;background:0 0;padding:4px 10px;font-size:12px}.rate.on{border-color:var(--acc);color:var(--acc);font-weight:700}.readout{color:var(--chalk-sub);white-space:nowrap;margin-left:auto;font-size:13px}.l3card{padding:12px 16px}.tool-footer{margin-top:var(--s4)}.tool-footer .footer-note{padding-top:8px}.paste-box{resize:vertical;width:100%;min-height:76px;margin-top:8px;padding:10px 12px;font-size:15px;line-height:1.6}.route-result{border-top:1.5px dashed var(--line);margin-top:10px;padding-top:10px}.route-result.dim{color:var(--chalk-sub);font-size:13px}.rr-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.rr-tpl{color:var(--acc);font-size:17px;font-weight:800}.rr-why{color:var(--chalk-sub);margin-top:6px;font-size:13px;line-height:1.6}.rr-nums{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-size:13px;display:flex}.rr-lab{color:var(--chalk-sub)}.rr-num{border:1.5px solid var(--line);border-radius:var(--r-pill);padding:2px 10px;font-weight:700}.tpl-grid{flex-wrap:wrap;gap:7px;display:flex}.stats-table{border-collapse:collapse;width:100%;margin-top:8px}.stats-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:7px 8px;font-size:13.5px}.stats-table .sk{color:var(--chalk);font-weight:600}.stats-table .sv{color:var(--acc);white-space:nowrap;font-weight:800}.stats-table .sn{color:var(--chalk-sub);width:38%;font-size:11.5px}.stats-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.ev-list{flex-direction:column;gap:2px;max-height:280px;margin-top:6px;display:flex;overflow-y:auto}.ev-row{font-size:12px;font-family:var(--font-mono,monospace);gap:10px;padding:3px 4px;display:flex}.ev-row.dim{color:var(--chalk-sub)}.ev-e{color:var(--acc);min-width:76px;font-weight:700}.ev-t{color:var(--chalk-sub)}.ev-p{color:var(--chalk-sub);word-break:break-all}
