.academy .mobile-lesson-nav,.academy .diagram-mobile-tools,.academy .mv-mobile{display:none}@media (width>=1000px) and (height>=501px){.academy .read-watch-lesson .stage-body{padding:20px;overflow:visible!important}.academy:has(.lesson-dock) .read-watch-lesson .hub-watch:not(:fullscreen){height:auto;max-height:none;min-height:calc(100dvh - var(--read-bar-height,80px) - 110px);overflow:visible}.academy .hub-watch:not(:fullscreen) .watch-canvas{flex:none;max-height:none;overflow:visible}.academy .hub-watch:not(:fullscreen) .stage-body svg{width:100%;min-width:0;height:auto!important;max-height:none!important}.academy .hub-watch:not(:fullscreen) .stage-body{min-height:0;display:block}.academy .hub-watch:not(:fullscreen) .nervous-fit{min-height:0;display:block}.academy .hub-watch:not(:fullscreen) .nervous-fit>[data-stage]{flex:none}.academy .read-watch-lesson .stage-body>*{box-sizing:border-box;width:100%;min-width:0;max-width:1200px;margin-inline:auto}.academy .stage-body .nervous-fit text:is([font-size="12"],[font-size="13"],[font-size="14"],[font-size="16"]){font-size:19px}.academy .stage-body .nervous-fit text[font-size="19"]{font-size:20px}.academy .stage-body .par :is(.mbrand,.mann){font-size:10px}.academy .stage-body .par .mbtl{font-size:9.5px}.academy .stage-body .par :is(.mpos:not(.on),.mjl){font-size:12.5px}.academy .stage-body .pins .pn.dim{opacity:1}.academy .stage-body .pins .pn.dim circle{opacity:.45}.academy .stage-body .pins .pn.dim text{fill:var(--ink)}.academy .stage-body .pins .pnr{font-size:14px}.academy .stage-body .arb-grid{gap:6px;font-size:16px}.academy .stage-body :is(.arb-grid .h,.arb-name b,.arb-name input,.arb-name .st,.arb-key){font-size:14px}.academy .stage-body .arb-grid .bitc{height:44px}.academy .stage-body .arb-grid .bitc.fut{opacity:1}.academy .stage-body .arb-ctl .btn{min-height:44px;font-size:14px}.academy .stage-body :is(.par-info .cap,.dmm .cap,.sc-controls .grp>span,.ro span,.trace th,.ecl-bar .tl,.kb small,.ff b,.ff small,.cc-tag,.fd-f small,.fd-f.sm b,.lp-b small,.ly small){font-size:12px}.academy .lesson.read-watch-lesson.read-split:not(.watching){grid-template-columns:minmax(0,2.4fr) minmax(360px,1fr)}.academy .app:not(.norail) .lesson.read-watch-lesson.read-split:not(.watching){display:block!important}.academy .app:not(.norail) .read-watch-lesson.read-split:not(.watching)>.lcol{position:static}.academy .app:not(.norail) .read-watch-lesson.read-split:not(.watching)>.rcol{max-width:72ch;margin:24px auto 0}.academy .hub-watch:not(:fullscreen) .watch-transport{bottom:var(--lesson-dock-height,70px);z-index:4;background:var(--bg);padding-bottom:8px;position:sticky}}.academy .sc-display-meta{font:14px/1.5 var(--mono);overflow-wrap:anywhere}.academy .stage-cap>span,.academy .ix-from>span{color:var(--ink)}.academy .watch-settings{min-width:0;margin-left:auto}.academy .watch-settings>summary{display:none}.academy .lesson-timeline{flex:1 0 100%;width:100%;min-width:0}.academy .timeline-track{align-items:center;height:30px;display:flex;position:relative}.academy .timeline-rail{background:var(--line);pointer-events:none;border-radius:4px;height:5px;position:absolute;left:7px;right:7px;overflow:hidden}.academy .timeline-rail b{background:var(--accent);height:100%;display:block}.academy .timeline-rail i{background:var(--surface);width:3px;position:absolute;top:0;bottom:0}.academy .timeline-track input{appearance:none;cursor:pointer;touch-action:pan-y;width:100%;height:30px;accent-color:var(--accent);background:0 0;margin:0;position:relative}.academy .timeline-track input::-webkit-slider-runnable-track{background:0 0;height:5px}.academy .timeline-track input::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--surface);width:14px;height:14px;box-shadow:0 0 0 1px var(--accent);border-radius:50%;margin-top:-4.5px}.academy .timeline-track input::-moz-range-track{background:0 0;height:5px}.academy .timeline-track input::-moz-range-thumb{background:var(--accent);border:2px solid var(--surface);border-radius:50%;width:12px;height:12px}.academy .timeline-track input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:5px}.academy .timeline-caption{color:var(--muted);font:11px/1.3 var(--body);justify-content:space-between;gap:8px;display:flex}.academy .timeline-caption span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.academy .timeline-caption span:last-child{font-variant-numeric:tabular-nums;flex:none}.academy .timeline-tip{box-sizing:border-box;background:var(--ink);max-width:100%;color:var(--surface);font:12px var(--body);pointer-events:none;z-index:3;border-radius:7px;padding:6px 9px;position:absolute;bottom:100%;left:0}@media (width<=640px){.academy .lesson-reading-tools .player{flex-flow:wrap}.academy .lesson-reading-tools .player .pmeta{flex:1 0 100%;order:3}.academy .lesson-reading-tools .player>.speedctl{margin-left:auto}}.academy .lesson-slides{border-left:1px solid var(--line);margin:2px 10px 14px 24px;padding:4px 0 4px 12px}.academy .lesson-slides-label{color:var(--muted);font:11px var(--mono);text-transform:uppercase;letter-spacing:.08em;padding:4px 8px;display:block}.academy .lesson-slides ol{gap:3px;margin:0;padding:0;list-style:none;display:grid}.academy .lesson-slides button{width:100%;min-height:44px;color:var(--muted);font:14px/1.35 var(--body);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:baseline;gap:9px;padding:9px 8px;display:flex}.academy .lesson-slides button:hover{background:var(--sunk);color:var(--ink)}.academy .lesson-slides button[aria-current=step]{background:var(--sunk);color:var(--ink);border-color:var(--line);box-shadow:inset 3px 0 var(--accent);font-weight:600}.academy .lesson-slides button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .slide-number{width:16px;font:11px var(--mono);color:var(--muted);flex:none}.academy .read-watch-lesson{display:block!important}.academy .read-watch-lesson>.lcol{display:none}.academy .read-watch-lesson.read-split:not(.watching){grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);align-items:start;gap:24px;display:grid!important}.academy .read-watch-lesson.read-split:not(.watching)>.lcol{display:block;position:sticky;top:100px}.academy .read-watch-lesson .rcol{min-width:0}.academy .read-watch-lesson [hidden]{display:none!important}.academy .read-watch-lesson .tx{max-height:none;overflow:visible}.academy .read-watch-lesson .ix-card[aria-current=step]{outline:2px solid var(--accent);outline-offset:2px}.academy .read-watch-lesson .ix-h h2{scroll-margin-top:110px}.academy .read-watch-lesson .stage{min-height:240px;position:relative}.academy .read-watch-lesson .stage .stage-body{overflow:auto}.academy .read-watch-lesson .stage.fs{z-index:1000;background:var(--surface);position:fixed;inset:0;overflow:auto}.academy .read-watch-lesson .expand-figure{float:right;z-index:2;margin:8px;position:relative}.academy .reading-options{position:relative}.academy .reading-options summary{cursor:pointer;padding:12px}.academy .reading-options[open]{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px}.academy .reading-options label{align-items:center;gap:8px;padding:8px;display:flex}.academy .section-nav{align-items:center;gap:8px;margin:16px 0;display:flex}.academy .section-nav select{flex:1;min-width:0;max-width:100%}.academy .diagram-edit-note{border:1px solid var(--line);background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px;padding:8px;font-size:13px;display:flex}.academy .hub-watch{background:var(--bg);border:1px solid var(--line);box-sizing:border-box;border-radius:12px;flex-direction:column;gap:8px;height:calc(100dvh - 160px);min-height:380px;padding:12px;display:flex;position:relative;overflow:hidden}.academy .hub-watch .watch-transport{border-top:1px solid var(--line);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.academy .watch-playback,.academy .watch-options{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.academy .watch-options{margin-left:auto}.academy .watch-count{font:13px var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0 8px}.academy .hub-watch .watch-play{background:var(--ink);color:var(--surface);min-width:72px}.academy .hub-watch .watch-transport .btn[aria-pressed=true]{background:var(--sunk);border-color:var(--ink)}.academy .watch-lesson-title{font:12px var(--body);color:var(--muted);margin:0 0 6px}.academy .watch-next-steps{margin:12px 0}.academy .hub-watch .stage-body>svg,.academy .hub-watch .stage-body>div>svg{max-height:44dvh}.academy .hub-watch:fullscreen .stage-body>svg{max-height:65dvh}.academy .hub-watch:fullscreen .stage-body>div>svg{max-height:65dvh}.academy .hub-watch .watch-canvas{flex:1;min-height:0;overflow:auto}.academy .hub-watch .watch-canvas h2{margin:4px 0 8px;font-size:20px}.academy .hub-watch .stage{min-height:0}.academy .hub-watch .stage-cap{display:none}.academy .hub-watch .term>svg{max-height:30dvh}.academy .hub-watch .watch-caption{box-sizing:border-box;text-align:center;letter-spacing:-.02em;flex:none;justify-content:center;align-items:center;min-height:112px;padding:16px 12px 22px;font-size:clamp(22px,2.2vw,30px);font-weight:600;line-height:1.5;display:flex}.academy .hub-watch .watch-caption.caption-small{font-size:clamp(18px,1.7vw,23px)}.academy .hub-watch .watch-caption.caption-large{font-size:clamp(27px,2.8vw,38px)}.academy .caption-phrase{color:#edf4f4;text-wrap:balance;background:linear-gradient(135deg,#202e35,#162327);border:1px solid #ffffff20;border-radius:18px;max-width:34ch;padding:14px 20px;box-shadow:0 6px 20px #0002}.academy .caption-word{-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:5px}.academy .caption-word.active{color:#102c27;background:#a8eed9;box-shadow:0 0 0 3px #a8eed9}.academy .caption-size{border:1px solid var(--line);background:var(--surface);max-width:135px;min-height:44px;color:var(--ink);font:13px var(--body);border-radius:8px;padding:0 8px}.academy .hub-watch .watch-section-guide{background:var(--surface);border:1px solid var(--line);z-index:5;border-radius:10px;flex-direction:column;gap:8px;width:340px;max-width:calc(100% - 24px);padding:12px;display:flex;position:absolute;top:12px;bottom:90px;right:12px;overflow:auto;box-shadow:0 10px 30px #0002}.academy .watch-section-guide .btn{text-align:left;justify-content:flex-start}.academy .watch-section-guide .btn[aria-current=step]{background:var(--sunk);border-color:var(--accent)}.academy .hub-watch:fullscreen{background:var(--bg);border:0;border-radius:0;height:100dvh;min-height:0}.academy .hub-watch:fullscreen .term>svg{max-height:45dvh}.academy .hub-watch.chrome-hidden .watch-transport{visibility:hidden;border:0;height:0;min-height:0;padding:0;overflow:hidden}.academy .hub-watch.chrome-hidden .watch-canvas h2{display:none}.academy .hub-watch p[role=status]{margin:0;font-size:12px}@media (width<=999px){.academy .read-watch-lesson.read-split:not(.watching){display:block!important}.academy .read-watch-lesson.read-split>.lcol{display:none!important}.academy .read-watch-lesson .player{width:auto;bottom:auto;position:static!important}.academy .hub-watch{height:calc(100dvh - 120px);min-height:360px;padding:8px}.academy .hub-watch .watch-tools strong{display:none}.academy .hub-watch .watch-transport{gap:5px}.academy .hub-watch .btn{min-height:44px;padding:8px}.academy .hub-watch .term>svg{min-width:480px;max-height:none}.academy .section-nav{flex-wrap:wrap}.academy .section-nav select{flex-basis:100%;order:-1}}@media (height<=500px){.academy .hub-watch:fullscreen{min-height:0}.academy .hub-watch .watch-tools strong,.academy .hub-watch .watch-canvas h2{display:none}.academy .hub-watch .watch-caption{min-height:0;padding:6px}.academy .caption-phrase{padding:6px 12px}}.academy .lesson-controls{z-index:20;background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex;position:sticky;top:0}.academy .read-watch-lesson .tx [data-section]{scroll-margin-top:150px}.academy .reading-options[open]{background:0 0;border:0;padding:0}.academy .reading-options-panel{background:var(--surface);border:1px solid var(--line);z-index:30;border-radius:8px;width:250px;max-width:80vw;padding:8px;position:absolute;top:100%;left:0;box-shadow:0 8px 20px #0003}.academy .read-watch-lesson.read-split:not(.watching)>.lcol{top:calc(var(--read-bar-height,80px) + 12px)}.academy .read-watch-lesson .ix-h h2,.academy .read-watch-lesson .tx [data-section]{scroll-margin-top:calc(var(--read-bar-height,80px) + 18px)}.academy .hub-watch{scroll-margin-top:calc(var(--read-bar-height,80px) + 8px);height:calc(100dvh - var(--read-bar-height,80px) - 110px);min-height:380px;max-height:780px}.academy .hub-watch:fullscreen{height:100dvh;min-height:0;max-height:none}.academy .read-watch-lesson .term{width:100%;max-width:none}@media (width>=1000px){.academy .hub-watch:not(:fullscreen) .term>svg{max-height:36dvh}}.academy .read-watch-lesson .fig{margin:6px 0 22px;display:block}.academy .read-watch-lesson .fig .snap{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:pointer;overflow:hidden}.academy .read-watch-lesson .fig .snap>*{pointer-events:none}.academy .read-watch-lesson .transcript>h2{display:none}.academy .read-watch-lesson .tx{scroll-margin-top:calc(var(--read-bar-height,80px) + 12px)}.academy .read-watch-lesson .stage-body{clear:both;box-sizing:border-box;width:100%}.academy .read-watch-lesson .expand-figure{float:none;margin-left:auto;display:block}@media (width<=999px){.academy .read-watch-lesson .term>svg{min-width:480px}.academy .read-watch-lesson .stage-body{padding:8px}}.academy .popts .popt{font:11px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;flex-direction:column;gap:2px;display:flex}.academy .speedctl{text-transform:none;letter-spacing:0;display:inline-block;position:relative}.academy .speedbtn{border:1px solid var(--line);background:var(--surface);color:var(--ink);min-width:3.4rem;min-height:32px;font:600 14px var(--mono);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:999px;padding:2px 10px}.academy .speeds{z-index:30;box-sizing:border-box;background:var(--surface);border:1px solid var(--line);width:min(20rem,100vw - 32px);color:var(--ink);border-radius:14px;padding:12px;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 10px 30px -12px #00000059}.academy .player .speeds{top:calc(100% + 8px);bottom:auto}.academy .speeds output{text-align:center;font:600 1.6rem/1.2 var(--mono);font-variant-numeric:tabular-nums;margin-bottom:4px;display:block}.academy .speeds .slide{align-items:center;gap:8px;display:flex}.academy .speeds .slide input{min-width:0;accent-color:var(--accent);flex:1;height:2.2rem}.academy .speeds .slide button{border:1px solid var(--line);background:var(--surface);width:2.6rem;height:2.6rem;color:var(--ink);cursor:pointer;border-radius:50%;font-size:1.3rem;line-height:1}.academy .speeds .chips{gap:6px;margin-top:10px;display:flex}.academy .speeds .chips button{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--ink);min-height:2.6rem;font:14px var(--mono);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:999px;flex:1;padding:6px 0}.academy .speeds .chips button[aria-pressed=true]{background:var(--ink);color:var(--surface);font-weight:600}.academy .speeds button:focus-visible,.academy .speedbtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy div.lesson-controls{--tb-h:44px;gap:8px;padding:10px}.academy .lesson-controls .btn{box-sizing:border-box;height:var(--tb-h);min-height:var(--tb-h);font:500 14px/1 var(--body);color:var(--ink);background:var(--surface);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 14px;display:inline-flex}.academy .lesson-controls .btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.academy .lesson-controls .btn svg.tb-chev{stroke-width:2.5px;width:12px;height:12px;transition:transform .15s}.academy .lesson-controls .btn:hover{background:var(--sunk)}.academy .lesson-controls .tb-seg{border:1px solid var(--line);border-radius:8px;display:inline-flex;overflow:hidden}.academy .lesson-controls .tb-seg .btn{box-shadow:none;border:0;border-radius:0}.academy .lesson-controls .tb-seg .btn+.btn{border-left:1px solid var(--line)}.academy .lesson-controls .tb-seg .btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.academy .lesson-controls .reading-options summary{list-style:none}.academy .lesson-controls .reading-options summary::-webkit-details-marker{display:none}.academy .lesson-controls .reading-options[open] summary{background:var(--sunk)}.academy .lesson-controls .reading-options[open] .tb-chev{transform:rotate(180deg)}.academy .lesson-controls .reading-options-panel{font-size:14px;top:calc(100% + 6px)}.academy .lesson-controls .player{border:0;border-left:1px solid var(--line);width:auto;min-width:0;box-shadow:none;background:0 0;border-radius:0;flex:280px;align-items:center;gap:12px;margin:0;padding:0 0 0 12px;display:flex;position:static!important}.academy .lesson-controls .pbtns{gap:6px}.academy .lesson-controls .ib,.academy .lesson-controls .play{width:var(--tb-h);height:var(--tb-h)}.academy .lesson-controls .play svg{width:16px;height:16px}.academy .lesson-controls .pmeta{flex:auto;min-width:40px}.academy .lesson-controls .pmeta .now{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.academy .lesson-controls .bar{border-radius:2px;height:4px}.academy .lesson-controls .bar b{border-radius:2px}.academy .lesson-controls .speedbtn{height:var(--tb-h);min-width:56px;font:600 13px var(--mono);padding:0 12px}.academy .lesson-controls .player .speeds{left:auto;right:0}@media (width<=640px){.academy .lesson-controls .player{border-left:0;border-top:1px solid var(--line);flex:1 0 100%;padding:8px 0 0}}.academy div.lesson-controls{gap:16px;margin-bottom:20px;padding:16px}.academy .lesson-controls .lesson-head{border:0;flex:260px;min-width:0;margin:0;padding:0;display:block}.academy .lesson-controls .lesson-head h1{margin:5px 0 7px;font-size:clamp(20px,2vw,27px);line-height:1.2}.academy .lesson-controls .lesson-head .kicker{font-size:10px}.academy .lesson-controls .lesson-head .meta{flex-wrap:wrap;gap:9px;font-size:11px;display:flex}.academy .lesson-controls .tb-seg{flex-shrink:0}.academy .lesson-reading-tools{border-top:1px solid var(--line);flex:1 0 100%;align-items:center;gap:12px;min-width:0;padding-top:10px;display:flex}.academy .lesson-ending{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:20px;padding-top:18px}.academy .lesson-ending-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .lesson-ending .btn:not(.primary){box-shadow:none;background:0 0;border-color:#0000}.academy .lesson-ending .btn:not(.primary):hover{background:var(--sunk);border-color:var(--line)}@media (width<=640px){.academy div.lesson-controls{gap:10px;padding:12px}.academy .lesson-controls .lesson-head{flex:calc(100% - 70px)}.academy .lesson-controls .lesson-contents{flex:none;width:44px;padding:0}.academy .lesson-contents span{display:none}.academy .lesson-controls .tb-seg{margin-left:auto}.academy .lesson-reading-tools{flex-wrap:wrap}.academy .lesson-reading-tools .player{border:0;flex:200px;padding:0}.academy .hub-watch{height:auto;min-height:0;max-height:none;padding:10px}.academy .hub-watch .watch-canvas{flex:none;max-height:60dvh}.academy .hub-watch .watch-transport{gap:8px}.academy .hub-watch .watch-options{justify-content:flex-end;width:100%;position:relative}.academy .hub-watch .watch-options .btn{font-size:12px}.academy .hub-watch .watch-section-guide{bottom:130px}.academy .hub-watch .watch-options .speedctl{position:static}.academy .hub-watch .watch-options .speeds{width:min(320px,100%);left:auto;right:0}.academy .hub-watch:fullscreen{height:100dvh;min-height:0}.academy .hub-watch:fullscreen .watch-canvas{flex:1;max-height:none}.academy .lesson-ending{align-items:flex-start}.academy .lesson-ending-actions{justify-content:flex-end}}.academy .lesson-dock{left:var(--lesson-dock-left,16px);width:var(--lesson-dock-width,calc(100% - 32px));z-index:30;box-sizing:border-box;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;position:fixed;bottom:0;box-shadow:0 -8px 24px #0001}.academy .lesson-dock .section-nav{flex-wrap:nowrap;margin:0 0 8px}.academy .lesson-dock .section-nav select{text-overflow:ellipsis;background:var(--surface);width:0;min-height:44px;color:var(--ink);border:1px solid var(--line);border-radius:8px;flex:1 1 0;order:0;padding:0 8px}.academy .lesson-dock .section-nav .btn{white-space:nowrap;flex:none}.academy .lesson-dock .lesson-ending{border:0;gap:8px;margin:0;padding:0}.academy .lesson-dock:has(.section-nav) .lesson-ending{border-top:1px solid var(--line);padding-top:8px}.academy .read-watch-lesson{padding-bottom:calc(var(--lesson-dock-height,140px) + 24px)}.academy:has(.lesson-dock) .rolebar{bottom:calc(var(--lesson-dock-height,140px) + 12px)}.academy:has(.rolebar) .read-watch-lesson{padding-bottom:calc(var(--lesson-dock-height,140px) + 64px)}.academy details.rolebar{border-radius:20px;max-width:calc(100vw - 24px);padding:0;display:block;left:auto;right:12px;overflow:visible;transform:none;box-shadow:0 2px 8px #0001}.academy .rolebar summary{cursor:pointer;box-sizing:border-box;min-height:36px;color:var(--muted);font:12px var(--body);align-items:center;gap:7px;padding:8px 12px;list-style:none;display:flex}.academy .rolebar summary::-webkit-details-marker{display:none}.academy .rolebar summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:20px}.academy details.rolebar .seg{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:stretch;min-width:170px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 6px 24px #0003}.academy details.rolebar:not([open]) .seg{display:none}.academy details.rolebar .seg button{text-align:left;border-radius:7px;min-height:44px}.academy:has(.lesson-dock) .hub-watch:not(:fullscreen){height:calc(100dvh - var(--read-bar-height,80px) - var(--lesson-dock-height,70px) - 40px)}@media (width<=640px){.academy .lesson-dock{padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))}.academy .lesson-dock .section-nav{gap:6px}.academy .lesson-dock .section-nav .btn{width:44px;padding:0;font-size:0}.academy .lesson-dock .section-nav .btn:first-child:before{content:"←";font-size:18px}.academy .lesson-dock .section-nav .btn:last-child:before{content:"→";font-size:18px}.academy .lesson-dock .section-nav select{font-size:13px}.academy .lesson-dock .lesson-ending{flex-wrap:wrap}.academy .lesson-dock .lesson-ending .btn{min-height:44px;padding:8px;font-size:12px}.academy .lesson-dock .lesson-ending-actions{flex:1;gap:2px}.academy .lesson-dock .lesson-ending-actions .primary{margin-left:auto}.academy:has(.lesson-dock) .hub-watch:not(:fullscreen){height:auto}}@media (width<=640px),(height<=500px) and (pointer:coarse){.academy .app main{padding-left:8px;padding-right:8px}.academy div.lesson-controls{border-radius:12px;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;margin-bottom:12px;padding:8px;display:grid;position:relative;top:auto}.academy .lesson-controls .lesson-head{min-width:0}.academy .lesson-controls .lesson-head h1{overflow-wrap:anywhere;margin:0;font-size:17px;line-height:1.2}.academy .lesson-controls .lesson-head .kicker,.academy .lesson-controls .lesson-head .meta{display:none}.academy .lesson-controls .tb-seg{margin:0}.academy .lesson-controls .tb-seg .btn{flex-shrink:0;width:44px;padding:0}.academy .lesson-controls .tb-seg span{display:none}.academy .lesson-reading-tools{grid-column:1/-1;grid-template-columns:44px minmax(0,1fr);gap:8px;padding-top:8px;display:grid}.academy .lesson-reading-tools .reading-options summary{width:44px;padding:0}.academy .lesson-reading-tools .reading-options summary span,.academy .lesson-reading-tools .reading-options .tb-chev{display:none}.academy .lesson-reading-tools .player{grid-template-columns:auto 1fr auto;gap:6px;min-width:0;display:grid}.academy .lesson-reading-tools .player .pbtns{grid-column:1;gap:2px}.academy .lesson-reading-tools .player .ib{aspect-ratio:1;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px}.academy .lesson-reading-tools .player>.speedctl{grid-area:1/3;margin:0}.academy .lesson-reading-tools .player .pmeta{grid-area:2/1/auto/-1;min-width:0}.academy .lesson-reading-tools .timeline-caption span:first-child{display:none}.academy .lesson-reading-tools .timeline-caption{justify-content:flex-end}.academy .lesson-reading-tools .timeline-track,.academy .timeline-track input{height:44px}.academy .lesson-dock{width:100%;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));border-radius:12px 12px 0 0;left:0}.academy .lesson-dock>.section-nav,.academy .lesson-dock>.lesson-ending{display:none}.academy .mobile-lesson-nav{grid-template-columns:44px minmax(0,1fr) 44px 44px;align-items:center;gap:4px;display:grid}.academy .mobile-lesson-nav>.btn,.academy .mobile-lesson-actions>summary{background:0 0;border-color:#0000;min-height:44px;padding:6px}.academy .mobile-slide-title{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.academy .mobile-slide-title small{font:10px var(--mono);color:var(--muted)}.academy .mobile-slide-title span{white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:12px;display:block;overflow:hidden}.academy .mobile-lesson-actions{position:relative}.academy .mobile-lesson-actions summary{cursor:pointer;text-align:center;list-style:none}.academy .mobile-lesson-actions summary::-webkit-details-marker{display:none}.academy .mobile-lesson-actions>div{background:var(--surface);border:1px solid var(--line);border-radius:12px;width:230px;max-width:calc(100vw - 24px);padding:8px;display:grid;position:absolute;bottom:calc(100% + 14px);right:0;box-shadow:0 8px 30px #0003}.academy .mobile-lesson-actions>div .btn{text-align:left;background:0 0;border-color:#0000;justify-content:flex-start;min-height:44px}.academy .hub-watch{gap:6px;padding:8px}.academy .hub-watch .watch-canvas{max-height:none;overflow:visible}.academy .hub-watch .watch-canvas h2{margin:2px 0 10px;font-size:15px;line-height:1.3}.academy .diagram-mobile-tools{font:12px var(--body);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.academy .diagram-mobile-tools .btn{min-width:44px;min-height:44px;color:var(--ink);flex:none;font-size:12px}.academy .hub-watch .stage-body,.academy .read-watch-lesson .stage-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:8px;max-height:360px;overflow:auto}.academy .read-watch-lesson .stage-body svg,.academy .hub-watch .term>svg,.academy .hub-watch .stage-body>svg,.academy .hub-watch .stage-body>div>svg{width:var(--diagram-width,720px);min-width:var(--diagram-width,720px);max-width:none;height:auto;max-height:none}.academy .read-watch-lesson .stage-body.diagram-fit{touch-action:pan-x pan-y pinch-zoom;max-height:none;overflow:visible}.academy .read-watch-lesson .stage-body.diagram-fit svg{width:100%;min-width:0;max-width:100%;height:auto;max-height:none}.academy .read-watch-lesson .stage-body:not(.diagram-fit) svg{width:max(640px,var(--diagram-width,720px));min-width:max(640px,var(--diagram-width,720px));max-width:none}.academy .read-watch-lesson .fig .snap{max-height:none;overflow:visible}.academy .read-watch-lesson .fig .snap svg{width:100%;min-width:0;max-width:100%;max-height:none}.academy .phone-network p,.academy .phone-network li{font:14px/1.4 var(--body);color:var(--ink)}.academy .phone-network ul{margin:8px 0;padding:0 12px 0 24px}.academy .read-watch-lesson .fig .snap .stage-body{border:0;max-height:none;overflow:visible}.academy .read-watch-lesson .pn-wrap{justify-content:flex-start}.academy .stage-body:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .hub-watch .stage-body{padding:0}.academy .hub-watch .watch-caption{min-height:0;padding:8px 0;font-size:20px}.academy .hub-watch .watch-caption.caption-small{font-size:18px}.academy .hub-watch .watch-caption.caption-large{font-size:25px}.academy .hub-watch .caption-phrase{border-radius:12px;padding:10px 12px}.academy .hub-watch .watch-transport{gap:6px;padding-top:6px}.academy .hub-watch .watch-playback{gap:3px}.academy .hub-watch .watch-playback .btn{min-width:44px;padding:6px}.academy .hub-watch .watch-playback .watch-play{min-width:56px}.academy .hub-watch .watch-playback [aria-label=Replay\ section]{display:none}.academy .hub-watch .watch-count{margin:0 4px;font-size:11px}.academy .watch-settings{position:relative}.academy .watch-settings>summary{cursor:pointer;align-items:center;min-height:44px;list-style:none;display:flex}.academy .watch-settings>summary::-webkit-details-marker{display:none}.academy .hub-watch .watch-settings .watch-options{box-sizing:border-box;background:var(--surface);border:1px solid var(--line);z-index:10;border-radius:12px;justify-content:flex-start;width:230px;max-width:calc(100vw - 40px);padding:10px;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 8px 24px #0003}.academy .hub-watch .watch-settings:not([open]) .watch-options{display:none}.academy .hub-watch:fullscreen .watch-canvas{flex:1;overflow:auto}.academy .hub-watch:fullscreen .term>svg{max-height:none}}@media (height<=500px) and (pointer:coarse){.academy div.lesson-controls{gap:8px;margin-bottom:10px;padding:8px;position:relative;top:auto}.academy .lesson-controls .lesson-head h1{margin:0;font-size:17px}.academy .lesson-controls .lesson-head .kicker,.academy .lesson-controls .lesson-head .meta{display:none}.academy:has(.lesson-dock) .hub-watch:not(:fullscreen){height:auto;max-height:none}.academy .hub-watch .watch-canvas{flex:none;max-height:none}.academy .hub-watch .stage-body svg{width:100%;min-width:0;max-height:none}.academy .phone-network svg{width:100%;margin-inline:auto;max-height:220px!important}}@media (width<=640px),(height<=500px) and (pointer:coarse){.academy .mv-wide,.academy .hub-watch .mv-wide.nervous-fit{display:none}.academy .read-watch-lesson .stage-body{padding:0}.academy .read-watch-lesson .ix-card{padding:10px}.academy .mv-mobile{font:14px/1.45 var(--body);color:var(--ink);box-sizing:border-box;padding:10px;display:block}.academy .mv-mobile p{margin:10px 0}.academy .mv-mobile h3{font:600 16px/1.3 var(--body);margin:0 0 10px}.academy .mv-card{border:1px solid var(--line);background:var(--surface);overflow-wrap:anywhere;border-radius:8px;gap:3px;min-width:0;padding:10px;display:grid}.academy .mv-card b{font-size:15px}.academy .mv-card span{font-size:14px}.academy .mv-backbone{border-left:5px double var(--canh);gap:12px;margin:8px 0 8px 8px;padding:0 0 0 18px;display:grid}.academy .mv-bus-title{padding-bottom:8px;font-weight:600}.academy .mv-tap{position:relative}.academy .mv-tap:before{content:"";border-top:3px double var(--canl);width:21px;position:absolute;top:24px;left:-21px}.academy .mv-tap.long-stub{margin-left:30px}.academy .mv-tap.long-stub:before{width:51px;left:-51px}.academy .mv-end{border:1px solid var(--ink);border-radius:6px;padding:8px;font-weight:600}.academy .mv-callout{border-left:3px solid var(--accent);overflow-wrap:anywhere;margin-top:8px;padding:8px}.academy .mv-break{border:1px dashed var(--bad);color:var(--bad);background:var(--surface);padding:8px;position:relative}.academy .mv-break.is-cut:before{content:"";background:var(--surface);width:10px;position:absolute;top:0;bottom:0;left:-25px}.academy .mv-break small{font-size:13px;display:block}.academy .mv-mobile .bad{color:var(--bad)}.academy .mv-mobile .is-dead{opacity:.75;border-style:dashed}.academy .mv-mobile .is-lit{outline:2px solid var(--canh);border-radius:8px}.academy .mv-network{border:1px solid var(--canh);border-radius:10px;margin:12px 0;padding:12px}.academy .mv-branches{border-left:2px solid var(--muted);margin-left:8px;padding-left:18px}.academy .mv-branches .mv-network{position:relative}.academy .mv-branches .mv-network:before{content:"";border-top:2px solid var(--muted);width:20px;position:absolute;top:24px;left:-20px}.academy .mv-node-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.academy .mv-gateway{border:2px solid var(--accent);text-align:center}.academy .mv-arrow{text-align:center;padding:4px;font-size:18px;line-height:1.4}.academy .mv-center{text-align:center}.academy .mv-terminator{font:14px/1.4 var(--body);text-align:left;border:2px solid var(--ink);width:100%;min-height:54px;color:var(--ink);background:var(--surface);border-radius:8px;gap:4px;padding:9px;display:grid}.academy .mv-terminator[aria-pressed=false]{border-style:dashed}.academy .mv-terminator[aria-pressed=true]{background:var(--hl-sent)}.academy .mv-reading{color:#17220e;background:#bdcba9;border:3px solid #d8a62f;border-radius:10px;gap:5px;padding:12px;display:grid}.academy .mv-reading b{font:700 30px/1.2 var(--mono)}.academy .mv-resistors{border-left:4px solid var(--canh);border-right:4px solid var(--canl);gap:12px;padding:12px 20px;display:grid}.academy .mv-resistor{border:2px solid var(--ink);background:var(--surface);color:var(--ink);font:14px var(--body);box-sizing:border-box;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:54px;padding:12px;display:flex;position:relative}.academy .mv-resistors .mv-resistor:before,.academy .mv-resistors .mv-resistor:after{content:"";border-top:2px solid var(--ink);width:21px;position:absolute;top:50%}.academy .mv-resistors .mv-resistor:before{right:100%}.academy .mv-resistors .mv-resistor:after{left:100%}.academy .mv-resistor small{font-size:13px}.academy .mv-series{gap:22px;display:grid}.academy .mv-series .mv-resistor:not(:last-child):after{content:"";border-left:2px solid var(--ink);height:24px;position:absolute;top:100%;left:50%}.academy .mv-mobile canvas{width:100%;height:auto;display:block}.academy .mv-notes{gap:7px;margin:12px 0;padding-left:20px;display:grid}.academy .mv-mobile .mv-comparison-svg{margin-bottom:16px;overflow:visible}.academy .mv-mobile .mv-comparison-svg text{font-size:19px}.academy .read-watch-lesson .stage-body.diagram-fit .mv-mobile svg{width:100%;min-width:0;max-height:none}.academy .mv-mobile .mv-chart text{font-size:25px!important}.academy .mv-bittime .mv-chart text{font-size:28px!important}.academy .mv-mobile .pins text{font-size:23px!important}.academy .mv-mobile .pins .pn.dim{opacity:1}.academy .mv-mobile .pins .pn.dim circle{opacity:.45}.academy .mv-mobile .pins .pnn{fill:var(--ink)}.academy .mv-mobile .pins .pnt{font-size:26px!important}.academy .mv-mobile .pn-wrap{display:block}.academy .stage-body .lp-w{overflow-wrap:anywhere}.academy .stage-body .lp-g{grid-template-columns:repeat(4,minmax(0,1fr))}.academy .stage-body .lp-b small{overflow-wrap:anywhere;font-size:13px}.academy .stage-body .mt{display:block}.academy .stage-body .mt-side{min-width:0;margin-top:12px}.academy .stage-body .mt-t{table-layout:fixed}.academy .stage-body .mt-t td{white-space:normal;overflow-wrap:anywhere;min-width:0;padding:7px 4px}.academy .stage-body .trw-t{table-layout:fixed}.academy .stage-body .trw-t td,.academy .stage-body .trw-t th{overflow-wrap:anywhere;white-space:normal;padding:7px 4px}.academy .stage-body .fd-strip,.academy .stage-body .fid-strip{flex-wrap:wrap;display:flex}.academy .stage-body .fd-f,.academy .stage-body .fid-strip .ff{min-width:0;overflow:visible;flex:90px!important}.academy .stage-body .fd-f.sm b{writing-mode:horizontal-tb;white-space:normal;font-size:14px;transform:none}.academy .stage-body .fd-f.sm small,.academy .stage-body .fd-f.sm code{display:block}.academy .stage-body .fd-f small,.academy .stage-body .fid-strip small,.academy .stage-body .fid-strip b,.academy .stage-body .kb small,.academy .stage-body .cc-tag,.academy .stage-body .ro span,.academy .stage-body .sc-controls .grp>span,.academy .stage-body .st-e code,.academy .stage-body .ly small,.academy .stage-body .ly code{font-size:13px}.academy .stage-body .co{grid-template-columns:minmax(0,1fr);min-width:0}.academy .stage-body .trace{min-width:0;overflow:visible}.academy .stage-body .trace table{table-layout:fixed;min-width:0}.academy .stage-body .trace th,.academy .stage-body .trace td{white-space:normal;overflow-wrap:anywhere;padding:7px 4px;font-size:13px}.academy .stage-body .trace td:nth-child(3){font-size:14px}.academy .stage-body .ecl-bar{background:linear-gradient(var(--sunk) 22px,transparent 22px);height:65px}.academy .stage-body .ecl-bar b{height:22px;bottom:auto}.academy .stage-body .ecl-bar .tick{height:30px;bottom:auto}.academy .stage-body .ecl-bar .tl{white-space:normal;vertical-align:top;width:33.33%;font-size:12px;display:inline-block;position:relative;top:28px;transform:none;left:auto!important}.academy .mv-arb-inputs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.academy .mv-arb-inputs label{gap:5px;font-size:13px;display:grid}.academy .mv-arb-inputs input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font:14px var(--mono);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:10px 4px}.academy .mv-arb-table{border-collapse:collapse;table-layout:fixed;width:100%;font:14px var(--mono)}.academy .mv-arb-table caption{font:600 15px var(--body);text-align:left;margin-bottom:8px}.academy .mv-arb-table th{font:13px var(--body);overflow-wrap:anywhere;padding:7px 2px}.academy .mv-arb-table td{text-align:center;border:2px solid var(--surface);height:30px;display:table-cell}.academy .mv-arb-table .fut{opacity:1}.academy .mv-arb-controls{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.academy .mv-arb-controls .btn{min-height:44px}.academy .mv-wire-list{gap:8px;margin:12px 0;display:grid}.academy .mv-wire{font:14px/1.4 var(--body);color:var(--ink);background:var(--surface);text-align:left;border:1px solid var(--line);border-radius:8px;gap:4px;min-height:44px;padding:10px;display:grid}.academy .mv-wire[aria-pressed=true]{border:2px solid var(--accent);background:var(--hl-sent)}}.intro-diagram{box-sizing:border-box;width:100%;min-width:0;color:var(--ink);overflow-wrap:anywhere;margin:0;padding:clamp(12px,3vw,28px);container-type:inline-size}.intro-diagram-caption{margin:0 0 20px}.intro-diagram-kicker{color:var(--accent);font:12px/1.5 var(--mono);letter-spacing:.08em;margin:0 0 12px}.intro-diagram .intro-diagram-title{font:500 clamp(22px, 3vw, 30px)/1.25 var(--display);margin:0}.intro-diagram-items{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.intro-diagram--paths .intro-diagram-items,.intro-diagram--lesson .intro-diagram-items{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-diagram-item{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;margin:0;padding:18px;position:relative}.intro-diagram-item-title{font:500 20px/1.3 var(--display);display:block}.intro-diagram-item-body{color:var(--muted);white-space:pre-line;font:15px/1.6 var(--body);margin:10px 0 0}.intro-diagram-number{color:var(--accent);font:12px/1.4 var(--mono);margin-bottom:14px;display:block}.intro-diagram--advisor .intro-diagram-items,.intro-diagram--flag .intro-diagram-items{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-diagram--timeline .intro-diagram-item,.intro-diagram--career .intro-diagram-item{border:0;border-top:3px solid var(--accent);background:0 0;border-radius:0}.intro-diagram-note,.intro-diagram-fallback{color:var(--muted);font:14px/1.6 var(--body);margin:18px 0 0}@container (width<=600px){.intro-diagram-items,.intro-diagram--paths .intro-diagram-items,.intro-diagram--lesson .intro-diagram-items,.intro-diagram--advisor .intro-diagram-items,.intro-diagram--flag .intro-diagram-items{grid-template-columns:minmax(0,1fr)}.intro-diagram-items{gap:10px}.intro-diagram-item{padding:14px}.intro-diagram-item-title{font-size:18px}.intro-diagram-item-body{font-size:14px;line-height:1.5}.intro-diagram ol .intro-diagram-item{grid-template-columns:24px minmax(0,1fr);column-gap:10px;display:grid}.intro-diagram ol .intro-diagram-number{grid-area:1/1/span 2;margin:3px 0 0}.intro-diagram ol .intro-diagram-item-title,.intro-diagram ol .intro-diagram-item-body{grid-column:2}.intro-diagram ol .intro-diagram-item-body{margin-top:4px}.intro-diagram--timeline .intro-diagram-item,.intro-diagram--career .intro-diagram-item{border-top:0;border-left:3px solid var(--accent)}}@container (width<=400px){.intro-diagram-item{padding:10px}.intro-diagram ol .intro-diagram-item{grid-template-columns:18px minmax(0,1fr);column-gap:8px}.intro-diagram ol .intro-diagram-number{grid-row:1}.intro-diagram ol .intro-diagram-item-body{grid-column:1/-1;margin-top:8px}}:is(.academy .hub-watch .watch-canvas:has(.nervous-fit),.academy .hub-watch .stage:has(.nervous-fit),.academy .hub-watch .stage-body:has(.nervous-fit),.academy .hub-watch .nervous-fit){flex-direction:column;flex:1;min-height:0;display:flex}.academy .hub-watch .nervous-fit>:first-child{flex:none}.academy .hub-watch .watch-canvas:has(.nervous-fit)>h2{flex:none}.academy .hub-watch .nervous-fit>[data-stage]{flex:1;min-height:0}.academy .hub-watch .nervous-fit>[data-stage]>svg{height:100%!important}.academy .dd-term .leg{stroke:var(--ink);stroke-width:1.6px}.academy .dd-term .body{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px}.academy .dd-term.bar .body{fill:var(--ink);stroke:none}.academy .dd-term .zig{fill:none;stroke:var(--ink);stroke-width:1.3px;stroke-linejoin:round}.academy .dd-term .label{font-family:var(--mono);fill:var(--ink);font-size:12px}.academy .dd-term.missing .leg{stroke:var(--muted);stroke-dasharray:3 3}.academy .dd-term.missing .body{fill:none;stroke:var(--muted);stroke-dasharray:4 4}.academy .dd-term.missing .label{fill:var(--bad);font-weight:600}.academy .dd-term.extra .body{stroke:var(--warn);stroke-width:2.4px}.academy .dd-term.extra.bar .body{fill:var(--warn)}.academy .dd-term.extra .leg{stroke:var(--warn)}.academy .dd-term-line{stroke-width:3px}.academy .dd-term-line.h{stroke:var(--canh)}.academy .dd-term-line.l{stroke:var(--canl)}.academy .bv svg{width:100%;height:auto;max-height:70vh;display:block}.academy .bv-row{transition:opacity .25s}.academy .bv-dim{opacity:.28}.academy .bv-title{fill:var(--ink);font-size:16px;font-weight:700}.academy .bv-say{fill:var(--muted);font-size:14px}.academy .bv-h,.academy .bv-l,.academy .bv-one{stroke-width:3px;stroke-linecap:round}.academy .bv-h{stroke:var(--canh)}.academy .bv-l{stroke:var(--canl)}.academy .bv-one{stroke:var(--ink)}.academy .bv-h.thin,.academy .bv-l.thin,.academy .bv-one.thin{stroke-width:2px}.academy .bv-wire{font-family:var(--mono);font-size:11px;font-weight:600}.academy .bv-wire.h{fill:var(--canh)}.academy .bv-wire.l{fill:var(--canl)}.academy .bv-node rect{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px}.academy .bv-node text{fill:var(--ink);font-size:14px;font-weight:600}.academy .bv-node.lit rect{stroke:var(--accent);stroke-width:3px;fill:var(--accent-soft)}.academy .bv-guide{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 4;opacity:.55}.academy .bv-flag circle{fill:var(--bad)}.academy .bv-flag text{fill:var(--surface);font-size:15px;font-weight:800}.academy .bv-note{color:var(--ink);margin-top:8px;font-size:14px}.academy .bv-cad-w{font-family:var(--mono);fill:var(--muted);font-size:10px}.academy .bv-cad-x rect,.academy .bv-cad-c rect{fill:var(--surface);stroke:var(--ink);stroke-width:1.3px}.academy .bv-cad-x circle{fill:var(--ink)}.academy .bv-cad-x text,.academy .bv-cad-c text{font-family:var(--mono);fill:var(--ink);font-size:10px;font-weight:600}.academy .bv-cad-c text.pin{font-weight:400}.academy .bv-cad-b{fill:none;stroke:var(--muted);stroke-width:1.2px}.academy .dd-exc{font-variant-numeric:tabular-nums;background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;container-type:inline-size}.academy .dd-exc-play{gap:10px;min-width:0;display:grid}.academy .dd-exc-stage{background:var(--surface);border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.academy .dd-exc-stage canvas{aspect-ratio:32/17;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%;max-height:380px;display:block}.academy .dd-exc-stage canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.academy .dd-exc-msg{text-align:center;pointer-events:none;color:var(--muted);background:color-mix(in srgb,var(--surface) 88%,transparent);border-radius:8px;justify-items:center;gap:6px;padding:8px 10px;font-size:13px;display:grid;position:absolute;inset:30px 12px auto}.academy .dd-exc-msg b{color:var(--ink);font-size:15px}.academy .dd-exc-msg .btn{pointer-events:auto}.academy .dd-exc-ctl{align-items:center;gap:12px;min-width:0;display:flex}.academy .dd-exc-pad{background:var(--surface);border:1px solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;-webkit-tap-highlight-color:transparent;border-radius:50%;flex:none;place-items:center;width:104px;height:104px;display:grid;position:relative}.academy .dd-exc-pad:before,.academy .dd-exc-pad:after{content:"";background:var(--line);position:absolute}.academy .dd-exc-pad:before{height:1px;top:50%;left:12px;right:12px}.academy .dd-exc-pad:after{width:1px;top:12px;bottom:12px;left:50%}.academy .dd-exc-pad:active{cursor:grabbing}.academy .dd-exc-pad:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .dd-exc-knob{z-index:1;background:var(--canh);border:2px solid var(--ink);width:36px;height:36px;box-shadow:0 2px 0 var(--line);pointer-events:none;border-radius:50%;position:relative}.academy .dd-exc-ax{font:600 10px var(--mono);color:var(--muted);position:absolute}.academy .dd-exc-ax-x{top:calc(50% + 3px);right:8px}.academy .dd-exc-ax-y{top:6px;left:calc(50% + 4px)}.academy .dd-exc-btns{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.academy .dd-exc-hold{touch-action:manipulation;-webkit-user-select:none;user-select:none}.academy .dd-exc-hold.on{filter:brightness(1.15);outline:2px solid var(--accent);outline-offset:1px;transform:translateY(1px)}.academy .dd-exc-hold kbd{font:11px var(--mono);opacity:.75;margin-left:4px}.academy .dd-exc-bucket{min-width:9.5em}.academy .dd-exc-mode{opacity:.85;font-size:12px}.academy .dd-exc-hint{color:var(--muted);flex-basis:100%;font-size:12px}.academy .dd-exc .dd-data span{transition:background-color .25s}.academy .dd-exc .dd-data span.chg{background:var(--hl);color:var(--ink)}.academy .dd-exc-decode{color:var(--muted);margin:0;font-size:13px}.academy .dd-exc-decode b{font-family:var(--mono);color:var(--ink)}@container (width<=520px){.academy .dd-exc-msg{border-top:1px solid var(--line);background:0 0;border-radius:0;padding:8px 10px 10px;position:static;inset:auto}}@container (width<=360px){.academy .dd-exc-pad{width:92px;height:92px}.academy .dd-exc-hold kbd{display:none}}@media (prefers-reduced-motion:reduce){.academy .dd-exc .dd-data span{transition:none}}@media (width<=820px){.academy .hm-art:has(.dd-exc){order:0;max-width:none}}.academy .dd-tape path{fill:#eadfb4;stroke:#c9bc8a;stroke-width:1px;opacity:.96}.academy svg .dd-tape text{font:700 16px var(--display);letter-spacing:.06em;fill:#1c2023}.academy svg .dd-tape.red text{fill:#c0262d}.academy svg .dd-tape.green text{fill:#1f7a45}.academy .dd-bus-part text{font-family:var(--mono)}.academy .dd-bus-part{pointer-events:none}.academy .dd-bus-part .wire{fill:none;stroke-width:2.4px;stroke-linecap:round}.academy :is(.dd-bus-part .wire,.dd-bus-pair path).canH{stroke:#c9a400}.academy :is(.dd-bus-part .wire,.dd-bus-pair path).canL{stroke:#2e7d4f}.academy .dd-bus-part .wire.pos{stroke:#d7322a}.academy .dd-bus-part .wire.neg{stroke:var(--ink,#15181a)}.academy .dd-bus-pair path{fill:none;stroke-width:2.6px;stroke-linecap:round}.academy .dd-bus-cable{fill:none;stroke:#2a2f33;stroke-width:4px;stroke-linecap:round}.academy .dd-bus-cable.can{stroke:#3c4247;stroke-width:5px}.academy .dd-bus-part .shell{fill:#1c2023;stroke:#0e1012;stroke-width:1.2px}.academy .dd-bus-part .nose{fill:#5f696f;stroke:#2a2f33;stroke-width:1px}.academy .dd-bus-part .wedge{fill:#e07a1f;stroke:#8a4410;stroke-width:.8px}.academy .dd-bus-part .rib{fill:#2a2f33}.academy .dd-bus-part .pins-metal{fill:#c9a24e}.academy .dd-bus-part .mould{fill:#d5dbde;letter-spacing:.04em;font-size:12px;font-weight:700}.academy .dd-bus-part .mould.small{fill:#8c979d;font-size:8px}.academy .dd-bus-part .crimp{fill:#b8c2c7;stroke:#5f696f;stroke-width:.8px}.academy .dd-bus-part .shrink{fill:#f2e6c2;fill-opacity:.45;stroke:#b49a52;stroke-width:1.2px}.academy .dd-bus-part .tape-wrap{fill:#22272a;stroke:#0e1012}.academy .dd-bus-part .flange{fill:#2a2f33;stroke:#0e1012;stroke-width:1.2px}.academy .dd-bus-part .screw{fill:#9aa3a8;stroke:#3e464b}.academy .dd-bus-part .ring{fill:#4e585e;stroke:#15181a;stroke-width:1.5px}.academy .dd-bus-part .face{fill:#15181a}.academy .dd-bus-part .key{fill:#4e585e}.academy .dd-bus-part .cav{fill:#2f363a;stroke:#5f696f;stroke-width:.8px}.academy .dd-bus-part .cav.used,.academy .dd-bus-part .term{fill:#e0b84e;stroke:#3a2e0e;stroke-width:1px}.academy .dd-bus-part .boot{fill:#15181a}.academy .dd-bus-part .case{fill:#a9b2b7;stroke:#5f696f;stroke-width:1.2px}.academy .dd-bus-part .label{fill:#1c2023}.academy .dd-bus-part .label-text{fill:#e8eef0;letter-spacing:.04em;font-size:8.5px;font-weight:700}.academy .dd-bus-part .db9{fill:#c9d0d3;stroke:#5f696f}.academy .dd-bus-part .db9-shell{fill:#3e464b}.academy .dd-bus-part .usb-lead{fill:none;stroke:#2a2f33;stroke-width:4px;stroke-linecap:round}.academy .dd-bus-part .lamp circle{fill:#5f696f;stroke:#2a2f33}.academy .dd-bus-part .lamp-text{fill:#2a2f33;font-size:7px;font-weight:700}.academy .dd-bus-part .lamp.pwr.lit circle{fill:#3be37f;filter:drop-shadow(0 0 3px #3be37f)}.academy .dd-bus-part .lamp:is(.tx,.rx).lit circle{fill:#ffc233;filter:drop-shadow(0 0 3px #ffc233)}.academy .dd-bus-part .lid{fill:#2a2f33;stroke:#0e1012;stroke-width:1.2px}.academy .dd-bus-part .screen{fill:#0b0e10}.academy .dd-bus-part .titlebar{fill:#1c2327}.academy .dd-bus-part .title{fill:#c9d0d3;font-size:7.5px;font-weight:700}.academy .dd-bus-part .head{fill:#8c979d;font-size:7px;font-weight:700}.academy .dd-bus-part .row text{fill:#7fe3a6;font-size:7px}.academy .dd-bus-part .row .id{fill:#ffc233}.academy .dd-bus-part .base{fill:#b8c2c7;stroke:#5f696f;stroke-width:1.2px}.academy .dd-bus-part .pad{fill:#9aa3a8}.academy .dd-bus-part .port{fill:#15181a}.academy .dd-bus-part .names .pin-name{fill:var(--ink,#1c2023);paint-order:stroke;stroke:var(--surface,#fff);stroke-width:3.5px;stroke-linejoin:round;font-size:10px;font-weight:700}.academy .dd-buslib{background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;container-type:inline-size}.academy .dd-buslib svg.example{background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;height:auto;display:block}.academy .dd-buslib .dd-note{color:var(--muted);margin:0;font-size:12px}.academy .dd-ecu-part text{font-family:var(--mono)}.academy .dd-ecu-part{pointer-events:none}.academy .dd-ecu-part .hole{fill:#15181a;stroke:#5f696f;stroke-width:1px}.academy .dd-ecu-part .print{letter-spacing:.06em;fill:#1c2023;font-size:11px;font-weight:700}.academy .dd-ecu-part .sub{fill:#3e464b;font-size:9px}.academy .dd-ecu-part .print.light{fill:#e8eef0}.academy .dd-ecu-part .sub.light{fill:#aeb8bd}.academy .dd-ecu-part .tag{fill:var(--muted,#5f696f);font-size:9px;font-weight:700}.academy .dd-ecu-part .tag.light{fill:#8c979d}.academy .dd-ecu-part .sticker rect{fill:#f4f5f0;stroke:#c9ccc2}.academy .dd-ecu-part .sticker line{stroke:#1c2023}.academy .dd-ecu-part .ear circle:first-child,.academy .dd-ecu-part .cast{fill:#9ea7ac;stroke:#5f696f;stroke-width:1.5px}.academy .dd-ecu-part .cast-top{fill:#bac2c6}.academy .dd-ecu-part .fin{fill:#d5dbde;stroke:#8a949a;stroke-width:1px}.academy .dd-ecu-part .tab{fill:#2a2f33;stroke:#0e1012}.academy .dd-ecu-part .housing{fill:#2a2f33;stroke:#0e1012;stroke-width:1.5px}.academy .dd-ecu-part .cover{fill:#3a4146}.academy .dd-ecu-part .rib{stroke:#4c555b;stroke-width:3px;stroke-linecap:round}.academy .dd-ecu-part .clip{fill:#4c555b}.academy .dd-ecu-part.sensor .ear{fill:#2a2f33;stroke:#0e1012}.academy .dd-ecu-part .mould{fill:#22272a;stroke:#0e1012;stroke-width:1.5px}.academy .dd-ecu-part .mould-top{fill:#30373b}.academy .dd-ecu-part .boot{fill:#15181a}.academy .dd-ecu-part .cable{fill:none;stroke:#15181a;stroke-width:7px;stroke-linecap:round}.academy .dd-ecu-part .extrusion{fill:#a9b2b7;stroke:#5f696f;stroke-width:1.5px}.academy .dd-ecu-part .groove{stroke:#8a949a;stroke-width:1.2px}.academy .dd-ecu-part .endplate{fill:#2a2f33}.academy .dd-ecu-part .panel{fill:#1c2023;stroke:#0e1012}.academy .dd-ecu-part .lamp circle{fill:#30373b;stroke:#0e1012}.academy .dd-ecu-part .lamp text{fill:#2a2f33;font-size:8px;font-weight:700}.academy .dd-ecu-part .lamp.pwr.lit circle{fill:#3be37f;filter:drop-shadow(0 0 3px #3be37f)}.academy .dd-ecu-part .lamp.can.lit circle{fill:#ffc233;filter:drop-shadow(0 0 3px #ffc233)}.academy .dd-ecu-part .cast.dark{fill:#6f787d;stroke:#3e464b}.academy .dd-ecu-part .cast-top.dark{fill:#858e93}.academy .dd-ecu-part .boss{fill:#9aa3a8;stroke:#5f696f;stroke-width:1px}.academy .dd-ecu-part .mount circle:first-child{fill:#15181a;stroke:#3e464b;stroke-width:2px}.academy .dd-ecu-part .conn .shell,.academy .dd-ecu-part .back .shell{stroke:#0e1012;stroke-width:1.2px}.academy .dd-ecu-part :is(.conn,.back):is(.sealed,.bolted,.pwr) .shell{fill:#1c2023}.academy .dd-ecu-part :is(.conn,.back).grey .shell{fill:#9aa3a8}.academy .dd-ecu-part :is(.conn,.back).blue .shell{fill:#3c6fb6}.academy .dd-ecu-part :is(.conn,.back).green .shell{fill:#3e8e5a}.academy .dd-ecu-part :is(.conn,.back).inline .shell{fill:#8c979d;stroke:#3e464b}.academy .dd-ecu-part .back .lever{fill:#6b747a}.academy .dd-ecu-part .back .latch{fill:#d7dde0;stroke:#0e1012;stroke-width:1px}.academy .dd-ecu-part .back .bolt circle{fill:#b8c2c7;stroke:#0e1012;stroke-width:1.2px}.academy .dd-ecu-part .back .bolt .hex{fill:#8c979d;stroke:#3e464b;stroke-width:1px}.academy .dd-ecu-part .conn .bolt-hole{fill:#0e1012;stroke:#5f696f;stroke-width:1px}.academy .dd-ecu-part .back .nut{fill:#8c979d;stroke:#3e464b}.academy .dd-ecu-part .conn .ring{fill:#c9d0d3;stroke:#5f696f;stroke-width:1.5px}.academy .dd-ecu-part .conn .face{fill:#1c2023}.academy .dd-ecu-part .cav{fill:#4e585e}.academy .dd-ecu-part .conn.grey .cav:not(.used),.academy .dd-ecu-part .conn.blue .cav:not(.used),.academy .dd-ecu-part .conn.green .cav:not(.used),.academy .dd-ecu-part .conn.inline .cav:not(.used){fill:#2a2f33}.academy .dd-ecu-part .cav.used{fill:#e0b84e;stroke:#3a2e0e;stroke-width:1px}.academy .dd-ecu-part .back .rib{stroke:#6b747a;stroke-width:1.5px}.academy .dd-ecu-part .back .knurl{fill:#b8c2c7;stroke:#5f696f}.academy .dd-ecu-part .back .knurl-line{stroke:#7d878c;stroke-width:1px}.academy .dd-ecu-part .back .boot{fill:#2a2f33}.academy .dd-ecu-part .back .cable{stroke:#15181a;stroke-width:5px;stroke-linecap:round}.academy .dd-ecu-part .loom rect{fill:#22272a;stroke:#0e1012}.academy .dd-ecu-part .loom line{stroke:#4e585e;stroke-width:1.2px}.academy .dd-ecu-part .wires path{fill:none;stroke-width:2px;stroke-linecap:round}.academy .dd-ecu-part .wires .tape-wrap{fill:#22272a;stroke:#0e1012;stroke-width:1px}.academy .dd-ecu-part .wires .tape-line{stroke:#4e585e;stroke-width:1px}.academy .dd-ecu-part .wires .w0{stroke:#d7322a}.academy .dd-ecu-part .wires .w1{stroke:#15181a}.academy .dd-ecu-part .wires .w2{stroke:#c9a400}.academy .dd-ecu-part .wires .w3{stroke:#2e7d4f}.academy .dd-ecu-part .breakout .lead{fill:none;stroke-width:2.2px;stroke-linecap:round}.academy .dd-ecu-part .breakout .term{fill:#e0b84e;stroke:#3a2e0e;stroke-width:1px}.academy .dd-ecu-part .breakout .pos .lead{stroke:#d7322a}.academy .dd-ecu-part .breakout .neg .lead{stroke:var(--ink,#15181a)}.academy .dd-ecu-part .breakout .wake .lead{stroke:#e07a1f}.academy .dd-ecu-part .breakout .canH .lead{stroke:#c9a400}.academy .dd-ecu-part .breakout .canL .lead{stroke:#2e7d4f}.academy .dd-ecu-part .names .pin-name{fill:var(--ink,#1c2023);paint-order:stroke;stroke:var(--surface,#fff);stroke-width:3.5px;stroke-linejoin:round;font-size:10px;font-weight:700}.academy .dd-ecu-gallery{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.academy .dd-ecu-gallery figure{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-content:start;gap:6px;margin:0;padding:12px;display:grid}.academy .dd-ecu-gallery svg{width:100%;height:auto;max-height:300px;display:block}.academy .dd-ecu-gallery figcaption{color:var(--ink);gap:2px;font-size:13px;display:grid}.academy .dd-ecu-gallery figcaption code{font:11px var(--mono);color:var(--muted)}.academy .dd-ecu-gallery figcaption span{color:var(--muted)}.academy .dd-ecu-gallery figcaption .count{font:11px var(--mono)}.academy .dd-ecu-part .stub .wire{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.academy .dd-ecu-part .stub.pos .wire{stroke:#d7322a}.academy .dd-ecu-part .stub.neg .wire{stroke:var(--ink,#15181a)}.academy .dd-ecu-part .stub .sym{stroke:var(--ink,#15181a);stroke-width:2px;stroke-linecap:round}.academy .dd-ecu-part .stub.pos .sym{stroke:#d7322a}.academy .dd-ecu-part .stub .sym-name{fill:#d7322a;font-size:9px;font-weight:700}.academy .dd-meter{font-variant-numeric:tabular-nums;background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;container-type:inline-size}.academy .dd-meter-ask{color:var(--muted);margin:0;font-size:13px}.academy .dd-meter-bench{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:10px;display:grid}.academy .dd-meter-pins{background:var(--surface);border:1px solid var(--line);-webkit-tap-highlight-color:transparent;border-radius:10px;width:100%;height:auto;display:block}.academy .dd-meter-lbl{font:600 11px var(--mono);fill:var(--muted)}.academy .dd-meter-node rect{fill:var(--sunk);stroke:var(--line);stroke-width:1.5px}.academy .dd-meter-node text{font:600 13px var(--mono);fill:var(--muted)}.academy .dd-meter-body{fill:var(--sunk);stroke:var(--line);stroke-width:1.5px}.academy .dd-meter-pin{cursor:pointer;outline:none}.academy .dd-meter-hit{fill:#0000}.academy .dd-meter-socket{fill:var(--surface);stroke-width:3px}.academy .dd-meter-socket.empty{fill:var(--accent-soft);animation:1.6s ease-in-out infinite dd-meter-pulse}.academy .dd-meter-pin:hover .dd-meter-hit{fill:var(--accent-soft)}.academy .dd-meter-pin:focus-visible .dd-meter-hit{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2px}.academy .dd-meter-probe path{fill:none;stroke-width:3px;stroke-linecap:round}.academy .dd-meter-probe circle{stroke:var(--surface);stroke-width:2px}.academy .dd-meter-probe.red path{stroke:var(--bad)}.academy .dd-meter-probe.red circle{fill:var(--bad)}.academy .dd-meter-probe.black path{stroke:var(--ink)}.academy .dd-meter-probe.black circle{fill:var(--ink)}.academy .dd-meter-term line{stroke:var(--ink);stroke-width:2px}.academy .dd-meter-term rect{fill:var(--surface);stroke:var(--ink);stroke-width:2px}.academy .dd-meter-term.mid rect{stroke:var(--warn);stroke-width:2.5px}.academy .dd-meter-short rect{fill:var(--bad)}.academy .dd-meter-short text{font:600 11px var(--mono);fill:var(--bad)}@keyframes dd-meter-pulse{50%{fill-opacity:.35}}.academy .dd-meter-dmm{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:8px;min-width:0;padding:10px;display:grid}.academy .dd-meter-lcd{background:var(--sunk);border:1px solid var(--line);border-radius:8px;justify-content:flex-end;align-items:baseline;gap:6px;padding:8px 10px;display:flex}.academy .dd-meter-lcd b{font:600 28px/1.1 var(--mono);white-space:nowrap}.academy .dd-meter-lcd span{font:600 15px var(--mono);color:var(--muted)}.academy .dd-meter-lcd.ol b{color:var(--warn)}.academy .dd-meter-modes{grid-template-columns:1fr 1fr;gap:6px;display:grid}.academy .dd-meter-modes .btn{touch-action:manipulation;justify-content:center;min-height:38px}.academy .dd-meter-modes .btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.academy .dd-meter-power{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.academy .dd-meter-power i{background:var(--ok);border-radius:50%;flex:none;width:8px;height:8px}.academy .dd-meter-power.off i{background:var(--muted)}.academy .dd-meter-probes{grid-template-columns:1fr 1fr;gap:6px;display:grid}.academy .dd-meter-probes .btn{touch-action:manipulation;justify-items:start;gap:3px;min-height:38px;padding:5px 8px;display:grid}.academy .dd-meter-probes .btn[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.academy .dd-meter-at{font:11px var(--mono);color:var(--ink)}.academy .dd-meter-chip{font:600 10px/1 var(--body);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:3px 6px}.academy .dd-meter-chip.red{background:var(--bad);color:var(--surface)}.academy .dd-meter-chip.black{background:var(--ink);color:var(--surface)}.academy .dd-meter-read{font:12px var(--mono);color:var(--muted);margin:0}.academy .dd-meter-answers{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.academy .dd-meter-answers .btn{text-align:left;white-space:normal;touch-action:manipulation;justify-content:flex-start;min-height:38px}.academy .dd-meter-answers .btn:disabled{opacity:.6}.academy .dd-meter-answers .btn.right{opacity:1;border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--surface))}.academy .dd-meter-answers .btn.wrong{opacity:1;border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.academy .dd-meter-why{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--ok);border-radius:10px;justify-items:start;gap:8px;padding:8px 10px;font-size:13px;display:grid}.academy .dd-meter-why.wrong{border-left-color:var(--bad)}.academy .dd-meter-why p{margin:0}@container (width<=460px){.academy .dd-meter-bench{grid-template-columns:minmax(0,1fr)}.academy .dd-meter-lcd b{font-size:24px}}@media (prefers-reduced-motion:reduce){.academy .dd-meter-socket.empty{animation:none}}@media (width<=820px){.academy .hm-art:has(.dd-meter){order:0;max-width:none}}.academy .dd-psu{font-variant-numeric:tabular-nums;background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;container-type:inline-size}.academy .dd-psu-ask{color:var(--muted);margin:0;font-size:13px}.academy .dd-psu-lead,.academy .dd-psu-halo{fill:none;stroke-linecap:round}.academy .dd-psu-halo{stroke:var(--sunk);stroke-width:8px}.academy .dd-psu-lead{stroke-width:4.5px}.academy .dd-psu-lead.pos{stroke:#d7322a}.academy .dd-psu-lead.neg{stroke:#15181a}.academy .dd-psu-spec{font:600 10px var(--mono);fill:var(--muted)}.academy .dd-psu-wake{cursor:pointer;outline:none}.academy .dd-psu-wake .hit{fill:#0000}.academy .dd-psu-wake:hover .hit,.academy .dd-psu-wake:focus-visible .hit{fill:var(--accent-soft)}.academy .dd-psu-wake:focus-visible .hit{stroke:var(--accent);stroke-width:2px}.academy .dd-psu-wake .jumper{fill:none;stroke:#2f6fd0;stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:5 4}.academy .dd-psu-wake.on .jumper{stroke-dasharray:none}.academy .dd-psu-wake .tap{font:600 10px var(--mono);fill:var(--accent)}.academy .dd-psu-spark{fill:none;stroke:#fff;stroke-opacity:.55;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:3 9;animation:.8s linear infinite dd-psu-flow}.academy .dd-psu-spark.neg{animation-direction:reverse}@keyframes dd-psu-flow{to{stroke-dashoffset:-24px}}.academy .dd-psu-front{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.academy .dd-supply .case{fill:#1c2023;stroke:#0e1012;stroke-width:2px}.academy .dd-supply .bezel{fill:#262b2f;stroke:#343b40;stroke-width:1px}.academy .dd-supply .brand{font:700 10px var(--mono);letter-spacing:.14em;fill:#d7dde0}.academy .dd-supply .model{font:10px var(--mono);fill:#8c979d}.academy .dd-supply .screen{fill:#07090a;stroke:#000;stroke-width:1.5px}.academy .dd-supply .set{font:700 9px var(--mono);letter-spacing:.1em;fill:#8c979d}.academy .dd-supply .readout .digits,.academy .dd-supply .readout .ghost{font:700 36px/1 var(--mono);letter-spacing:.04em}.academy .dd-supply .readout.small .digits,.academy .dd-supply .readout.small .ghost{font-size:26px}.academy .dd-supply .readout .ghost{opacity:.09}.academy .dd-supply .readout .unit{font:700 13px var(--mono)}.academy .dd-supply .readout.v{fill:#ff4d3a}.academy .dd-supply .readout.a{fill:#3be37f}.academy .dd-supply .readout.w{fill:#ffc233}.academy .dd-supply .readout .digits{filter:drop-shadow(0 0 3px)}.academy .dd-supply .readout.v .digits{color:#ff4d3a}.academy .dd-supply .readout.a .digits{color:#3be37f}.academy .dd-supply .readout.w .digits{color:#ffc233}.academy .dd-supply .readout.dim .digits{opacity:.55;filter:none}.academy .dd-supply .lamp circle{fill:#30373b;stroke:#0e1012}.academy .dd-supply .lamp text{font:700 10px var(--mono);fill:#8c979d}.academy .dd-supply .lamp.cv.lit circle{fill:#3be37f;filter:drop-shadow(0 0 4px #3be37f)}.academy .dd-supply .lamp.cc.lit circle{fill:#ff4d3a;filter:drop-shadow(0 0 4px #ff4d3a)}.academy .dd-supply .lamp.out.lit circle{fill:#ffc233;filter:drop-shadow(0 0 4px #ffc233)}.academy .dd-supply .lamp.lit text{fill:#e8eef0}.academy .dd-supply .knob{cursor:ns-resize;touch-action:none;outline:none}.academy .dd-supply .knob .hit{fill:#0000}.academy .dd-supply .knob:focus-visible .hit{stroke:var(--accent);stroke-width:2px}.academy .dd-supply .knob .klabel{font:700 9px var(--mono);letter-spacing:.12em;fill:#d7dde0}.academy .dd-supply .knob .tick{stroke:#8c979d;stroke-width:1.2px}.academy .dd-supply .knob .skirt{fill:#0e1012;stroke:#4a5257;stroke-width:1.5px}.academy .dd-supply .knob .pointer{stroke:#f2f4f5;stroke-width:3px;stroke-linecap:round}.academy .dd-supply .knob .kval{font:600 10px var(--mono);fill:#b8c2c7}.academy .dd-supply .key{cursor:pointer;outline:none}.academy .dd-supply .key rect{fill:#3a4146;stroke:#0e1012;stroke-width:1.5px}.academy .dd-supply .key text{font:700 11px var(--mono);letter-spacing:.08em;fill:#e8eef0}.academy .dd-supply .key .led{fill:#4a5257}.academy .dd-supply .key.on rect{fill:#4b3a16}.academy .dd-supply .key.on .led{fill:#ffc233;filter:drop-shadow(0 0 4px #ffc233)}.academy .dd-supply .key:hover rect{stroke:#8c979d}.academy .dd-supply .key:focus-visible rect{stroke:var(--accent);stroke-width:2.5px}.academy .dd-supply .post circle{stroke:#0e1012;stroke-width:1.5px}.academy .dd-supply .post.pos circle{fill:#d7322a}.academy .dd-supply .post.gnd circle{fill:#2e9a4e}.academy .dd-supply .post.neg circle{fill:#15181a;stroke:#5a6368}.academy .dd-supply .post .hole{fill:#c9a54a}.academy .dd-supply .post text{font:700 10px var(--mono);fill:#d7dde0}.academy .dd-psu-read{font:12px var(--mono);color:var(--muted);margin:0}.academy .dd-psu-answers{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.academy .dd-psu-answers .btn{text-align:left;white-space:normal;touch-action:manipulation;justify-content:flex-start;min-height:38px}.academy .dd-psu-answers .btn:disabled{opacity:.6}.academy .dd-psu-answers .btn.right{opacity:1;border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--surface))}.academy .dd-psu-answers .btn.wrong{opacity:1;border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.academy .dd-psu-why{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--ok);border-radius:10px;justify-items:start;gap:8px;padding:8px 10px;font-size:13px;display:grid}.academy .dd-psu-why.warn{border-left-color:var(--warn)}.academy .dd-psu-why.wrong{border-left-color:var(--bad)}.academy .dd-psu-why p{margin:0}@media (prefers-reduced-motion:reduce){.academy .dd-psu-spark{animation:none}}@media (width<=820px){.academy .hm-art:has(.dd-psu){order:0;max-width:none}}.academy .dd-supply{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.academy .dd-supply .readout.tiny .digits,.academy .dd-supply .readout.tiny .ghost{font-size:20px}.academy .dd-supply .readout.tiny .unit{font-size:11px}.academy .dd-supply-din .rail{fill:#9aa3a8;stroke:#6b757b}.academy .dd-supply-din .body{fill:#d9dddf;stroke:#7c868c;stroke-width:1.5px}.academy .dd-supply-din .plate{fill:#f4f5f6;stroke:#b7bec2}.academy .dd-supply-din .rating{font:700 15px var(--mono);fill:#1c2023}.academy .dd-supply-din .sub{font:600 9px var(--mono);fill:#3a4146}.academy .dd-supply-din .tiny{font:600 7px var(--mono);fill:#3a4146}.academy .dd-supply-din .screw rect{fill:#2b3034}.academy .dd-supply-din .screw circle{fill:#b7bec2;stroke:#5f696f}.academy .dd-supply-din .screw line{stroke:#3a4146;stroke-width:1.5px}.academy .dd-supply-din .screw text{font:700 9px var(--mono);fill:#1c2023}.academy .dd-supply-din .screw.pos text{fill:#b3261e}.academy .dd-supply-din .ok{fill:#7c868c}.academy .dd-supply-din .ok.lit{fill:#3be37f;filter:drop-shadow(0 0 4px #3be37f)}.academy .dd-supply-din .trim{fill:#e8eef0;stroke:#5f696f}.academy .dd-psulib{background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;container-type:inline-size}.academy .dd-psulib-row{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr) minmax(0,.66fr);align-items:end;gap:10px;display:grid}.academy .dd-psulib figure{gap:6px;min-width:0;margin:0;display:grid}.academy .dd-psulib figcaption{color:var(--muted);font-size:12px}.academy .dd-psulib figcaption b{color:var(--ink)}@container (width<=520px){.academy .dd-psulib-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.academy .dd-psulib figure:first-child{grid-column:1/-1}}.academy .dd-scope{background:var(--sunk);border:1px solid var(--line);color:var(--ink);font-variant-numeric:tabular-nums;border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;position:relative}.academy .dd-scope-ctl{flex-wrap:wrap;gap:8px 16px;display:flex}.academy .dd-scope-row{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.academy .dd-scope-k{font:600 11px var(--body);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);min-width:2.6em}.academy .dd-scope-hex{align-items:center;gap:2px;display:inline-flex}.academy .dd-scope-hex button,.academy .dd-scope-dlc{border:1px solid var(--line);background:var(--surface);height:30px;color:var(--ink);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none}.academy .dd-scope-step{min-width:26px;font:16px/1 var(--body);border-radius:7px;padding:0 6px}.academy .dd-scope-hex .dd-scope-dig{width:24px;font:600 15px/1 var(--mono);color:var(--accent);border-radius:5px;padding:0}.academy .dd-scope-dlc{font:12px var(--body);color:var(--muted)}.academy .dd-scope-hex button:hover,.academy .dd-scope-dlc:hover{border-color:var(--accent)}.academy .dd-scope-hex button:focus-visible,.academy .dd-scope-dlc:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.academy .dd-scope-hex button:disabled{opacity:.4;cursor:default;border-color:var(--line)}.academy .dd-scope-bar{font:11px var(--mono);color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin-bottom:-4px;display:flex}.academy .dd-scope-bar span{align-items:center;gap:5px;display:inline-flex}.academy .dd-scope-bar i{border-radius:2px;width:12px;height:3px}.academy .dd-scope-bar i.h{background:var(--canh)}.academy .dd-scope-bar i.l{background:var(--canl)}.academy .dd-scope-bar i.s{background:var(--warn);opacity:.6;width:8px;height:10px}.academy .dd-scope-n{font:600 13px var(--mono);color:var(--ink);border-radius:4px;padding:1px 4px}.academy .dd-scope-pop{animation:1.2s ease-out dd-scope-pop}@keyframes dd-scope-pop{0%,40%{background:var(--warn);color:var(--surface)}to{background:0 0}}@media (prefers-reduced-motion:reduce){.academy .dd-scope-pop{color:var(--warn);animation:none}}.academy .dd-scope-ask{color:var(--muted);margin:-4px 0 0;font-size:13px}.academy .dd-scope-sr{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.academy .dd-scope-screen{background:var(--surface);border:1px solid var(--line);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:10px;min-width:0;max-width:100%;overflow:auto hidden}.academy .dd-scope-screen canvas{display:block}.academy .dd-scope-read{color:var(--muted);gap:3px;margin:0;font-size:13px;display:grid}.academy .dd-scope-read>span:first-child{font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.academy .dd-scope-read b{color:var(--ink);font-weight:600}.academy .dd-scope-fault.warn{color:var(--warn)}.academy .dd-scope-fault.bad{color:var(--bad);font-weight:600}.academy .dd-scope-btns{align-items:center}.academy .dd-scope-btns .btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}.academy .dd-scope-wiring{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.academy .dd-scope-wiring .dd-scope-k{min-width:0}.academy .dd-scope-chip{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--ink);font:13px var(--body);cursor:pointer;touch-action:manipulation;border-radius:999px;padding:0 10px}.academy .dd-scope-chip:hover{border-color:var(--accent)}.academy .dd-scope-chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);font-weight:600}.academy .dd-scope-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (width<=820px){.academy .hm-art:has(.dd-scope){order:0;max-width:none}}.academy .dd-tile{min-width:0;position:relative}.academy .dd-stats{color:var(--muted);margin:8px 2px 0;font-size:12px}.academy .dd-stats b{color:var(--ink);font-weight:600}.academy .dd-ecu{font-variant-numeric:tabular-nums;background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid;container-type:inline-size}.academy .dd-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .dd-head b{font-family:var(--display);font-size:15px}.academy .dd-demo{font:600 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;background:var(--accent);color:var(--accent-ink);border-radius:5px;padding:4px 6px}.academy .dd-rate{font:12px var(--mono);color:var(--muted);align-items:center;gap:6px;margin-left:auto;display:flex}.academy .dd-rate i{background:var(--ok);border-radius:50%;width:8px;height:8px;animation:1s steps(2,start) infinite dd-blink}.academy .dd-rate i.off{background:var(--muted);animation:none}@keyframes dd-blink{to{visibility:hidden}}.academy .dd-dash{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.academy .dd-gauge{background:var(--surface);border:1px solid var(--line);border-radius:10px;gap:2px;min-width:0;padding:6px 10px;display:grid}.academy .dd-gauge span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.academy .dd-gauge b{font:600 18px/1.2 var(--mono);white-space:nowrap}.academy .dd-rpm b{font-size:22px}.academy .dd-bar{background:var(--line);border-radius:3px;height:5px;overflow:hidden}.academy .dd-bar div{background:var(--accent);height:100%;transition:width .1s linear}.academy .dd-lamp{text-align:center;border:1px solid var(--line);background:var(--surface);min-width:46px;font:600 10px/1.2 var(--body);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);opacity:.7;border-radius:10px;place-items:center;padding:0 6px;display:grid}.academy .dd-lamp.lit{background:var(--bad);border-color:var(--bad);color:#fff;opacity:1}.academy .dd-trace{border-collapse:collapse;width:100%;font:13px var(--mono);background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden}.academy .dd-trace th{font:600 11px var(--body);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:left;border-bottom:1px solid var(--line);padding:6px 8px}.academy .dd-trace td{white-space:nowrap;padding:6px 8px}.academy .dd-trace tbody tr{cursor:pointer;border-top:1px solid var(--line)}.academy .dd-trace tbody tr:first-child{border-top:0}.academy .dd-trace tbody tr:hover{background:var(--sunk)}.academy .dd-trace tbody tr.sel{background:var(--accent-soft)}.academy .dd-trace tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.academy .dd-id{color:var(--accent);font-weight:600}.academy .dd-wide{color:var(--muted);font-size:12px}.academy .dd-data span{text-align:center;border-radius:3px;width:2.2ch;margin-right:.55ch;display:inline-block}.academy .dd-data span.na{color:var(--muted);opacity:.6}.academy .dd-data span.chg{color:var(--warn);font-weight:600}.academy .dd-cyc{color:var(--muted);text-align:right}.academy .dd-ecu .s0{--sc:var(--accent)}.academy .dd-ecu .s1{--sc:var(--canh)}.academy .dd-ecu .s2{--sc:var(--canl)}.academy .dd-ecu .s3{--sc:var(--ok)}.academy .dd-data span{box-shadow:inset 0 -2px 0 var(--sc,transparent)}.academy .dd-hint{color:var(--muted);margin:0;font-size:13px}.academy .dd-decode{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13px}.academy .dd-decode p{color:var(--muted);margin:0 0 6px}.academy .dd-decode p b{color:var(--ink);font-family:var(--mono)}.academy .dd-decode ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.academy .dd-decode li{grid-template-columns:10px minmax(0,1fr) auto;align-items:baseline;column-gap:8px;display:grid}.academy .dd-decode .dd-sw{background:var(--sc);border-radius:2px;width:10px;height:10px}.academy .dd-decode .dd-math{font:12px var(--mono);color:var(--muted);grid-column:2}.academy .dd-decode li b{font-family:var(--mono);white-space:nowrap;grid-area:1/3}.academy .dd-ctl{flex-wrap:wrap;gap:8px;display:flex}.academy .dd-ctl .btn{touch-action:manipulation;-webkit-user-select:none;user-select:none}.academy .dd-revbtn.on{filter:brightness(1.15);transform:translateY(1px)}.academy .dd-note{color:var(--muted);margin:0;font-size:12px}@container (width<=520px){.academy .dd-wide{display:none}}@container (width<=420px){.academy .dd-dash{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.academy .dd-rpm{grid-column:1/-1}.academy .dd-trace{font-size:12px}.academy .dd-trace td,.academy .dd-trace th{padding:5px 6px}.academy .dd-data span{margin-right:.35ch}}@media (prefers-reduced-motion:reduce){.academy .dd-rate i{animation:none}.academy .dd-bar div{transition:none}}.academy .dd-run{background:var(--sunk);border:1px solid var(--line);color:var(--ink);border-radius:14px;gap:10px;min-width:0;padding:14px;font-size:14px;display:grid}.academy .dd-run-stage{background:var(--surface);border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.academy .dd-run canvas{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%;height:180px;display:block}.academy .dd-run canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.academy .dd-run-msg{text-align:center;pointer-events:none;color:var(--muted);justify-items:center;gap:4px;font-size:13px;display:grid;position:absolute;inset:34px 16px auto}.academy .dd-run-msg b{color:var(--ink);font-size:15px}@media (width<=820px){:is(.academy .hm-art:has(.dd-ecu),.academy .hm-art:has(.dd-run)){order:0;max-width:none}}.academy .dd-pick{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin:8px 0 0;font-size:12px;display:flex}.academy .dd-pick span{text-align:center;min-width:0}.academy .dd-pick button{border:1px solid var(--line);width:28px;height:28px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;flex:none;font-size:16px;line-height:1}.academy .dd-pick button:hover,.academy .dd-pick button:focus-visible{border-color:var(--accent);color:var(--accent)}.academy .dd-chal{border:1px solid var(--accent);border-radius:10px;gap:6px;padding:8px 10px;font-size:13px;display:grid}.academy .dd-chal p{margin:0}.academy .dd-chal code{font-family:var(--mono);color:var(--accent);font-weight:600}.academy .dd-chal.done{background:color-mix(in srgb,var(--accent) 10%,transparent)}.academy .dd-chal-goal{font-weight:600}.academy .dd-chal-score{color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;font-size:12px;display:grid}.academy .dd-chal-score b{font:600 16px var(--mono);color:var(--ink);text-align:right;min-width:6ch}.academy .dd-chal-math{color:var(--muted);font-size:12px}.academy .dd-best{font:12px var(--mono);color:var(--muted)}.academy .dd-best:before{content:"·";margin-right:6px}.academy .dd-data span.dd-aim{outline:1px dashed var(--accent);outline-offset:1px}.academy .dd-data span.dd-aim.hit{background:var(--ok);color:#fff;outline-color:var(--ok);font-weight:600}.academy .dd-ctl .dd-sec{gap:6px;margin-left:auto;display:flex}.academy .dd-ctl .dd-sec .btn{color:var(--muted);padding:6px 10px;font-size:12.5px}@container (width<=420px){.academy .dd-chal-tail{display:none}}.academy{--bg:#eef2f0;--surface:#fff;--sunk:#e3e9e6;--ink:#14201d;--muted:#56655f;--line:#cfd8d4;--accent:#0b6b57;--accent-ink:#fff;--accent-soft:#d6ebe4;--canh:#b8860b;--canl:#11808f;--hl:#ffe38a;--hl-sent:#f6f1dc;--ok:#1e7a3f;--warn:#a86200;--bad:#b3261e;--display:"IBM Plex Sans Condensed","Arial Narrow",system-ui,sans-serif;--body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--r:10px}@media (prefers-color-scheme:dark){.academy:not([data-theme=light]){--bg:#0d1311;--surface:#151d1a;--sunk:#1b2521;--ink:#e2eae6;--muted:#95a49e;--line:#2a3632;--accent:#3fb896;--accent-ink:#06120e;--accent-soft:#1d3a31;--canh:#f2c230;--canl:#3fc7e0;--hl:#6b5713;--hl-sent:#1f2a22;--ok:#5cc98a;--warn:#f0a848;--bad:#f2766b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.academy[data-theme=dark]{--bg:#0d1311;--surface:#151d1a;--sunk:#1b2521;--ink:#e2eae6;--muted:#95a49e;--line:#2a3632;--accent:#3fb896;--accent-ink:#06120e;--accent-soft:#1d3a31;--canh:#f2c230;--canl:#3fc7e0;--hl:#6b5713;--hl-sent:#1f2a22;--ok:#5cc98a;--warn:#f0a848;--bad:#f2766b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.academy *{box-sizing:border-box}.academy{background:var(--bg);height:100%;color:var(--ink);font:15px/1.55 var(--body);margin:0}.academy button,.academy select,.academy input{font:inherit;color:inherit}.academy :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .app{grid-template-columns:290px minmax(0,1fr);min-height:100%;display:grid}.academy .rail{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:18px;height:100vh;padding:20px 16px 28px;display:flex;position:sticky;top:0;overflow:auto}.academy .brand{flex-direction:column;gap:2px;display:flex}.academy .brand b{font:700 21px/1.1 var(--display);letter-spacing:.01em}.academy .brand span{font:500 11px/1.3 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.academy .progress{font:500 12px var(--mono);color:var(--muted);align-items:center;gap:10px;display:flex}.academy .progress i{background:var(--sunk);border-radius:3px;flex:1;height:6px;display:block;overflow:hidden}.academy .progress i b{background:var(--accent);width:0;height:100%;transition:width .4s;display:block}.academy .trk{border:1px solid var(--line);background:var(--surface);border-radius:10px}.academy .trk.open{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.academy .trk-h{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:28px minmax(0,1fr) 14px;align-items:center;gap:10px;width:100%;padding:10px;display:grid}.academy .trk-h:hover{background:var(--sunk)}.academy .tnum{width:28px;height:28px;font:600 13px var(--mono);background:var(--sunk);color:var(--muted);border-radius:7px;place-items:center;display:grid}.academy .trk.here .tnum{background:var(--accent);color:var(--accent-ink)}.academy .tbody{flex-direction:column;min-width:0;display:flex}.academy .tbody b{font:600 15px/1.25 var(--display)}.academy .tbody small{font:12px var(--mono);color:var(--muted)}.academy .chev{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:8px;height:8px;transition:transform .2s;transform:rotate(-45deg)}.academy .trk.open .chev{transform:rotate(45deg)}.academy .trk-l{flex-direction:column;gap:1px;margin:0;padding:0 6px 8px;list-style:none;display:flex}.academy .trk-l li.soon{color:var(--muted);grid-template-columns:18px minmax(0,1fr) auto;gap:8px;padding:5px 8px;font-size:13.5px;display:grid}.academy .trk-l li.soon:before{content:"";background:var(--line);border-radius:50%;width:6px;height:6px;margin:7px 0 0 4px}.academy .trk-l li.soon .pill{font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;border:1px dashed var(--line);white-space:nowrap;border-radius:4px;align-self:start;margin-top:1px;padding:3px 5px}.academy .lesson-link{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:8px;width:100%;padding:7px 8px;font-weight:500;line-height:1.3;display:grid}.academy .lesson-link:hover{background:var(--sunk)}.academy .lesson-link[aria-current=true]{background:var(--accent-soft)}.academy .lesson-link .dot{border:2px solid var(--accent);border-radius:50%;width:14px;height:14px;margin-top:2px}.academy .lesson-link.done .dot{background:var(--accent)}.academy .lesson-link .t{font-size:14px}.academy .lesson-link .m{font:12px var(--mono);color:var(--muted)}.academy .src{font:500 11px/1 var(--mono);border:1px solid var(--line);color:var(--muted);letter-spacing:.03em;border-radius:4px;padding:4px 6px;display:inline-block}.academy .rail-note{color:var(--muted);border-top:1px solid var(--line);margin-top:auto;padding-top:14px;font-size:12.5px}.academy .mapbtn{display:none}.academy main{flex-direction:column;gap:18px;width:100%;min-width:0;max-width:1560px;padding:24px clamp(16px,3vw,40px) 60px;display:flex}.academy .lesson{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}.academy .lcol,.academy .rcol{flex-direction:column;gap:18px;min-width:0;display:flex}@media (width>=1180px){.academy .lesson{grid-template-columns:minmax(0,1.3fr) minmax(360px,1fr)}.academy .lcol{position:sticky;top:16px}.academy .tx{font-size:16px}}.academy .lesson-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.academy .kicker{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.09em;color:var(--accent)}.academy h1{font:700 clamp(26px,3.4vw,38px)/1.1 var(--display);text-wrap:balance;margin:4px 0 0}.academy .meta{font:13px var(--mono);color:var(--muted);flex-wrap:wrap;gap:14px;display:flex}.academy .stage{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.academy .stage-body{min-height:200px;padding:16px}.academy .stage-cap{border-top:1px solid var(--line);color:var(--muted);background:var(--sunk);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:10px 16px;font-size:13px;display:flex}.academy .stage-cap b{color:var(--ink);font-weight:600}.academy .player{top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 12px;display:flex;position:sticky;box-shadow:0 6px 18px -14px #00000059}.academy .pbtns{align-items:center;gap:6px;display:flex}.academy .ib{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.academy .ib:hover{background:var(--sunk)}.academy .ib svg{fill:currentColor;width:16px;height:16px}.academy .play{background:var(--accent);width:48px;height:48px;color:var(--accent-ink);border-color:var(--accent)}.academy .play:hover{background:var(--accent);filter:brightness(1.08)}.academy .play svg{width:20px;height:20px}.academy .pmeta{flex-direction:column;flex:200px;gap:5px;min-width:0;display:flex}.academy .pmeta .now{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.academy .bar{background:var(--sunk);cursor:pointer;border-radius:3px;height:6px;position:relative}.academy .bar b{background:var(--accent);border-radius:3px;width:0;position:absolute;inset:0 auto 0 0}.academy .popts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .popts label{font:11px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;flex-direction:column;gap:2px;display:flex}.academy .popts select{border:1px solid var(--line);background:var(--surface);border-radius:6px;max-width:200px;padding:4px 6px;font-size:13px}.academy .transcript{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px clamp(16px,3vw,32px)}.academy .transcript h2{font:600 13px var(--mono);text-transform:uppercase;letter-spacing:.09em;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin:0 0 10px;display:flex}.academy .transcript h2 span{text-transform:none;letter-spacing:0;font-family:var(--body);font-weight:400}.academy .tx{max-width:68ch;font-size:16.5px;line-height:1.7}.academy .tx p{border-left:3px solid #0000;border-radius:0 6px 6px 0;margin:0 0 1em -10px;padding:4px 10px;transition:border-color .2s}.academy .tx p.cur{border-left-color:var(--accent)}.academy .tx .s{cursor:pointer;border-radius:4px;transition:background .2s}.academy .tx .s:hover{background:var(--sunk)}.academy .tx .s.cur{background:var(--hl-sent)}.academy .tx .w.cur{background:var(--hl);box-shadow:0 0 0 2px var(--hl);border-radius:3px}.academy .draftnote{color:var(--warn);margin:-2px 0 12px;font-size:13px}.academy .quiz{border-top:1px solid var(--line);flex-direction:column;gap:16px;margin-top:22px;padding-top:18px;display:flex}.academy .q{flex-direction:column;gap:8px;display:flex}.academy .q p{margin:0;font-weight:600}.academy .opts{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.academy .opt{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;padding:9px 12px}.academy .opt:hover{background:var(--sunk)}.academy .opt.right{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .opt.wrong{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.academy .why{color:var(--muted);font-size:14px}.academy .navrow{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.academy .btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;padding:9px 14px}.academy .btn:hover{background:var(--sunk)}.academy .btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.academy .notice{color:var(--warn);font-size:13px}.academy .vis svg{width:100%;height:auto;display:block}.academy .vis text{font-family:var(--body)}.academy .chips{flex-wrap:wrap;gap:6px;display:flex}.academy .chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;padding:5px 11px;font-size:13px}.academy .chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.academy .nv .node rect{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.academy .nv .node text{fill:var(--ink);font-size:19px;font-weight:600}.academy .nv .node .sub{fill:var(--muted);font-size:15px;font-weight:400}.academy .nv .busH{stroke:var(--canh);stroke-width:4px}.academy .nv .busL{stroke:var(--canl);stroke-width:4px}.academy .nv .stub{stroke:var(--muted);stroke-width:2px}.academy .nv .wire{stroke:var(--bad);stroke-width:1.6px;fill:none;opacity:.75}.academy .nv .lbl{font:500 15px var(--mono);fill:var(--muted)}.academy .nv .say{fill:var(--accent);font-size:16px;font-weight:600}.academy .nv .pulse{fill:var(--canh)}.academy .nv .g{transition:opacity .5s}.academy .term{flex-direction:column;gap:14px;display:flex}.academy .term .hl{stroke:var(--canh);stroke-width:3px}.academy .term .ll{stroke:var(--canl);stroke-width:3px}.academy .term .slot{cursor:pointer}.academy .term .slot rect.hit{fill:#0000}.academy .term .slot .res{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px}.academy .term .slot.off .res{stroke-dasharray:4 4;stroke:var(--muted);fill:none}.academy .term .slot.off .rl{fill:var(--muted)}.academy .term .slot .rl{font:500 17px var(--mono);fill:var(--ink)}.academy .term .slot:focus-visible .res{stroke:var(--accent);stroke-width:3px}.academy .term .nodebox{fill:var(--sunk);stroke:var(--line)}.academy .term .nt{fill:var(--ink);font-size:17px}.academy .term .end{font:500 15px var(--mono);fill:var(--muted)}.academy .par{flex-direction:column;gap:14px;display:flex}.academy .par .wire{fill:none;stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.academy .par .lead{stroke:var(--ink);stroke-width:2px;fill:none}.academy .par .res{fill:var(--surface);stroke:var(--ink);stroke-width:1.8px}.academy .par .rl{font:500 16px var(--mono);fill:var(--ink)}.academy .par .slot{cursor:pointer}.academy .par .slot rect.hit{fill:#0000}.academy .par .slot.off .res{stroke-dasharray:4 4;stroke:var(--muted);fill:none}.academy .par .slot.off .rl,.academy .par .slot.off .lead{fill:var(--muted);stroke:var(--muted);opacity:.6}.academy .par .slot .add{font:600 22px var(--mono);fill:var(--muted)}.academy .par .slot:focus-visible .res{stroke:var(--accent);stroke-width:3px}.academy .par .wl{font:500 13px var(--mono);fill:var(--muted)}.academy .par .dot{fill:var(--accent);opacity:.9}.academy .par .mholster{fill:#e0a82e;stroke:#b8861e;stroke-width:2px}.academy .par .mface{fill:#2b3338}.academy .par .mbrand{font:600 7.5px var(--mono);fill:#aeb9b2;letter-spacing:.08em}.academy .par .mbezel{fill:#15191b}.academy .par .mlcd{fill:#b9c7a8}.academy .par .mghost{font:500 36px var(--mono);fill:#1c2416;opacity:.08}.academy .par .mread{font:500 36px var(--mono);fill:#1c2416}.academy .par .mann{font:700 7.5px var(--mono);fill:#3e4c34;letter-spacing:.06em}.academy .par .mbat{fill:none;stroke:#3e4c34;stroke-width:1.2px}.academy .par .mbat2{fill:#3e4c34}.academy .par .mbtn{fill:#3a4348;stroke:#15191b}.academy .par .mbtl{font:600 6.5px var(--mono);fill:#d9e0da}.academy .par .mring{fill:#20262a;stroke:#4a5358;stroke-width:1.5px}.academy .par .mtick{stroke:#aeb9b2;stroke-width:2px}.academy .par .mtick.on{stroke:#f7c46a;stroke-width:3px}.academy .par .mpos{font:600 10.5px var(--mono);fill:#aeb9b2}.academy .par .mpos.on{fill:#f7c46a;font-size:14px}.academy .par .mknob{fill:#3a4348;stroke:#101315;stroke-width:2px}.academy .par .mknurl{fill:none;stroke:#2a3135;stroke-width:3px;stroke-dasharray:3 3.5}.academy .par .mgrip{fill:#56616a;stroke:#101315;stroke-width:1px}.academy .par .mmark{stroke:#f7c46a;stroke-width:4px;stroke-linecap:round}.academy .par .mjl{font:600 10px var(--mono);fill:#aeb9b2}.academy .par .mjack{stroke-width:3px}.academy .par .mjack.red{fill:#15191b;stroke:#d2443a}.academy .par .mjack.blk,.academy .par .mjack.amp{fill:#15191b;stroke:#6b7479}.academy .par .mhole{fill:#000}.academy .par .mplug.red{fill:#d2443a}.academy .par .mplug.blk{fill:#2b3338;stroke:#6b7479;stroke-width:1.5px}.academy .par .mlead{fill:none;stroke-width:3.5px;stroke-linecap:round}.academy .par .mlead.red{stroke:#d2443a}.academy .par .mlead.blk{stroke:#2b3338}.academy .par .mpt{stroke:#9aa3a8;stroke-width:3px;stroke-linecap:round}.academy .par .mprobe.red .mph,.academy .par .mprobe.red .mpg{fill:#d2443a}.academy .par .mprobe.blk .mph,.academy .par .mprobe.blk .mpg{fill:#2b3338}.academy .par-info{background:var(--sunk);border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:14px;display:grid}.academy .par-info>div{flex-direction:column;gap:6px;min-width:0;display:flex}.academy .par-info .cap{font:11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.academy .par-info .verdict,.academy .par .pn{font-size:14px;line-height:1.45}.academy .par .pn b{font:600 26px var(--mono);margin-right:4px}.academy .dmm{color:#e9f0ea;background:#20262a;border:3px solid #e0a82e;border-radius:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:start;gap:12px;padding:14px;display:grid}.academy .dmm>div{flex-direction:column;gap:8px;min-width:0;display:flex}.academy .dmm .lcd{color:#1c2416;font:500 34px/1 var(--mono);text-align:right;letter-spacing:.02em;background:#b9c7a8;border-radius:6px;padding:10px 12px}.academy .dmm .lcd small{margin-left:4px;font-size:14px}.academy .dmm .cap{font:11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#aeb9b2}.academy .dmm .verdict{font-size:13.5px;line-height:1.45}.academy .dmm canvas{background:#0b1014;border-radius:6px;width:100%;height:70px;display:block}.academy .scope{flex-direction:column;gap:12px;display:flex}.academy .scope-frame{background:#1a1f23;border:1px solid #2b343a;border-radius:12px;padding:10px}.academy .scope canvas{background:#0a0e11;border-radius:6px;width:100%;display:block}.academy .sc-controls{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.academy .sc-controls .grp{flex-direction:column;gap:4px;display:flex}.academy .sc-controls .grp>span{font:11px var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.academy .readout{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;display:grid}.academy .ro{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.academy .ro span{font:11px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.academy .ro b{font:500 18px var(--mono);font-variant-numeric:tabular-nums}.academy .ro i{font-size:12px;font-style:normal}.academy .ro i.ok{color:var(--ok)}.academy .ro i.bad{color:var(--bad)}.academy .ro i.warn{color:var(--warn)}.academy .setup{color:var(--muted);flex-wrap:wrap;gap:6px 16px;font-size:13px;display:flex}.academy .setup b{color:var(--ink);font-weight:500;font-family:var(--mono)}.academy .co{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.academy .trace{font:13px/1.4 var(--mono);border:1px solid var(--line);border-radius:8px;overflow:auto}.academy .trace table{border-collapse:collapse;width:100%;min-width:420px}.academy .trace th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line);background:var(--sunk);padding:7px 10px;font-size:11px;font-weight:500}.academy .trace td{border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 10px}.academy .trace tr.row{cursor:pointer}.academy .trace tr.row:hover td{background:var(--sunk)}.academy .trace tr.lit td{background:var(--accent-soft)}.academy .trace tr.sel td{box-shadow:inset 3px 0 0 var(--accent);outline:0}.academy .trace .ty{font-family:var(--body);font-size:12px;font-weight:600}.academy .dec{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.academy .dec h4{font:600 18px var(--display);margin:0}.academy .dec .bits{font:500 14px var(--mono);flex-wrap:wrap;gap:2px;display:flex}.academy .dec .bits span{border-radius:4px;padding:3px 5px}.academy .dec .fc{background:color-mix(in srgb,var(--canh) 30%,transparent);perspective:none;cursor:auto;width:auto;min-height:0;display:inline}.academy .dec .nid{background:color-mix(in srgb,var(--canl) 30%,transparent)}.academy .dec dl{grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:0;font-size:14px;display:grid}.academy .dec dt{color:var(--muted)}.academy .dec dd{font-family:var(--mono);overflow-wrap:anywhere;margin:0;font-size:13px}.academy .dec input{border:1px solid var(--line);background:var(--surface);font-family:var(--mono);border-radius:6px;width:110px;padding:6px 8px}.academy .od{border-collapse:collapse;width:100%;font-size:13px}.academy .od td{border-bottom:1px solid var(--line);padding:4px 6px}.academy .od td:first-child{font-family:var(--mono);white-space:nowrap}.academy .topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.academy .views,.academy .layouts{background:var(--sunk);border-radius:9px;flex-wrap:wrap;align-items:center;gap:2px;padding:3px;display:flex}.academy .views button,.academy .layouts button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:7px;padding:6px 12px;font-size:13.5px}.academy .views button[aria-selected=true],.academy .layouts button[aria-checked=true]{background:var(--surface);color:var(--ink);font-weight:500;box-shadow:0 1px 3px #0000001f}.academy .layouts>span{font:11px var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:0 6px 0 8px}.academy .stage{position:relative}.academy .presenter,.academy .caption{display:none}.academy .btn.txt{font:13px var(--body);text-transform:none;letter-spacing:0;padding:4px 10px;display:none}.academy [data-layout=notebook] .transcript{padding-top:14px}.academy .fig{display:none}.academy [data-layout=presenter] .lesson{max-width:1100px;grid-template-columns:minmax(0,1fr)!important}.academy [data-layout=presenter] .lcol{position:static}.academy [data-layout=presenter] .presenter{background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);z-index:3;border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex;position:absolute;top:14px;right:14px}.academy .av{background:linear-gradient(140deg,var(--accent),color-mix(in srgb,var(--accent) 50%,var(--canl)));width:54px;height:54px;color:var(--accent-ink);font:700 18px var(--display);box-shadow:0 0 0 calc(var(--amp,0)*10px) color-mix(in srgb,var(--accent) 30%,transparent);border-radius:50%;place-items:center;transition:box-shadow 80ms linear;display:grid}.academy .pn{flex-direction:column;line-height:1.2;display:flex}.academy .pn b{font:600 14px var(--display)}.academy .pn small{color:var(--muted);font-size:12px}.academy [data-layout=presenter] .caption{border-top:1px solid var(--line);background:var(--surface);text-align:center;text-wrap:balance;min-height:3.6em;padding:14px 18px;font-size:19px;line-height:1.5;display:block}.academy .caption .w.cur{background:var(--hl);box-shadow:0 0 0 2px var(--hl);border-radius:3px}.academy [data-layout=presenter] .stage-body{padding-top:84px}.academy [data-layout=presenter] .btn.txt{display:inline-block}.academy [data-layout=presenter] .transcript:not(.show) .tx{display:none}.academy .fsbtn{z-index:4;width:auto;height:36px;font:500 13px var(--body);color:var(--ink);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;grid-auto-flow:column;gap:6px;padding:0 12px 0 10px;display:none;position:absolute;top:14px;left:14px}.academy .fsbtn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:16px;height:16px}.academy [data-layout=presenter] .fsbtn{display:grid}.academy .stage.fs{--tp-halo:var(--bg);z-index:40;background:var(--bg);border-radius:0;flex-direction:column;width:100%;height:100%;margin:0;display:flex;position:fixed;inset:0}.academy .stage.fs .stage-body{flex:1;place-items:center;min-height:0;padding:76px 24px 12px;display:grid;overflow:auto}.academy .stage.fs .stage-body>*{width:min(100%,1200px,165dvh - 544.5px)}.academy .stage.fs .caption{min-height:3.4em;padding:18px 28px;font-size:clamp(19px,2.2vw,28px)}.academy .stage.fs .stage-cap{display:none}.academy .stage.fs .player{border:0;border-top:1px solid var(--line);box-shadow:none;padding:10px 18px calc(10px + env(safe-area-inset-bottom,0px));border-radius:0;margin:0;position:static}.academy .stage.fs .fs-on,.academy .stage:not(.fs) .fs-off{display:none}.academy .arb{flex-direction:column;gap:12px;display:flex}.academy .arb-grid{font:500 13px var(--mono);grid-template-columns:minmax(92px,auto) repeat(13,minmax(0,1fr));align-items:stretch;gap:3px;display:grid}.academy .arb-grid .h{color:var(--muted);text-align:center;padding:2px 0;font-size:11px}.academy .arb-grid .h.now{color:var(--accent);font-weight:700}.academy .arb-name{flex-direction:column;justify-content:center;gap:2px;min-width:0;padding-right:6px;display:flex}.academy .arb-name b{font:600 13px var(--body);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.academy .arb-name input{width:74px;font:500 12px var(--mono);border:1px solid var(--line);background:var(--surface);border-radius:5px;padding:2px 5px}.academy .arb-name .st{font:500 11px var(--mono);color:var(--muted)}.academy .arb-name .st.win{color:var(--ok)}.academy .arb-name .st.lost{color:var(--bad)}.academy .bitc{border:1px solid var(--line);background:var(--sunk);height:34px;color:var(--muted);border-radius:5px;place-items:center;transition:background .15s;display:grid}.academy .bitc.d{background:var(--canh);border-color:var(--canh);color:#1b1400}.academy .bitc.r{background:var(--surface);color:var(--ink)}.academy .bitc.fut{opacity:.35}.academy .bitc.lose{outline:3px solid var(--bad);outline-offset:-1px}.academy .bitc.ls{background:repeating-linear-gradient(135deg,var(--sunk) 0 5px,transparent 5px 10px);color:var(--muted);border-style:dashed}.academy .arb-grid .bus .bitc.d{background:var(--ink);border-color:var(--ink);color:var(--bg)}.academy .arb-grid .now-col{box-shadow:0 0 0 2px var(--accent)}.academy .arb-say{background:var(--sunk);border-radius:8px;min-height:3.2em;padding:10px 12px;font-size:14.5px}.academy .arb-ctl{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .arb-ctl .btn{padding:6px 12px;font-size:13.5px}.academy .arb-key{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.academy .arb-key i{vertical-align:-2px;border:1px solid var(--line);border-radius:3px;width:12px;height:12px;margin-right:5px;display:inline-block}@media (width<=640px){.academy .arb-grid{grid-template-columns:72px repeat(13,minmax(0,1fr));gap:2px;font-size:10px}.academy .bitc{height:28px}.academy .arb-name input{width:58px}.academy .arb-grid .h{font-size:9px}}.academy .ecl{flex-direction:column;gap:14px;display:flex}.academy .ecl-states{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.academy .ecl-st{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;transition:all .2s;display:flex}.academy .ecl-st b{font:600 15px var(--display)}.academy .ecl-st small{color:var(--muted);font-size:12.5px;line-height:1.35}.academy .ecl-st.on{border-width:2px;padding:9px 11px}.academy .ecl-st.on.s0{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface))}.academy .ecl-st.on.s1{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.academy .ecl-st.on.s2{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,var(--surface))}.academy .ecl-meter{font:500 13px var(--mono);grid-template-columns:44px minmax(0,1fr) 46px;align-items:center;gap:10px;display:grid}.academy .ecl-bar{background:var(--sunk);border-radius:6px;height:22px;position:relative;overflow:visible}.academy .ecl-bar b{background:var(--ok);border-radius:6px;transition:width .18s,background .18s;position:absolute;top:0;bottom:0;left:0}.academy .ecl-bar .tick{background:var(--ink);opacity:.5;width:2px;position:absolute;top:-4px;bottom:-4px}.academy .ecl-bar .tl{font:500 10.5px var(--mono);color:var(--muted);white-space:nowrap;position:absolute;top:26px;transform:translate(-50%)}.academy .ecl-btns{flex-wrap:wrap;gap:8px;display:flex}.academy .ecl-btns .btn{padding:6px 11px;font-size:13.5px}.academy .ecl-log{font:12.5px/1.5 var(--mono);color:var(--muted);background:var(--sunk);border-radius:8px;min-height:5.2em;max-height:7.8em;padding:8px 12px;overflow:auto}.academy .ecl-log div:first-child{color:var(--ink)}@media (width<=640px){.academy .ecl-states{grid-template-columns:1fr}.academy .ecl-st small{display:none}}.academy .tutor{z-index:45;background:var(--surface);border-left:1px solid var(--line);flex-direction:column;width:min(460px,100vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-18px 0 40px -24px #00000073}.academy .tutor[hidden]{display:none}.academy .tu-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.academy .tu-head h2{font:700 20px var(--display);margin:2px 0 0}.academy .tu-body{flex-direction:column;flex:1;gap:12px;padding:14px 16px;display:flex;overflow:auto}.academy .tu-msg{max-width:100%;font-size:15px;line-height:1.55}.academy .tu-msg.me{background:var(--accent-soft);border-radius:12px 12px 2px;align-self:flex-end;max-width:88%;padding:8px 12px}.academy .tu-msg.ai p{margin:0 0 .6em}.academy .tu-msg.ai ul,.academy .tu-msg.ai ol{margin:0 0 .6em;padding-left:1.3em}.academy .tu-msg.ai h4{font:600 15px var(--display);margin:.4em 0 .3em}.academy .tu-msg.ai code{font:13px var(--mono);background:var(--sunk);border-radius:4px;padding:1px 4px}.academy .tu-msg .thinking{color:var(--muted);font-style:italic}.academy .tu-fig{border:1px solid var(--line);background:#fff;border-radius:8px;margin:6px 0 10px;overflow:hidden}.academy .tu-fig img{width:100%;height:auto;display:block}.academy .tu-fig.live{background:var(--surface);padding:8px}.academy .tu-fig figcaption{color:var(--muted);border-top:1px solid var(--line);background:var(--sunk);padding:5px 9px;font-size:12px}.academy .tu-ctx{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 16px 0;font-size:12.5px;display:flex}.academy .tu-ctx q{color:var(--ink);background:var(--hl-sent);text-overflow:ellipsis;white-space:nowrap;quotes:none;border-radius:4px;max-width:100%;padding:1px 6px;overflow:hidden}.academy .tu-sugg{flex-wrap:wrap;gap:6px;padding:8px 16px 0;display:flex}.academy .tu-form{padding:10px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);gap:8px;margin-top:8px;display:flex}.academy .tu-form textarea{resize:none;border:1px solid var(--line);height:44px;max-height:120px;font:15px/1.4 var(--body);background:var(--surface);border-radius:10px;flex:1;padding:10px 12px}.academy .tu-note{color:var(--muted);padding:0 16px 4px;font-size:11.5px}.academy .pillrow{z-index:60;gap:6px;display:flex;position:fixed;transform:translate(-50%)}.academy .pillrow[hidden]{display:none}.academy .pillrow .flagpill{position:static;transform:none}@media (width<=900px){.academy .tutor{border-left:0;border-top:1px solid var(--line);border-radius:16px 16px 0 0;width:100vw;height:86dvh;top:auto}}.academy #practiceView{flex-direction:column;gap:18px;max-width:900px;display:flex}.academy #practiceView[hidden]{display:none}.academy .pr-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;display:grid}.academy .pr-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:8px;padding:16px;display:flex}.academy .pr-card h3{font:600 20px var(--display);margin:0}.academy .pr-card p{color:var(--muted);margin:0;font-size:14.5px}.academy .pr-run{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:14px;max-width:720px;padding:clamp(16px,3vw,28px);display:flex}.academy .pr-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.academy .pr-run .bar{background:var(--sunk);border-radius:3px;height:6px;overflow:hidden}.academy .pr-run .bar b{background:var(--accent);height:100%;display:block}.academy .pr-count{font:12px var(--mono);color:var(--muted)}.academy .pr-q{font:600 clamp(19px,2.4vw,24px)/1.3 var(--display);text-wrap:balance;margin:0}.academy .pr-opts{flex-direction:column;gap:8px;display:flex}.academy .pr-opts .opt{padding:12px 14px;font-size:15.5px}.academy .pr-opts .opt.unsure{color:var(--muted);border-style:dashed}.academy .pr-bars{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:10px;padding:16px;display:flex}.academy .pr-row{grid-template-columns:minmax(120px,220px) minmax(0,1fr) 44px;align-items:center;gap:12px;font-size:14px;display:grid}.academy .pr-bar{background:var(--sunk);border-radius:5px;height:16px;position:relative}.academy .pr-bar b{background:var(--accent);border-radius:4px;position:absolute;top:3px;bottom:3px;left:0}.academy .pr-bar b.low{background:var(--warn)}.academy .pr-bar i.pre{background:color-mix(in srgb,var(--muted) 30%,transparent);border-radius:5px;position:absolute;top:0;bottom:0;left:0}.academy .pr-pct{font:600 13px var(--mono);text-align:right}.academy .pr-key{color:var(--muted);align-items:center;gap:6px;margin:-8px 0 0;font-size:12.5px;display:flex}.academy .pr-key i{background:color-mix(in srgb,var(--muted) 30%,transparent);border-radius:3px;width:14px;height:10px;display:inline-block}.academy .pr-key .sw{background:var(--accent);border-radius:3px;width:14px;height:10px;margin-left:8px;display:inline-block}.academy .pr-delta{font:600 15px var(--mono);color:var(--ok);margin-left:8px}.academy .pr-next{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px}.academy .pr-next h3{font:600 19px var(--display);margin:0 0 6px}.academy .pr-next ul{margin:6px 0 12px;padding-left:1.2em}.academy .linkbtn{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.academy .pr-review summary{cursor:pointer;color:var(--muted)}.academy .fc{cursor:pointer;perspective:1200px;text-align:left;background:0 0;border:0;width:100%;min-height:220px;padding:0;display:block}.academy .fc-in{min-height:220px;transform-style:preserve-3d;transition:transform .45s;display:grid}.academy .fc.flipped .fc-in{transform:rotateY(180deg)}.academy .fc-face{border:1px solid var(--line);background:var(--sunk);backface-visibility:hidden;font:600 clamp(18px,2.2vw,22px)/1.35 var(--display);border-radius:12px;flex-direction:column;grid-area:1/1;justify-content:center;gap:12px;padding:24px;display:flex}.academy .fc-face small{font:12px var(--mono);color:var(--muted)}.academy .fc-back{background:var(--accent-soft);font:15.5px/1.5 var(--body);transform:rotateY(180deg)}.academy .fc-back b{font:600 clamp(18px,2.2vw,21px)/1.3 var(--display)}.academy .fc-acts{justify-content:flex-end;gap:10px;display:flex}.academy .fc-acts[hidden]{display:none}.academy .fc-acts kbd{font:11px var(--mono);border:1px solid var(--line);opacity:.7;border-radius:3px;margin-left:4px;padding:0 4px}.academy .railcheck{text-align:left;border-style:dashed;font-size:13.5px}@media (width<=900px){.academy .pr-row{grid-template-columns:1fr 44px}.academy .pr-row .pr-bar{grid-area:2/1/auto/-1}.academy .railcheck{display:none}.academy .rail.open .railcheck{display:block}}.academy .lv{font:600 9.5px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:4px;padding:3px 5px;display:inline-block}.academy .lv-b{background:color-mix(in srgb,var(--ok) 14%,var(--surface));color:var(--ok)}.academy .lv-i{background:color-mix(in srgb,var(--canl) 16%,var(--surface));color:var(--canl)}.academy .lv-a{background:color-mix(in srgb,var(--canh) 20%,var(--surface));color:var(--canh)}.academy .lvf{flex-wrap:wrap;gap:4px;display:flex}.academy .lvf .chip{padding:3px 9px;font-size:12px}.academy .trk-l li.dim{opacity:.35}.academy .meta .lv{padding:4px 7px;font-size:11px}.academy .flagpill{z-index:60;background:var(--ink);color:var(--bg);font:500 13px var(--body);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:7px 13px 7px 11px;display:inline-flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px -6px #00000073}.academy .flagpill[hidden]{display:none}.academy .flagpill svg,.academy .fl-ico{fill:currentColor;flex:none;width:14px;height:14px}.academy .flagmark{float:right;border:1px solid color-mix(in srgb,var(--warn) 50%,var(--line));background:color-mix(in srgb,var(--warn) 12%,var(--surface));color:var(--warn);font:500 12px var(--mono);cursor:pointer;border-radius:999px;align-items:center;gap:5px;margin:2px 0 4px 10px;padding:1px 9px;display:inline-flex}.academy .fmodal .qcard{width:min(560px,100%)}.academy .fq{border-left:3px solid var(--hl);background:var(--hl-sent);border-radius:0 8px 8px 0;max-height:9em;margin:0;padding:10px 14px;font-size:15px;overflow:auto}.academy .fq.muted{border-left-color:var(--line);background:var(--sunk);color:var(--muted)}.academy .flabel{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 6px}.academy #fNote{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:84px;font:15px/1.45 var(--body);border-radius:8px;padding:10px 12px}.academy .toast{z-index:70;background:var(--ink);color:var(--bg);border-radius:10px;padding:10px 16px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px -10px #00000080}.academy .toast[hidden]{display:none}@media (width<=900px){.academy .toast{bottom:calc(96px + env(safe-area-inset-bottom,0px));text-align:center;max-width:calc(100vw - 32px)}}.academy #flagsView{flex-direction:column;gap:16px;max-width:900px;display:flex}.academy #flagsView[hidden]{display:none}.academy .fl-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.academy .fl-group h3{font:600 18px var(--display);margin:6px 0 10px}.academy .fl-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:10px;margin-bottom:10px;padding:14px 16px;display:flex}.academy .fl-card.done{opacity:.62}.academy .fl-head{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.academy .fl-head img{border-radius:50%;width:22px;height:22px}.academy .fl-kind{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:3px 8px}.academy .fl-kind.k-wrong{background:color-mix(in srgb,var(--bad) 14%,var(--surface));color:var(--bad)}.academy .fl-kind.k-unclear,.academy .fl-kind.k-typo{background:color-mix(in srgb,var(--warn) 14%,var(--surface));color:var(--warn)}.academy .fl-note{white-space:pre-wrap;margin:0}.academy .fl-kind.k-question{background:color-mix(in srgb,var(--canl) 14%,var(--surface));color:var(--canl)}.academy .fl-kind.k-chat{background:var(--sunk);color:var(--ink)}.academy .fl-chat summary{cursor:pointer;color:var(--muted);font-size:14px}.academy .fl-tr{background:var(--bg);border-radius:8px;flex-direction:column;gap:10px;margin-top:10px;padding:10px;display:flex}.academy .fl-acts{flex-wrap:wrap;gap:8px;display:flex}.academy .fl-acts .btn{padding:5px 11px;font-size:13px}.academy .fl-empty{color:var(--muted);border:1px dashed var(--line);border-radius:var(--r);text-align:center;padding:24px}.academy .vcount{background:var(--warn);color:#fff;min-width:18px;font:600 11px/18px var(--mono);text-align:center;border-radius:9px;margin-left:6px;padding:0 5px;display:inline-block}.academy .vcount:empty{display:none}.academy #libView{flex-direction:column;gap:22px;display:flex}.academy #libView[hidden]{display:none}.academy .lib-intro{max-width:70ch;color:var(--muted);margin:0}.academy .lib-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;display:grid}.academy .asset{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;min-width:0;display:flex}.academy .asset header{justify-content:space-between;align-items:start;gap:10px;padding:14px 16px 0;display:flex}.academy .asset h3{font:600 19px var(--display);margin:0}.academy .asset .kind{font:500 10.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.07em;border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:4px;padding:4px 6px}.academy .asset .demo{min-width:0;padding:14px 16px}.academy .asset .desc{color:var(--muted);flex-direction:column;gap:6px;padding:0 16px 14px;font-size:14px;display:flex}.academy .asset .desc b{color:var(--ink);font-weight:500}.academy .asset code{font:12.5px var(--mono);background:var(--sunk);border-radius:4px;padding:1px 5px}.academy .sym svg{width:100%;height:auto;display:block}.academy .voices{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.academy .vbtn{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.academy .vbtn:hover{background:var(--sunk)}.academy .vbtn i{background:var(--accent);width:28px;height:28px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:11px;font-style:normal;display:grid}.academy .vbtn small{color:var(--muted);font-size:12px;display:block}.academy .optbtn{display:none}@media (width<=900px){.academy .player{padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));z-index:20;border-bottom:0;border-radius:16px 16px 0 0;flex-wrap:wrap;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -8px 24px -12px #00000059}.academy .player .pbtns{grid-column:1}.academy .player .pmeta{grid-area:1/2}.academy .player .optbtn{grid-area:1/3;display:grid}.academy .player .popts{grid-column:1/-1;display:none}.academy .player.opts .popts{display:flex}.academy .ib{width:40px;height:40px}.academy main{padding-bottom:150px}}.academy .qmodal{z-index:50;background:#080e0c8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.academy .qmodal[hidden]{display:none}.academy .qcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:16px;width:min(680px,100%);max-height:calc(100% - 32px);padding:22px clamp(16px,3vw,28px);display:flex;overflow:auto;box-shadow:0 20px 60px -20px #00000080}.academy .qhead{justify-content:space-between;align-items:start;gap:12px;display:flex}.academy .qhead h2{font:700 24px/1.15 var(--display);text-wrap:balance;margin:4px 0 0}.academy .qscore{font:500 13px var(--mono);color:var(--muted);white-space:nowrap;margin-top:4px}.academy .qcard .quiz{border:0;margin:0;padding:0}.academy .qfoot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:14px;display:flex}.academy .btn:disabled{opacity:.45;cursor:default}@media (width<=900px){.academy .app{grid-template-columns:1fr}.academy .rail{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.academy .rail .map,.academy .rail .lvf{display:none}.academy .rail.open .map,.academy .rail.open .lvf{display:flex}.academy .mapbtn{align-self:flex-start;display:inline-flex}.academy .term,.academy .co{grid-template-columns:1fr}.academy .rail-note{display:none}.academy .rail.open .rail-note{display:block}}@media (prefers-reduced-motion:reduce){.academy *{transition:none!important;animation:none!important}}.academy :is([data-layout=notebook],[data-layout=interactive]) .lesson{width:100%;max-width:860px;margin:0 auto;grid-template-columns:minmax(0,1fr)!important}.academy :is([data-layout=notebook],[data-layout=interactive]) .lcol{display:none}.academy :is([data-layout=notebook],[data-layout=interactive]) .tx{max-width:none}.academy :is([data-layout=notebook],[data-layout=interactive]) .fig{margin:6px 0 22px;display:block}.academy :is([data-layout=notebook],[data-layout=interactive]) .fig .snap{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:pointer;position:relative;overflow:hidden}.academy :is([data-layout=notebook],[data-layout=interactive]) .fig .snap:after{content:"Click to make this figure live";font:11px var(--mono);color:var(--muted);background:var(--surface);opacity:0;border-radius:4px;padding:2px 6px;transition:opacity .2s;position:absolute;bottom:8px;right:10px}.academy :is([data-layout=notebook],[data-layout=interactive]) .fig .snap:hover:after{opacity:1}.academy :is([data-layout=notebook],[data-layout=interactive]) .fig .snap>*{pointer-events:none}.academy [data-layout=interactive] .lesson{max-width:920px}.academy [data-layout=interactive] .transcript>h2{display:none}.academy [data-layout=interactive] .tx{flex-direction:column;gap:16px;font-size:16.5px;display:flex}.academy [data-layout=interactive] .tx p{margin:0 0 .8em}.academy [data-layout=interactive] .tx p:last-child{margin-bottom:0}.academy [data-layout=interactive] .fig{margin:4px 0 16px}.academy .ix-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;padding:20px 22px;transition:border-color .25s,box-shadow .25s}.academy .ix-card:has(p.cur){border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.academy .ix-h{align-items:baseline;gap:12px;margin:0 0 12px;display:flex}.academy .ix-h .n{font:600 12px var(--mono);color:var(--accent);background:var(--accent-soft);border-radius:6px;flex:none;padding:3px 7px}.academy .ix-h h2{font:650 22px/1.2 var(--display);text-wrap:balance;text-transform:none;letter-spacing:normal;color:var(--ink);margin:0}.academy .ix-story{border-left:4px solid var(--canh);background:color-mix(in srgb,var(--canh) 6%,var(--surface))}.academy .ix-from{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--canh);align-items:center;gap:10px;margin:-2px 0 12px;display:flex}.academy .ix-from i{width:28px;height:28px;font:700 12px var(--display);background:var(--canh);color:var(--surface);border-radius:50%;place-items:center;font-style:normal;display:grid}.academy .ix-hero{background:linear-gradient(135deg,var(--accent-soft),var(--surface) 70%);gap:14px;display:grid}.academy .ix-hero h3,.academy .ix-recap h3{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0}.academy .ix-goals,.academy .ix-take{gap:8px;margin:0;padding:0;list-style:none;display:grid}.academy .ix-goals li,.academy .ix-take li{grid-template-columns:22px minmax(0,1fr);gap:8px;font-size:16px;display:grid}.academy .ix-goals li:before{content:"";border:2px solid var(--accent);border-radius:5px;width:16px;height:16px;margin-top:4px}.academy .ix-take li:before{content:"✓";color:var(--accent);font-weight:700}.academy .ix-toc{flex-wrap:wrap;gap:6px;display:flex}.academy .ix-toc button{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--muted);border-radius:999px;padding:4px 10px;font-size:13px}.academy .ix-toc button:hover{color:var(--ink);border-color:var(--accent)}.academy .ix-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .ix-keys{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.academy .ix-key{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.academy .ix-key b{font:600 22px/1.15 var(--mono);color:var(--ink)}.academy .ix-key span{color:var(--muted);font-size:14px;line-height:1.4}.academy .ix-call{border:1px solid;border-radius:12px;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:14px 16px;font-size:15.5px;line-height:1.55;display:grid}.academy .ix-call .ico{width:26px;height:26px;font:700 14px var(--display);border-radius:50%;place-items:center;display:grid}.academy .ix-call b{font:600 13px var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px;display:block}.academy .ix-tip{background:color-mix(in srgb,var(--canl) 8%,var(--surface));border-color:color-mix(in srgb,var(--canl) 35%,var(--line))}.academy .ix-tip .ico{background:var(--canl);color:var(--surface)}.academy .ix-tip b{color:var(--canl)}.academy .ix-warn{background:color-mix(in srgb,var(--warn) 8%,var(--surface));border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}.academy .ix-warn .ico{background:var(--warn);color:var(--surface)}.academy .ix-warn b{color:var(--warn)}.academy .ix-check{border-style:dashed;border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}.academy .ix-check .k{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.academy .ix-check h4{font:600 18px/1.35 var(--body);margin:6px 0 12px}.academy .ix-check .opts{gap:8px;display:grid}.academy .ix-check .why{margin-top:10px;font-size:15px}.academy .ix-cmp{border-collapse:collapse;width:100%;font-size:15px}.academy .ix-cmp th,.academy .ix-cmp td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 10px}.academy .ix-cmp thead th{font:600 15px var(--display);background:var(--sunk)}.academy .ix-cmp tbody th{color:var(--muted);width:22%;font-weight:500}.academy .ix-cmp td{font-family:var(--body)}.academy .ix-scroll{overflow-x:auto}.academy .ix-recap{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));gap:12px;display:grid}@media (width<=640px){.academy .ix-card{padding:16px}.academy .ix-h h2,.academy .ix-key b{font-size:19px}}.academy #homeView{flex-direction:column;gap:28px;width:100%;max-width:1100px;margin:0 auto;display:flex}.academy #homeView[hidden]{display:none}.academy .app.home{grid-template-columns:minmax(0,1fr)}.academy .app.home .rail{display:none}.academy .hm-hero{background:var(--surface);border:1px solid var(--line);border-radius:18px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:28px;padding:clamp(20px,4vw,44px);display:grid;overflow:hidden}.academy .hm-hero h1{margin:6px 0 12px;font-size:clamp(32px,5vw,54px)}.academy .hm-hero p.lead{color:var(--muted);max-width:46ch;margin:0 0 20px;font-size:18px;line-height:1.55}.academy .hm-cta{flex-wrap:wrap;gap:10px;display:flex}.academy .hm-cta .btn{padding:12px 18px;font-weight:500}.academy .hm-free{color:var(--muted);margin:12px 0 0;font-size:13px}.academy .hm-art svg{width:100%;height:auto;display:block}.academy .hm-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.academy .hm-fact{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.academy .hm-fact b{font:700 26px/1.1 var(--display);display:block}.academy .hm-fact span{color:var(--muted);font-size:13.5px}.academy .hm-sec h2{font:700 clamp(24px,3vw,32px)/1.15 var(--display);margin:0 0 6px}.academy .hm-sec>p{color:var(--muted);max-width:70ch;margin:0 0 16px}.academy .hm-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.academy .hm-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:6px;padding:18px;display:flex}.academy .hm-card .ic{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:10px;place-items:center;margin-bottom:4px;display:grid}.academy .hm-card .ic svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.academy .hm-card h3{font:600 18px/1.25 var(--display);margin:0}.academy .hm-card p{color:var(--muted);margin:0;font-size:14.5px}.academy .hm-mods{gap:10px;display:grid}.academy .hm-mod{background:var(--surface);border:1px solid var(--line);border-radius:14px}.academy .hm-mod summary{cursor:pointer;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:grid}.academy .hm-mod summary::-webkit-details-marker{display:none}.academy .hm-mod summary .tnum{width:34px;height:34px}.academy .hm-mod summary b{font:600 18px var(--display);display:block}.academy .hm-mod summary small{color:var(--muted);font-size:13px}.academy .hm-mod[open] summary{border-bottom:1px solid var(--line)}.academy .hm-ls{margin:0;padding:6px 8px 10px;list-style:none}.academy .hm-ls li{border-radius:8px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.academy .hm-ls li.go{cursor:pointer}.academy .hm-ls li.go:hover{background:var(--sunk)}.academy .hm-ls .t{font-size:15px}.academy .hm-ls .st{font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:5px;padding:4px 7px}.academy .st-free{background:var(--accent);color:var(--accent-ink)}.academy .st-inc{background:var(--sunk);color:var(--muted)}.academy .st-soon{border:1px dashed var(--line);color:var(--muted)}.academy .lk{fill:none;width:14px;height:14px;stroke:var(--muted);stroke-width:2.2px;stroke-linecap:round}.academy .hm-price{background:var(--ink);color:var(--bg);border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:clamp(20px,4vw,40px);display:grid}.academy .hm-price h2{color:var(--bg)}.academy .hm-price>div>p{color:color-mix(in srgb,var(--bg) 75%,transparent);margin:0 0 16px}.academy .hm-price .amt{font:700 48px/1 var(--display)}.academy .hm-price .amt small{font:500 14px var(--body);opacity:.75;margin-left:6px}.academy .hm-price ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.academy .hm-price li{grid-template-columns:20px minmax(0,1fr);gap:8px;display:grid}.academy .hm-price li:before{content:"✓";color:var(--accent);font-weight:700}.academy .hm-price .btn.primary{margin-top:18px;padding:12px 20px}.academy .tbd{font:500 11px/1.4 var(--mono);color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);border:1px dashed var(--warn);border-radius:5px;padding:2px 6px;display:inline-block}.academy .hm-faq details{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:8px;padding:14px 16px}.academy .hm-faq summary{cursor:pointer;font-weight:600}.academy .hm-faq p{color:var(--muted);margin:8px 0 0}.academy .hm-proto{color:var(--muted);border:1px dashed var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.academy .seg{background:var(--sunk);border-radius:8px;padding:2px;display:inline-flex}.academy .seg button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:4px 10px;font-size:13px}.academy .seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:500;box-shadow:0 1px 3px #0000001f}.academy .rail-access{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;display:flex}.academy .brand{cursor:pointer}.academy #lockView{background:var(--surface);border:1px solid var(--line);border-radius:16px;gap:14px;max-width:760px;padding:clamp(20px,4vw,40px);display:grid}.academy #lockView[hidden]{display:none}.academy #lockView .lkbig{background:var(--sunk);border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.academy #lockView .lkbig svg{fill:none;width:24px;height:24px;stroke:var(--ink);stroke-width:2px;stroke-linecap:round}.academy #lockView h2{font:700 26px/1.2 var(--display);margin:0}.academy #lockView p{color:var(--muted);margin:0}.academy .lesson-link .lk{margin-top:2px}.academy .free-tag{font:600 9.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;background:var(--accent);color:var(--accent-ink);border-radius:4px;padding:3px 5px}@media (width<=820px){.academy .hm-hero,.academy .hm-price{grid-template-columns:minmax(0,1fr)}.academy .hm-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.academy .hm-art{order:-1;max-width:420px}}.academy .hm-mod[open] .chev{transform:rotate(45deg)}.academy .pr-areas{flex-wrap:wrap;gap:8px;display:flex}.academy .pr-areas button{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;min-width:130px;padding:10px 16px;display:flex}.academy .pr-areas button b{font:600 17px var(--display)}.academy .pr-areas button small{font:11px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.academy .pr-areas button[aria-selected=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.academy .pr-areas button:disabled{opacity:.55;cursor:not-allowed;border-style:dashed}.academy .pr-probs{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:12px;padding:16px;display:flex}.academy .pr-ph{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.academy .pr-ph h2{font:700 22px var(--display);margin:0}.academy .pr-ph p{color:var(--muted);margin:2px 0 0;font-size:14px}.academy .pr-lvls{flex-wrap:wrap;gap:6px;display:flex}.academy .pr-lvls .lv{padding:5px 7px;font-size:11px}.academy .pr-filt{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.academy .pr-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.academy .pr-list li+li{border-top:1px solid var(--line)}.academy .pr-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:22px minmax(0,1fr) auto auto;align-items:center;gap:12px;width:100%;padding:10px 6px;display:grid}.academy .pr-list button:hover{background:var(--sunk)}.academy .pr-list .pt{text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;overflow:hidden}.academy .pr-list .pm{font:12px var(--mono);color:var(--muted);white-space:nowrap}.academy .ps{width:20px;height:20px;font:700 12px var(--body);border:1.5px solid var(--line);border-radius:50%;place-items:center;display:grid}.academy .ps-ok{background:var(--ok);border-color:var(--ok);color:var(--surface)}.academy .ps-tried{border-color:var(--warn);color:var(--warn)}.academy .pr-empty{color:var(--muted);padding:12px}.academy .pr-run .why{font-size:15px}@media (width<=640px){.academy .pr-list button{grid-template-columns:22px minmax(0,1fr) auto}.academy .pr-list .pm{display:none}.academy .pr-list .pt{white-space:normal}.academy .pr-areas button{flex:1;min-width:0}}.academy #progressView{flex-direction:column;gap:20px;max-width:1000px;display:flex}.academy #progressView[hidden]{display:none}.academy .pg-streak b:after{content:" 🔥";font-size:22px}.academy .pg-stats{grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:10px;display:grid}.academy .pg-stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:2px;padding:14px 16px;display:flex}.academy .pg-stat b{font:700 30px/1.1 var(--display)}.academy .pg-stat b small{color:var(--muted);font-size:16px;font-weight:500}.academy .pg-stat span{color:var(--muted);font-size:13.5px}.academy .pg-week{gap:5px;margin-top:8px;display:flex}.academy .pg-week i{width:26px;height:26px;font:600 11px var(--mono);background:var(--sunk);color:var(--muted);border-radius:7px;place-items:center;font-style:normal;display:grid}.academy .pg-week i.on{background:var(--accent);color:var(--accent-ink)}.academy .pg-sec h2{font:700 24px var(--display);margin:0 0 4px}.academy .pg-sec>p{color:var(--muted);margin:0 0 14px}.academy .pg-badges{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.academy .pg-b{border:1px solid var(--line);background:var(--surface);text-align:center;cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;display:flex;position:relative}.academy .pg-b:hover{border-color:var(--accent)}.academy .pg-b b{font:600 15px/1.2 var(--display)}.academy .pg-b small{color:var(--muted);font-size:12px;line-height:1.35}.academy .pg-b.on small{color:var(--accent);font-weight:600}.academy .pg-b .free-tag{position:absolute;top:8px;right:8px}.academy .pg-certrow{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.academy .pg-reqs{color:var(--muted);gap:6px;margin:0 0 12px;padding:0;font-size:14.5px;list-style:none;display:grid}.academy .pg-reqs li.ok{color:var(--ok);font-weight:500}.academy .pg-name{color:var(--muted);flex-direction:column;gap:4px;margin-bottom:12px;font-size:13px;display:flex}.academy .pg-name input{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:8px 10px;font-size:15px}.academy .cert{aspect-ratio:1.414;color:#14201d;background:#fbf8f1;border-radius:10px;padding:3.2%;box-shadow:0 2px 14px #0000001f;container-type:inline-size}.academy .cert-in{outline-offset:-7px;text-align:center;border:2px solid #0b6b57;border-radius:6px;outline:1px solid #b8860b;flex-direction:column;justify-content:center;align-items:center;gap:1.2cqw;height:100%;padding:4% 6%;display:flex}.academy .cert-top{flex-direction:column;align-items:center;gap:.4cqw;display:flex}.academy .cert-top b{color:#0b6b57;font:700 4.2cqw/1 IBM Plex Sans Condensed,sans-serif}.academy .cert-top span{letter-spacing:.14em;text-transform:uppercase;color:#8a6a10;font:600 2.1cqw/1 IBM Plex Mono,monospace}.academy .cert-k{color:#56655f;margin:0;font:italic 2.2cqw IBM Plex Sans,sans-serif}.academy .cert-name{border-bottom:1px solid #cfd8d4;min-width:50%;padding:0 4% .6cqw;font:700 6.2cqw/1.1 IBM Plex Sans Condensed,sans-serif}.academy .cert-course{font:600 3.4cqw/1.2 IBM Plex Sans Condensed,sans-serif}.academy .cert-mods{color:#56655f;max-width:90%;margin:0;font:1.7cqw/1.4 IBM Plex Mono,monospace}.academy .cert-foot{text-align:left;grid-template-columns:1fr auto 1fr;align-items:end;width:100%;margin-top:1.5cqw;font-size:1.9cqw;display:grid}.academy .cert-foot small{color:#56655f;font-size:1.6cqw;display:block}.academy .cert-foot .sig{color:#0b6b57;border-bottom:1px solid #cfd8d4;padding-right:3cqw;font:italic 600 3.2cqw IBM Plex Sans,serif;display:inline-block}.academy .cert-seal svg{width:9cqw;height:auto}.academy .sh-body{flex-direction:column;gap:14px;display:flex}.academy .sh-badge{align-items:center;gap:16px;display:flex}.academy .sh-badge p{color:var(--muted);margin:0}.academy .sh-acts{flex-wrap:wrap;gap:8px;display:flex}.academy .sh-acts a.btn{color:inherit;text-decoration:none}.academy .sh-note{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.6}.academy .vf-ok{border-color:var(--ok)}.academy .vf-ok .kicker{color:var(--ok)}.academy #shareModal .qcard{max-width:760px}@media (width<=820px){.academy .pg-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.academy .pg-streak{grid-column:1/-1}.academy .pg-certrow{grid-template-columns:minmax(0,1fr)}}.academy .app.norail{grid-template-columns:minmax(0,1fr)}.academy .app.norail .rail{display:none}.academy .topl{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .railtog{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--muted);border-radius:9px;align-items:center;gap:6px;padding:6px 10px;font-size:13.5px;display:inline-flex}.academy .railtog:hover{color:var(--ink);border-color:var(--accent)}.academy .railtog svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:16px;height:16px}.academy .railtog[aria-pressed=true]{color:var(--ink)}.academy .app.home .railtog,.academy .app.offlesson .railtog{display:none}.academy .app.offlesson main{max-width:1160px;margin:0 auto}.academy .app.checkout .topbar{display:none}.academy .co-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.academy .co-bar b{font:700 20px/1 var(--display);letter-spacing:.01em}.academy .co-bar span{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.academy .co-bar svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:14px;height:14px}.academy .pg-grp{border:1px solid var(--line);background:var(--surface);border-radius:12px}.academy .pg-grp+.pg-grp{margin-top:8px}.academy .pg-grp>summary{cursor:pointer;grid-template-columns:34px minmax(0,1fr) auto 14px;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:grid}.academy .pg-grp>summary::-webkit-details-marker{display:none}.academy .pg-grp>summary .tnum{width:34px;height:34px}.academy .pg-grp>summary b{font:600 17px var(--display);display:block}.academy .pg-grp>summary small{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:12.5px;display:flex}.academy .pg-grp>summary small .lv{font-size:10px}.academy .pg-grp[open]>summary{border-bottom:1px solid var(--line)}.academy .pg-grp[open] .chev{transform:rotate(45deg)}.academy .pg-gbar{width:110px;font:600 12px var(--mono);color:var(--muted);flex-direction:column;align-items:flex-end;gap:4px;display:flex}.academy .pg-gbar i{background:var(--sunk);border-radius:3px;width:100%;height:6px;display:block;overflow:hidden}.academy .pg-gbar i b{background:var(--ok);height:100%;display:block}.academy .pg-grp .pr-list{padding:4px 8px 8px}.academy .pr-next-btn{align-self:flex-start}@media (width<=640px){.academy .pg-gbar{width:64px}}.academy #pubView{flex-direction:column;gap:22px;width:100%;max-width:1000px;margin:0 auto;display:flex}.academy #pubView[hidden]{display:none}.academy .co-head{flex-direction:column;gap:12px;display:flex}.academy .co-head h1{text-transform:none;letter-spacing:-.01em;margin:0;font-size:clamp(26px,4vw,38px);line-height:1.1}.academy .co-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:640px;display:grid}.academy .co-tabs button,.academy .co-pays button{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.academy .co-tabs small,.academy .co-pays small{color:var(--muted);font-size:13.5px}.academy .co-tabs button[aria-selected=true],.academy .co-pays button[aria-checked=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.academy .co-pays button:disabled{opacity:.45;cursor:default}.academy .co-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.academy .co-form{flex-direction:column;gap:18px;min-width:0;display:flex}.academy .co-form section{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.academy .co-form h2{font:700 18px/1.2 var(--display);text-transform:none;align-items:center;gap:10px;margin:0;display:flex}.academy .co-form h2 i{font:600 13px var(--mono);background:var(--sunk);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;font-style:normal;display:grid}.academy .co-f{flex-direction:column;gap:4px;min-width:0;font-size:14px;display:flex}.academy .co-f>span{font-weight:500}.academy .co-f em{color:var(--muted);font-style:normal;font-weight:400}.academy .co-f input,.academy .co-f textarea,.academy .co-seats input{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);box-sizing:border-box;border-radius:8px;width:100%;min-width:0;padding:10px 12px;font-size:16px}.academy .co-f input:focus,.academy .co-f textarea:focus,.academy .co-seats input:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.academy .co-f input.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 6%,var(--bg))}.academy .co-f small,.academy .co-fine{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.academy .co-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.academy .co-two[hidden]{display:none}.academy .co-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.academy .co-pays{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.academy .co-seats{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .co-seats input{text-align:center;width:90px}.academy .co-seats .btn{width:42px;padding:8px 0;font-size:18px}.academy .co-seats span{margin-left:8px;font-size:16px}.academy .co-proto{font:500 12px/1.4 var(--mono);color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent);border-radius:6px;padding:6px 10px}.academy .co-who,.academy .co-note{background:var(--sunk);border-radius:10px;margin:0;padding:10px 12px;font-size:14.5px}.academy .co-more summary{cursor:pointer;color:var(--muted);font-size:14px}.academy .co-more[open] summary{margin-bottom:10px}.academy .co-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.academy .co-pay{padding:14px 20px;font-size:17px;font-weight:600}.academy .co-sum{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:10px;padding:18px;display:flex;position:sticky;top:16px}.academy .co-sum h3{font:700 18px/1.25 var(--display);text-transform:none;margin:0}.academy .co-line{justify-content:space-between;gap:12px;font-size:15px;display:flex}.academy .co-tot{border-top:1px solid var(--line);padding-top:10px;font-size:17px}.academy .co-tot small{color:var(--muted);font-size:12px;font-weight:400}.academy .co-sum ul{gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.academy .co-sum li{grid-template-columns:18px minmax(0,1fr);gap:6px;display:grid}.academy .co-sum li:before{content:"✓";color:var(--accent);font-weight:700}.academy .co-h{font:700 18px var(--display);text-transform:none;margin:6px 0 0}.academy .co-next{gap:6px;margin:0;padding-left:22px;font-size:16px;line-height:1.45;display:grid}@media (width<=820px){.academy .co-grid{grid-template-columns:minmax(0,1fr)}.academy .co-sum{order:-1;position:static}}@media (width<=560px){.academy .co-tabs,.academy .co-two,.academy .co-pays{grid-template-columns:minmax(0,1fr)}.academy .co-three{grid-template-columns:repeat(2,minmax(0,1fr))}}.academy .pub-hero{background:var(--surface);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:14px;padding:clamp(20px,4vw,40px);display:flex}.academy .pub-hero h1{text-transform:none;letter-spacing:-.01em;margin:0;font-size:clamp(28px,4.4vw,42px);line-height:1.08}.academy .pub-hero p{max-width:62ch;color:var(--muted);margin:0;font-size:17px;line-height:1.5}.academy .pub-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.academy .pub-row>div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.academy .pub-row b{margin-bottom:4px;font-size:16px;display:block}.academy .pub-row span{color:var(--muted);font-size:14.5px;line-height:1.45}.academy .pub-chal{background:var(--sunk);border-radius:12px;align-items:center;gap:14px;padding:12px 14px;display:flex}.academy .pub-chal img{border-radius:8px;flex:none;width:180px}.academy .pub-chal p{color:var(--ink);font-size:16px}.academy .qz-top{font:500 13px var(--mono);color:var(--muted);align-items:center;gap:12px;display:flex}.academy .qz-bar{background:var(--sunk);border-radius:3px;flex:1;height:6px;overflow:hidden}.academy .qz-bar i{background:var(--accent);height:100%;transition:width .3s;display:block}.academy .qz-q{margin:0;font-size:clamp(19px,2.4vw,23px);font-weight:600;line-height:1.35}.academy .qz-opts{flex-direction:column;gap:8px;display:flex}.academy .qz-opts button{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink);border-radius:10px;padding:12px 14px;font-size:16px}.academy .qz-opts button:hover:not(:disabled){border-color:var(--accent)}.academy .qz-opts button.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .qz-opts button.no{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.academy .qz-why{background:var(--sunk);border-radius:10px;padding:12px 14px;font-size:15.5px;line-height:1.5}.academy .qz-res{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:22px;display:grid}.academy .qz-big{font-size:64px;font-weight:700;line-height:1}.academy .qz-big small{color:var(--muted);font-size:28px;font-weight:500}.academy .qz-mods{flex-direction:column;gap:6px;margin:0;padding:0;font-size:15px;list-style:none;display:flex}.academy .qz-mods li{grid-template-columns:minmax(0,1fr) 90px 36px;align-items:center;gap:8px;display:grid}.academy .qz-mods i{background:var(--sunk);border-radius:3px;height:6px;display:block;overflow:hidden}.academy .qz-mods i b{background:var(--accent);height:100%;display:block}.academy .qz-vs{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-radius:10px;padding:10px 14px;font-size:17px}.academy .og-post{border:1px solid var(--line);background:var(--surface);border-radius:10px;font-size:14px;overflow:hidden}.academy .og-head{align-items:center;gap:10px;padding:10px 12px;display:flex}.academy .og-av{background:var(--sunk);width:36px;height:36px;color:var(--muted);border-radius:50%;place-items:center;font-style:normal;font-weight:600;display:grid}.academy .og-head small{color:var(--muted);font-size:12px;display:block}.academy .og-txt{white-space:pre-line;margin:0;padding:0 12px 10px;line-height:1.45}.academy .og-post img{aspect-ratio:1200/627;background:#0f1a17;width:100%;display:block}.academy .og-meta{background:var(--sunk);padding:8px 12px}.academy .og-meta b{font-size:14px;display:block}.academy .og-meta small{color:var(--muted)}.academy .og-cap{font:500 12px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.academy .pub-cred{background:var(--surface);border:1px solid var(--line);border-radius:18px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:28px;padding:clamp(20px,4vw,40px);display:grid}.academy .pub-cred.is-cert{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.academy .pub-cred .bdg{width:100%;max-width:220px;height:auto;margin:0 auto;display:block}.academy .pub-ok{font:600 12px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ok);border:1px solid var(--ok);border-radius:999px;align-items:center;gap:6px;width:max-content;padding:4px 10px;display:inline-flex}.academy .pub-cred h1{text-transform:none;margin:8px 0 6px;font-size:clamp(24px,3.4vw,34px);line-height:1.1}.academy .pub-cred p{margin:6px 0;line-height:1.5}.academy .pub-earn{background:var(--sunk);border-radius:18px;flex-direction:column;gap:12px;padding:clamp(18px,3.5vw,32px);display:flex}.academy .pub-earn h2{text-transform:none;letter-spacing:0;margin:0;font-size:24px}.academy .pub-earn p{max-width:64ch;margin:0;line-height:1.5}.academy .sh-name{color:var(--muted);flex-direction:column;gap:4px;font-size:14px;display:flex}.academy .sh-name input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:15px}@media (width<=760px){.academy .pub-row,.academy .qz-res,.academy .pub-cred,.academy .pub-cred.is-cert{grid-template-columns:minmax(0,1fr)}.academy .pub-chal{flex-direction:column;align-items:flex-start}.academy .pub-chal img{width:100%}}.academy #teamView{flex-direction:column;gap:20px;max-width:1100px;display:flex}.academy #teamView[hidden]{display:none}.academy .tm-top{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.academy .tm-org{align-items:center;gap:14px;display:flex}.academy .tm-logo{background:var(--ink);width:52px;height:52px;color:var(--bg);font:700 20px var(--display);border-radius:12px;flex:none;place-items:center;display:grid}.academy .tm-org h1{margin:2px 0 0}.academy .tm-org small{color:var(--muted);font-size:14px}.academy .tm-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.academy .tm-col{flex-direction:column;gap:16px;min-width:0;display:flex}.academy .tm-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:16px 18px;display:flex}.academy .tm-card h2{font:700 20px/1.2 var(--display);margin:0}.academy .tm-card>p{color:var(--muted);margin:0;font-size:14.5px}.academy .tm-hd{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.academy .tm-hd small{font:12px var(--mono);color:var(--muted)}.academy .tm-people{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.academy .tm-people li{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 2px;display:grid}.academy .tm-people li+li{border-top:1px solid var(--line)}.academy .tm-av{width:38px;height:38px;font:600 13px var(--display);color:#fff;border-radius:50%;flex:none;place-items:center;display:grid}.academy .tm-av.me{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent)}.academy .tm-who b{font-weight:600;display:block}.academy .tm-who small{color:var(--muted);font-size:13px;line-height:1.35;display:block}.academy .tm-mods{gap:3px;margin-top:5px;display:flex}.academy .tm-mods i{background:var(--sunk);border-radius:3px;width:22px;height:6px;display:block}.academy .tm-mods i.half{background:color-mix(in srgb,var(--accent) 45%,var(--sunk))}.academy .tm-mods i.on{background:var(--accent)}.academy .tm-side{color:var(--muted);text-align:right;flex-direction:column;align-items:flex-end;gap:4px;font-size:12.5px;display:flex}.academy .tm-side .bd{gap:2px;display:flex}.academy .tm-pvt{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border:1px dashed var(--line);border-radius:4px;padding:3px 6px}.academy .tm-tag{font:600 10.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:4px;padding:4px 6px}.academy .tm-tag.gold{background:color-mix(in srgb,var(--canh) 18%,var(--surface));color:var(--canh)}.academy .tm-goal{flex-direction:column;gap:6px;display:flex}.academy .tm-goal b{font:600 17px var(--display)}.academy .tm-bar{background:var(--sunk);border-radius:4px;height:8px;overflow:hidden}.academy .tm-bar i{background:var(--accent);height:100%;display:block}.academy .tm-feed{flex-direction:column;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.academy .tm-feed li{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.academy .tm-feed li .tm-av{width:26px;height:26px;font-size:10px}.academy .tm-feed small{color:var(--muted);white-space:nowrap;font-size:12px}.academy .tm-opt{flex-direction:column;gap:6px;display:flex}.academy .tm-opt label{border:1px solid var(--line);cursor:pointer;border-radius:10px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:8px;padding:10px 12px;display:grid}.academy .tm-opt label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.academy .tm-opt input{accent-color:var(--accent);margin:3px 0 0}.academy .tm-opt b{font-size:14.5px;font-weight:600;display:block}.academy .tm-opt small{color:var(--muted);font-size:13px;line-height:1.4;display:block}.academy .tm-note{color:var(--muted);background:var(--sunk);border-radius:10px;margin:0;padding:10px 12px;font-size:13px;line-height:1.5}.academy .tm-seats{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.academy .tm-seats .big{font:700 34px/1 var(--display)}.academy .tm-seats .big small{color:var(--muted);font-size:18px;font-weight:500}.academy .tm-seats .tm-bar{flex:1;min-width:140px}.academy .tm-inv{flex-wrap:wrap;gap:8px;display:flex}.academy .tm-inv input{border:1px solid var(--line);background:var(--surface);min-width:180px;color:var(--ink);border-radius:8px;flex:1;padding:8px 10px;font-size:14.5px}.academy .tm-tbl{border-collapse:collapse;width:100%;font-size:14px}.academy .tm-tbl th{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:8px}.academy .tm-tbl td{border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 8px}.academy .tm-tbl td.num{font-family:var(--mono);white-space:nowrap}.academy .tm-tbl .tm-who{white-space:nowrap;align-items:center;gap:10px;display:flex}.academy .tm-trio{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start;gap:16px;display:grid}.academy .tm-trio .tm-inv input#tmDue{max-width:110px}.academy .tm-tbl .tm-av{width:30px;height:30px;font-size:11px}.academy .tm-scroll{margin:0 -4px;overflow-x:auto}.academy .tm-sw{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;display:grid}.academy .tm-sw+.tm-sw{border-top:1px solid var(--line)}.academy .tm-sw b{font-size:14.5px;font-weight:600;display:block}.academy .tm-sw small{color:var(--muted);font-size:13px;line-height:1.4;display:block}.academy .tgl{background:var(--line);cursor:pointer;border:0;border-radius:12px;flex:none;width:42px;height:24px;transition:background .15s;position:relative}.academy .tgl:after{content:"";background:var(--surface);border-radius:50%;width:18px;height:18px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000004d}.academy .tgl[aria-checked=true]{background:var(--accent)}.academy .tgl[aria-checked=true]:after{left:21px}@media (width<=900px){.academy .tm-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.academy .tm-people li{grid-template-columns:38px minmax(0,1fr)}.academy .tm-side{text-align:left;flex-flow:wrap;grid-column:2;align-items:flex-start;gap:8px}}.academy .rv-tbl{border-collapse:collapse;width:100%;font-size:14px}.academy .rv-tbl td{border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 8px}.academy .rv-tbl td:first-child{font-weight:500}.academy .rv-st{font:600 10.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:5px;padding:4px 7px;display:inline-block}.academy .rv-draft{border:1px dashed var(--line);color:var(--muted)}.academy .rv-review{background:color-mix(in srgb,var(--warn) 14%,var(--surface));color:var(--warn)}.academy .rv-approved{background:color-mix(in srgb,var(--ok) 14%,var(--surface));color:var(--ok)}.academy .rv-who{color:var(--muted);font-size:12.5px}.academy .rv-acts{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.academy .rv-acts .btn{padding:4px 9px;font-size:12.5px}.academy .fl-out{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb,var(--ok) 14%,var(--surface));color:var(--ok);border-radius:999px;padding:3px 8px}.academy .fl-out.o-wontfix{background:var(--sunk);color:var(--muted)}.academy .fl-acts .lbl{font:12px var(--mono);color:var(--muted);align-self:center;margin-right:2px}.academy .tl-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.academy .tl-list li{border-left:3px solid var(--line);background:var(--sunk);border-radius:0 6px 6px 0;grid-template-columns:64px 1fr;align-items:baseline;gap:12px;padding:8px 12px;display:grid}.academy .tl-list li b{font-family:var(--display);font-size:18px}.academy .tl-list li.new{border-left-color:var(--canh);background:var(--hl-sent)}.academy .tl-list li.here{border-left-color:var(--accent);background:var(--accent-soft)}.academy .tl-note{color:var(--muted);margin-top:10px;font-size:14px}.academy .tiles-h{font-family:var(--display);margin-bottom:10px;font-size:18px;font-weight:600}.academy .tiles-g{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.academy .tile{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;gap:4px;padding:14px 12px 12px;transition:all .3s;display:flex;position:relative}.academy .tile .n{color:var(--muted);font-size:12px}.academy .tile b{overflow-wrap:anywhere;font-size:16px}.academy .tile small{color:var(--muted);font-size:13px;line-height:1.35}.academy .tile.lit{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent) inset}.academy .tile.dim{opacity:.45}.academy .hw .box,.academy .sup .box,.academy .bs2 .box,.academy .mach .box{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.academy .hw-w{fill:none;stroke:var(--muted);stroke-width:1px}.academy .hw .hdr,.academy .bs2 .hdr{font-family:var(--display);fill:var(--ink);font-size:24px;font-weight:600}.academy .hw .bt,.academy .sup .bt,.academy .mach .bt{fill:var(--ink);font-size:21px;font-weight:600}.academy .hw .bs,.academy .sup .bs,.academy .bs2 .bs,.academy .mach .bs{fill:var(--muted);font-size:18px}.academy .mach .bs,.academy .bs2 .bs{fill:var(--ink)}.academy .hw .big{font-family:var(--display);fill:var(--ink);font-size:28px;font-weight:700}.academy .hw .lbl,.academy .sup .lbl,.academy .mach .lbl{fill:var(--muted);font-size:16px}.academy .sup .off rect,.academy .bs2 .off rect{fill:var(--sunk);stroke:var(--muted);stroke-dasharray:4 3}.academy .bs2 .newn{stroke:var(--accent);stroke-width:2.5px}.academy .mach .hid rect{fill:var(--sunk);stroke-dasharray:4 3}.academy .mach .gw rect,.academy .mach .tool rect{stroke:var(--accent);stroke-width:3px}.academy .mach .path{stroke:var(--accent);stroke-width:4px}.academy .kt{gap:12px;display:grid}.academy .kt-row{flex-wrap:wrap;align-items:center;gap:12px;font-family:ui-monospace,Menlo,monospace;display:flex}.academy .kt-id{background:var(--canh);color:#fff;border-radius:4px;padding:3px 8px}.academy .kt-dlc{color:var(--muted)}.academy .kt-bytes{letter-spacing:.08em;font-weight:700}.academy .kt-bits{grid-template-columns:repeat(8,1fr);gap:4px;display:grid}.academy .kb{border:1px solid var(--line);text-align:center;background:var(--surface);border-radius:4px;padding:2px 0 4px;font-family:ui-monospace,Menlo,monospace;font-size:16px}.academy .kb small{color:var(--muted);font-size:10px;display:block}.academy .kb.unused{opacity:.35}.academy .kb.watch{outline:2px solid var(--canh)}.academy .kb.one{background:var(--hl)}.academy .kt-recv{flex-wrap:wrap;gap:14px;font-size:14px;display:flex}.academy .kt-recv i{border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.academy .ly{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:16px;display:grid}@media (width<=640px){.academy .ly{grid-template-columns:1fr}}.academy .ly-stack{gap:6px;display:grid}.academy .ly-t{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:2px;padding:10px 12px;transition:all .3s;display:grid}.academy .ly-t b{font-family:var(--display);font-size:17px}.academy .ly-t span{font-size:14px}.academy .ly-t small{color:var(--muted);font-size:12px}.academy .ly-t.lit{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent) inset}.academy .ly-t.ghost{opacity:.35;border-style:dashed}.academy .ly-up{text-align:center;color:var(--accent);font-weight:600}.academy .ly-side{font-size:14px;line-height:1.5}.academy .ly-side ul,.academy .ly-side ol{gap:6px;margin:0;padding-left:20px;display:grid}.academy .ly-sup{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.academy .ly-sup span{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:6px;padding:6px 8px}.academy .ly-sup i{color:var(--bad);font-size:12px;font-style:normal}.academy .ly-let{grid-template-columns:1fr 1fr;gap:8px;display:grid}.academy .ly-let div{border:1px solid var(--line);background:var(--surface);border-radius:6px;gap:2px;padding:8px;display:grid}.academy .ly-let small{color:var(--muted)}.academy .ly-dec{gap:6px;display:grid}.academy .ly-dec code{background:var(--sunk);border-radius:4px;padding:6px 8px;font-size:15px}.academy .fid{gap:12px;display:grid}.academy .fid-strip{gap:2px;display:flex;overflow:hidden}.academy .ff{border:1px solid var(--line);background:var(--sunk);text-align:center;border-radius:3px;min-width:0;padding:6px 3px;display:grid}.academy .ff b{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.academy .ff small{color:var(--muted);font-size:10px}.academy .ff.lit{background:var(--hl);border-color:var(--canh)}.academy .fid-bits{flex-wrap:wrap;align-items:center;gap:4px;font-family:ui-monospace,Menlo,monospace;display:flex}.academy .fid-bits i{text-align:center;border:1px solid var(--canh);background:var(--surface);border-radius:3px;width:26px;padding:3px 0;font-style:normal}.academy .fid-bits .cap{color:var(--muted);margin-right:6px}.academy .fid-note{font-size:15px}.academy .mach-note{margin-top:8px;font-size:14px;line-height:1.5}.academy .mach-note span{white-space:nowrap;margin-right:14px}.academy .mach-note ol{margin:0;padding-left:20px;font-size:15px;font-weight:600}.academy .mach-note .bad{color:var(--bad);font-weight:600}.academy .mach-note i{vertical-align:middle;width:12px;height:4px;margin-right:6px;display:inline-block}.academy .mach .faint{opacity:.22}.academy .tl-list li{padding:6px 12px}.academy .rc-h,.academy .fw-h,.academy .mt-h,.academy .et-h,.academy .trw-h{font-family:var(--display);margin-bottom:10px;font-size:18px;font-weight:600}.academy .rc-rows{gap:6px;display:grid}.academy .rc-row{grid-template-columns:96px 1fr 70px;align-items:center;gap:10px;font-size:15px;transition:opacity .3s;display:grid}.academy .rc-row.dim{opacity:.4}.academy .rc-row.on .rc-r,.academy .rc-row.on .rc-l{font-weight:700}.academy .rc-bar{background:var(--sunk);border-radius:4px;height:18px;position:relative}.academy .rc-bar b{background:var(--accent);border-radius:4px;height:100%;display:block}.academy .rc-row.on .rc-bar b{background:var(--canh)}.academy .rc-bar b.bad{background:var(--bad)}.academy .rc-bar b.ok{background:var(--ok)}.academy .rc-mk{border-left:2px dashed var(--ink);position:absolute;top:-3px;bottom:-3px}.academy .rc-mk span{display:none}.academy .rc-row:first-child .rc-mk span{white-space:nowrap;font-size:12px;font-style:normal;display:block;position:absolute;top:-20px;left:4px}.academy .rc-l{color:var(--muted);text-align:right}.academy .rc-note,.academy .mt-note,.academy .pn-note,.academy .gd-note,.academy .sg-note,.academy .et-note,.academy .trw-note{color:var(--muted);margin-top:10px;font-size:14px}.academy .gd-note.bad{color:var(--bad);font-weight:600}.academy .fw-s{counter-reset:none;gap:8px;margin:0;padding:0;list-style:none;display:grid}.academy .fw-s li{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:34px 1fr;align-items:start;gap:10px;padding:10px 12px;transition:all .3s;display:grid;position:relative}.academy .fw-s li+li:before{content:"";border-left:2px solid var(--line);height:8px;position:absolute;top:-9px;left:28px}.academy .fw-s li .n{background:var(--sunk);border-radius:50%;place-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:grid}.academy .fw-s li b{font-size:16px}.academy .fw-s li small{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.35;display:block}.academy .fw-s li.lit{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent) inset}.academy .fw-s li.lit .n{background:var(--accent);color:#fff}.academy .fw-s li.done{opacity:.6}.academy .fw-s li.done .n{background:var(--ok);color:#fff}.academy .fw-s li.q .n{border-radius:4px;font-size:0;transform:rotate(45deg)}.academy .fw-s li.q .n:after{content:"?";font-size:14px;transform:rotate(-45deg)}.academy .fw-s li.x .n{background:var(--bad);color:#fff}.academy .fw-s li.x b{text-decoration:line-through;-webkit-text-decoration-color:var(--bad);text-decoration-color:var(--bad)}.academy .mt{grid-template-columns:170px minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (width<=640px){.academy .mt{grid-template-columns:1fr}}.academy .mt-dmm{background:#20262a;border:3px solid #e0a82e;border-radius:14px;gap:10px;padding:14px;display:grid}.academy .mt-lcd{text-align:right;font-family:var(--mono);color:#1c2416;background:#b9c7a8;border-radius:6px;padding:10px 12px}.academy .mt-val{overflow-wrap:anywhere;font-size:26px;font-weight:700;line-height:1.1;display:block}.academy .mt-mode{font-size:12px}.academy .mt-lcd.v-bad{box-shadow:0 0 0 3px var(--bad) inset}.academy .mt-lcd.v-warn{box-shadow:0 0 0 3px var(--warn) inset}.academy .mt-lcd.v-ok{box-shadow:0 0 0 3px var(--ok) inset}.academy .mt-p{color:#e8edea;text-align:center;min-height:1em;font-size:13px}.academy .mt-t{border-collapse:collapse;width:100%;font-size:14px}.academy .mt-t td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px 8px}.academy .mt-t tr.on td{background:var(--hl-sent)}.academy .mt-r{font-family:var(--mono);white-space:nowrap;font-weight:700}.academy .v-ok{color:var(--ok)}.academy .v-warn{color:var(--warn)}.academy .v-bad{color:var(--bad)}.academy .pn-wrap{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.academy .pins{flex:260px;width:100%;max-width:420px}.academy .pins .cf{fill:var(--surface);stroke:var(--ink);stroke-width:2px}.academy .pins .pnt{font-family:var(--display);fill:var(--ink);font-size:20px;font-weight:600}.academy .pins .pnn{font-size:14px;font-weight:700}.academy .pins .pnr{fill:var(--ink);font-size:13px;font-weight:600}.academy .pins .pn.dim{opacity:.35}.academy .cc{border:1px solid var(--line);background:var(--surface);border-radius:10px;overflow:hidden}.academy .cc-h{background:var(--sunk);align-items:center;gap:10px;padding:12px 14px;font-size:17px;display:flex}.academy .cc-tag{background:var(--ink);color:var(--surface);letter-spacing:.08em;text-transform:uppercase;border-radius:4px;padding:3px 7px;font-size:11px}.academy .cc-rows{margin:0}.academy .cc-rows>div{border-top:1px solid var(--line);grid-template-columns:120px 1fr;gap:12px;padding:10px 14px;transition:all .3s;display:grid}.academy .cc-rows dt{font-size:14px;font-weight:700}.academy .cc-rows dd{margin:0;font-size:15px;line-height:1.4}.academy .cc-rows .hid{opacity:.35}.academy .cc-rows .new{background:var(--hl-sent)}@media (width<=520px){.academy .cc-rows>div{grid-template-columns:1fr;gap:2px}}.academy .gd{width:100%}.academy .gd-band{fill:color-mix(in srgb,var(--ok) 14%,transparent)}.academy .gd-band.bad{fill:color-mix(in srgb,var(--bad) 12%,transparent)}.academy .gd-g{stroke:var(--line);stroke-dasharray:3 4}.academy .gd-t{fill:var(--muted);font-size:14px}.academy .gd-o{fill:var(--warn);font-size:16px;font-weight:700}.academy .sg{width:100%}.academy .sg-h{stroke:var(--canh);stroke-width:4px}.academy .sg-l{stroke:var(--canl);stroke-width:4px}.academy .sg-h.thin,.academy .sg-l.thin{stroke-width:2.5px}.academy .sg-t{fill:var(--surface);stroke:var(--ink);stroke-width:2px}.academy .sg-t.bad{stroke:var(--bad);stroke-width:3px}.academy .sg-s{fill:var(--muted);font-size:14px}.academy .sg-s.bad{fill:var(--bad);font-weight:600}.academy .sg-cut{fill:var(--muted);font-size:13px;font-style:italic}.academy .sg-n rect{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.academy .sg-n text{fill:var(--ink);font-size:15px;font-weight:600}.academy .sg-n.dead rect{fill:var(--sunk);stroke:var(--bad);stroke-dasharray:4 3}.academy .sg-n.lit rect{stroke:var(--accent);stroke-width:3px}.academy .sg-r{stroke-width:3px}.academy .sg-r.v-ok{stroke:var(--ok)}.academy .sg-r.v-warn{stroke:var(--warn)}.academy .sg-r.v-bad{stroke:var(--bad)}.academy .sg-r.v-info{stroke:var(--muted)}.academy .sg-rt{font-size:15px;font-weight:700}.academy .sg-rt.v-ok{fill:var(--ok)}.academy .sg-rt.v-warn{fill:var(--warn)}.academy .sg-rt.v-bad{fill:var(--bad)}.academy .sg-rt.v-info{fill:var(--ink)}.academy .sg-f circle{fill:var(--bad)}.academy .sg-f text{fill:#fff;font-size:18px;font-weight:700}.academy .sg-tl{stroke:var(--accent);stroke-width:3px}.academy .sg-tl.bad{stroke:var(--bad)}.academy .sg-tool rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2px}.academy .sg-tool.bad rect{fill:var(--surface);stroke:var(--bad)}.academy .sg-tool text{fill:var(--ink);font-size:14px;font-weight:600}.academy .et{width:100%}.academy .et-ax{stroke:var(--ink)}.academy .et-t{fill:var(--muted);font-size:13px}.academy .et-b{fill:var(--canl)}.academy .et-b.hl{fill:var(--bad)}.academy .et-ev{stroke:var(--ink);stroke-dasharray:4 4}.academy .et-ev.key{stroke:var(--bad);stroke-width:2.5px;stroke-dasharray:none}.academy .et-et{fill:var(--ink);font-size:14px;font-weight:600}.academy .et-et.key{fill:var(--bad)}.academy .trw-t{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:14px}.academy .trw-t th{text-align:left;font-family:var(--sans,inherit);color:var(--muted);border-bottom:1px solid var(--line);padding:4px 8px;font-size:12px}.academy .trw-t td{border-bottom:1px solid var(--line);padding:5px 8px}.academy .trw-t td:last-child{font-family:var(--sans,inherit);font-size:13px}.academy .trw-t tr.hl td{background:var(--hl-sent)}.academy .trw-t tr.dim td{opacity:.4}.academy .trw-t tr.miss td{color:var(--bad);background:color-mix(in srgb,var(--bad) 8%,transparent);font-style:italic}.academy .trw-t tr.err td{color:var(--bad);font-weight:700}.academy .mt-t td:first-child{min-width:110px}.academy .rolebar{z-index:40;background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:8px;max-width:calc(100vw - 24px);padding:5px 6px 5px 12px;display:flex;position:fixed;bottom:12px;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 6px 24px #00000029}.academy .rolebar .rb-lbl{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);white-space:nowrap}.academy .rolebar .seg button{white-space:nowrap;padding:6px 10px}.academy{padding-bottom:64px}.academy .rail-access{display:none!important}.academy #stageSec.fs~.rolebar{display:none}.academy body:has(#stageSec.fs) .rolebar{display:none}.academy body:has(.qmodal:not([hidden])) .rolebar{display:none}@media (width<=640px){.academy .rolebar{bottom:8px;left:8px;right:8px;transform:none}.academy .rolebar .rb-lbl{display:none}}.academy .toast{bottom:76px}@media (width<=900px){.academy .toast{bottom:calc(120px + env(safe-area-inset-bottom,0px))}}.academy .pr-list button.locked{cursor:pointer;opacity:.62}.academy .pr-list button.locked .ps{background:0 0;border:0}.academy .pr-lock{background:color-mix(in srgb,var(--accent) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex}.academy .pr-lock p{max-width:62ch;margin:0;line-height:1.45}.academy .pr-card.locked h3:after{content:" 🔒";font-size:.8em}.academy .tm-groups{flex-wrap:wrap;gap:8px;display:flex}.academy .tm-groups button{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink);text-align:left;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;display:flex}.academy .tm-groups button small{color:var(--muted);font-size:12px}.academy .tm-groups button[aria-selected=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.academy .tm-groups .tm-pend{border-style:dashed}.academy .tm-invite{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.academy .tm-invite h2{margin:0}.academy .tm-ava{display:flex}.academy .tm-ava .tm-av{border:2px solid var(--surface);width:30px;height:30px;margin-right:-6px;font-size:11px}.academy .fmtbar[hidden]{display:none}.academy .fmtbar{border:1px solid var(--line);background:var(--accent-soft);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.academy .fmtbar b{font-weight:600}.academy .fmtbar .seg{border:1px solid var(--line);background:var(--surface);border-radius:8px;display:inline-flex;overflow:hidden}.academy .fmtbar .seg button{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:5px 12px}.academy .fmtbar .seg button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.academy .fmtbar small{color:var(--muted)}.academy .ho{flex-direction:column;gap:14px;width:100%;max-width:860px;margin:0 auto;display:flex}.academy .ho-dots{align-items:center;gap:6px;display:flex}.academy .ho-dots i{background:var(--line);border-radius:3px;flex:1;height:6px}.academy .ho-dots i.on{background:var(--accent)}.academy .ho-dots i.cur{background:color-mix(in srgb,var(--accent) 55%,var(--line))}.academy .ho-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:14px;padding:22px;display:flex}.academy .ho-card h2{margin:0;font-size:22px}.academy .ho-card p{margin:0;line-height:1.55}.academy .ho-kick{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.academy .ho-kick button{font-size:12px}.academy .ho-ask{font-weight:600}.academy .ho-opts{gap:8px;display:grid}.academy .ho-opt{text-align:left;border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--ink);cursor:pointer;border-radius:10px;padding:10px 14px}.academy .ho-opt:hover:not(:disabled){border-color:var(--accent)}.academy .ho-opt.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .ho-opt.no{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 9%,var(--surface))}.academy .ho-opt:disabled{cursor:default}.academy .ho-fb{border-radius:10px;padding:10px 14px;font-size:15px;line-height:1.5}.academy .ho-fb.hint{background:color-mix(in srgb,var(--warn) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--warn) 40%,var(--line))}.academy .ho-fb.good{background:color-mix(in srgb,var(--ok) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 40%,var(--line))}.academy .ho-fb.why{background:var(--sunk,var(--accent-soft));border:1px solid var(--line)}.academy .ho-fb .ho-advisor{margin-top:8px}.academy .ho-nav{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.academy .ho-stage{border:1px solid var(--line);background:var(--bg,var(--surface));border-radius:12px;padding:10px;overflow-x:auto}.academy .ho-stage svg{width:100%;min-width:520px;height:auto;display:block}.academy .ho-stage .slot{cursor:pointer}.academy .ho-stage .slot:hover rect.sb{stroke:var(--accent)}.academy .ho-stage .node{cursor:pointer}.academy .ho-row{flex-wrap:wrap;align-items:stretch;gap:14px;display:flex}.academy .ho-row>*{flex:260px}.academy .ho-dmm{border:1px solid var(--line);border-radius:12px;align-items:center;gap:14px;padding:12px;display:flex}.academy .ho-dmm .lcd{font-family:var(--mono);color:#1c2416;text-align:right;background:#b9c7a8;border-radius:6px;min-width:150px;padding:6px 14px;font-size:30px}.academy .ho-dmm small{color:var(--muted);display:block}.academy .ho-minis{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.academy .ho-mini{border:1px solid var(--line);background:var(--surface);cursor:pointer;font:inherit;color:var(--ink);text-align:center;border-radius:10px;padding:8px}.academy .ho-mini svg{width:100%;height:auto;display:block}.academy .ho-mini.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .ho-mini.no{border-color:var(--bad)}.academy .ho-read{flex-wrap:wrap;gap:8px;display:flex}.academy .ho-read span{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:4px 10px;font-size:14px}.academy .ho-read span b{color:var(--muted);margin-right:6px;font-family:inherit;font-weight:500}.academy .ho-tick{color:var(--ok);align-items:center;gap:6px;font-weight:600;display:inline-flex}.academy .ho-recap{margin:0;padding-left:20px;line-height:1.6}.academy .dy{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:12px;max-width:860px;padding:18px 20px;display:flex}.academy .dy-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.academy .dy-tag{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:700}.academy .dy-tag.fault{color:var(--warn)}.academy .dy h3{margin:0;font-size:19px}.academy .dy p{margin:0;line-height:1.55}.academy .dy-foot{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.academy .hm-daily{padding:0 0 8px}.academy .ho-sm{padding:4px 10px;font-size:13px}.academy .ho-card #hoM>p+p,.academy .ho-card #hoM>p+ul{margin-top:10px}.academy .hm-daily .dy{max-width:none}.academy .fd-h,.academy .st-h,.academy .lp-h{font-family:var(--display);margin-bottom:10px;font-size:18px;font-weight:600}.academy .fd-rows{gap:12px;display:grid}.academy .fd-lbl{color:var(--muted);margin-bottom:4px;font-size:13px}.academy .fd-strip{align-items:stretch;gap:3px;display:flex}.academy .fd-f{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:5px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:6px 4px;transition:all .3s;display:flex}.academy .fd-f b{overflow-wrap:anywhere;font-size:13px;line-height:1.15}.academy .fd-f code{font-family:var(--mono);color:var(--ink);font-size:13px;font-weight:700}.academy .fd-f small{color:var(--muted);font-size:11px}.academy .fd-f.on{border-color:var(--canh);background:var(--hl);box-shadow:0 0 0 2px var(--canh) inset}.academy .fd-f.dim{opacity:.45}.academy .fd-f.data{background:color-mix(in srgb,var(--canl) 12%,var(--surface))}.academy .fd-f.fast{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}.academy .fd-f.bad{border-color:var(--bad);color:var(--bad)}.academy .fd-note,.academy .st-note,.academy .lp-note{color:var(--muted);margin-top:10px;font-size:14px}.academy .st-box{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.academy .st-s{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:3px;padding:12px 10px;transition:all .3s;display:flex}.academy .st-s b{font-size:15px}.academy .st-s small{color:var(--muted);font-size:12px}.academy .st-s.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent) inset}.academy .st-s.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.academy .st-e{gap:4px;margin:12px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.academy .st-e li{background:var(--sunk);border-radius:6px;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) auto;align-items:center;gap:6px;padding:5px 8px;display:grid}.academy .st-e li.hot{background:var(--hl-sent);font-weight:600}.academy .st-e code{font-family:var(--mono);font-size:13px}.academy .lp-w{margin-bottom:10px;font-size:15px}.academy .lp-w code{font-family:var(--mono);font-weight:700}.academy .lp-g{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.academy .lp-b{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:6px;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;display:flex}.academy .lp-b i{background:var(--sunk);border:1px solid var(--muted);border-radius:50%;width:16px;height:16px}.academy .lp-b.on i{background:var(--ok);border-color:var(--ok);box-shadow:0 0 6px var(--ok)}.academy .lp-b span{font-family:var(--mono);color:var(--muted);font-size:12px}.academy .lp-b small{min-height:2.3em;font-size:11px;line-height:1.15}.academy .lp-b.foc{border-color:var(--canh);box-shadow:0 0 0 2px var(--canh) inset}.academy .lp-b.un{opacity:.5}.academy .fd-f.sm{padding:6px 0}.academy .fd-f.sm b{writing-mode:vertical-rl;white-space:nowrap;overflow-wrap:normal;font-size:11px;transform:rotate(180deg)}.academy .fd-f.sm small,.academy .fd-f.sm code{display:none}.academy .fd-f{overflow:hidden}.academy .bt-h{font-family:var(--display);margin-bottom:6px;font-size:18px;font-weight:600}.academy .bt svg{width:100%;height:auto;display:block}.academy .bt-seg{stroke:var(--surface);stroke-width:2px;transition:opacity .3s}.academy .bt-seg.s0{fill:color-mix(in srgb,var(--muted) 45%,var(--surface))}.academy .bt-seg.s1{fill:color-mix(in srgb,var(--canl) 45%,var(--surface))}.academy .bt-seg.s2{fill:color-mix(in srgb,var(--accent) 40%,var(--surface))}.academy .bt-seg.s3{fill:color-mix(in srgb,var(--canh) 45%,var(--surface))}.academy .bt-seg.dim{opacity:.3}.academy .bt-seg.on{stroke:var(--ink);stroke-width:2.5px}.academy .bt-sl{fill:var(--ink);font-size:15px;font-weight:600}.academy .bt-sl.sm{font-size:13px}.academy .bt-tick,.academy .bt-grid{stroke:var(--muted);stroke-width:1px}.academy .bt-grid{stroke-dasharray:2 4;opacity:.5}.academy .bt-t{fill:var(--muted);font-size:14px}.academy .bt-t.bad{fill:var(--bad);font-weight:600}.academy .bt-wave{stroke:var(--canh);stroke-width:3px}.academy .bt-sp{stroke:var(--ok);stroke-width:3px}.academy .bt-sp.bad{stroke:var(--bad)}.academy .bt-spl{fill:var(--ok);font-size:15px;font-weight:700}.academy .bt-spl.bad{fill:var(--bad)}.academy .bt-exp{stroke:var(--muted);stroke-width:2px;stroke-dasharray:5 4}.academy .bt-cur{stroke:var(--warn);stroke-width:2.5px;stroke-dasharray:6 3}.academy .bt-arrow{stroke:var(--warn);stroke-width:2px}.academy .bt-mk{fill:var(--warn)}.academy .bt-big{fill:var(--ink);font-size:20px;font-weight:700;font-family:var(--mono)}.academy .bt-trip.c{fill:color-mix(in srgb,var(--canl) 55%,var(--surface))}.academy .bt-trip.d{fill:color-mix(in srgb,var(--muted) 40%,var(--surface))}.academy .bt-trip.bad{fill:color-mix(in srgb,var(--bad) 55%,var(--surface))}.academy .bt-note{color:var(--muted);margin-top:8px;font-size:14px}.academy .ho-newtag{font:600 9.5px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;background:var(--canh);color:#1b1400;white-space:nowrap;border-radius:4px;padding:3px 5px;display:inline-block}.academy .ho-dmm-flow{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.academy .ho-dmm-flow li{border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:8px 12px;font-size:14px;line-height:1.4}.academy .ho-dmm-flow li b{color:var(--ink);font-weight:600;display:block}.academy .ho-dmm-flow li.on{border-color:var(--accent);background:var(--accent-soft)}.academy .ho-dmm-flow li.past b{color:var(--muted)}.academy .ho-dmm-tip{color:var(--muted);font-size:14px}.academy .ho-dmm-rig{flex-direction:column;gap:10px;margin-top:12px;display:flex}.academy .ho-dmm-rig .ho-dmm-rig{margin-top:0}.academy .ho-dmm-rig+div{margin-top:12px}.academy div:has(>.ho-dmm-tbl){margin-top:12px}.academy div:has(>.ho-dmm-tbl)+div{margin-top:12px}.academy .ho-dmm-ctl{flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:14px;display:flex}.academy .ho-dmm-grp{align-items:center;gap:8px;display:flex}.academy .ho-dmm-grp>span:first-child{color:var(--muted);font-size:13px}.academy .ho-dmm-seg{border:1px solid var(--line);background:var(--surface);border-radius:8px;display:inline-flex;overflow:hidden}.academy .ho-dmm-seg button{min-height:34px;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:6px 12px}.academy .ho-dmm-seg button+button{border-left:1px solid var(--line)}.academy .ho-dmm-seg button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink,#fff)}.academy .ho-dmm-seg button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.academy .ho-dmm-stage [role=button]{cursor:pointer}.academy .ho-dmm-stage [role=button]:focus{outline:none}.academy .ho-dmm-stage [role=button]:focus-visible .hit,.academy .ho-dmm-stage [role=button]:hover .hit{stroke:var(--accent);stroke-width:3px}.academy .ho-dmm-read .lcd{white-space:nowrap;flex:none;min-width:170px}.academy .ho-dmm-read .lcd.ho-dmm-warnlcd{background:#e9c46a}.academy .ho-dmm-read>div:last-child{min-width:0}.academy .ho-dmm-caution{border-color:color-mix(in srgb,var(--bad) 45%,var(--line))}.academy .ho-dmm-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.academy .ho-dmm-list li{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:4px 12px}.academy .ho-dmm-list li:before{content:"○ "}.academy .ho-dmm-list li.done{border-color:var(--ok);color:var(--ink);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .ho-dmm-list li.done:before{content:"✓ ";color:var(--ok)}.academy .ho-dmm-tbl{border-collapse:collapse;width:100%;font-size:14px}.academy .ho-dmm-tbl th,.academy .ho-dmm-tbl td{border:1px solid var(--line);text-align:left;padding:6px 10px}.academy .ho-dmm-tbl thead th{color:var(--muted);font-weight:500}.academy .ho-dmm-tbl td{font-family:var(--mono)}.academy .ho-dmm-tbl td.bad{color:var(--bad);font-weight:600}@media (width<=600px){.academy .ho-dmm-flow{grid-template-columns:1fr}.academy .ho-dmm-read{flex-wrap:wrap}.academy .ho-dmm-read .lcd{box-sizing:border-box;width:100%;min-width:0}}.academy .ho-scope-svg{width:100%;height:auto;display:block}.academy .ho-stage .ho-scope-svg{min-width:520px}.academy .ho-scope-ctl{gap:8px;display:grid}.academy .ho-scope-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.academy .ho-scope-lbl{min-width:120px;color:var(--muted);font-size:14px}.academy .ho-scope-seg{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.academy .ho-scope-seg button{border:0;border-right:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;background:0 0;min-height:34px;padding:6px 12px;font-size:14px}.academy .ho-scope-seg button:last-child{border-right:0}.academy .ho-scope-seg button:hover:not(:disabled){background:var(--accent-soft)}.academy .ho-scope-seg button[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 -3px 0 var(--accent);font-weight:600}.academy .ho-scope-seg button:disabled{cursor:default;opacity:.75}.academy .ho-scope-seg button:focus-visible,.academy .ho-scope-lead:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.academy .ho-scope-cv{border-right:1px solid var(--line);align-items:center;padding:6px 10px;font-size:14px;display:inline-flex}.academy .ho-scope-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.academy .ho-scope-bar .ho-read i{font-style:normal}.academy .ho-scope-tray{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.academy .ho-scope-lead{text-align:left;border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--ink);cursor:pointer;border-left-width:5px;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;font-weight:600;display:flex}.academy .ho-scope-lead.c1{border-left-color:var(--canh)}.academy .ho-scope-lead.c2{border-left-color:var(--canl)}.academy .ho-scope-lead small{color:var(--muted);font-size:13px;font-weight:400}.academy .ho-scope-lead[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}.academy .ho-scope-lead:disabled{cursor:default}.academy .ho-scope-tp{cursor:pointer}.academy .ho-scope-tp:focus{outline:none}.academy .ho-scope-tp:focus-visible rect{stroke:var(--accent);stroke-width:3px}.academy .ho-scope-cap{color:var(--muted);margin:0 0 8px;font-size:14px}.academy .ho-scope-cnt{color:var(--muted);align-self:center;font-size:14px}.academy .ho-stage svg.ho-scope-hook{min-width:0;max-width:560px;margin:0 auto}.academy .ho-arbitration-c rect{fill:var(--surface);stroke:var(--line);stroke-width:1.5px}.academy .ho-arbitration-c text{fill:var(--ink)}.academy .ho-arbitration-dom rect{fill:var(--accent-soft);stroke:var(--accent)}.academy .ho-arbitration-rec rect{fill:var(--surface);stroke:var(--muted)}.academy .ho-arbitration-lost rect{fill:color-mix(in srgb,var(--bad) 14%,var(--surface));stroke:var(--bad);stroke-width:2px}.academy .ho-arbitration-lost text{fill:var(--bad);font-weight:700}.academy .ho-arbitration-listen rect{fill:#0000;stroke:var(--line);stroke-dasharray:3 3}.academy .ho-arbitration-listen text{fill:var(--muted)}.academy .ho-arbitration-empty rect{fill:#0000;stroke:var(--line);stroke-dasharray:2 4}.academy .ho-arbitration-err rect{fill:var(--bad);stroke:var(--bad)}.academy .ho-arbitration-err text{fill:var(--surface);font-weight:700}.academy .ho-arbitration-busband{fill:color-mix(in srgb,var(--canh) 10%,transparent);stroke:none}.academy .ho-arbitration-node{cursor:pointer}.academy .ho-arbitration-node:focus{outline:none}.academy .ho-arbitration-node:focus-visible .ho-arbitration-nb,.academy .ho-arbitration-node:hover .ho-arbitration-nb{stroke:var(--accent);stroke-width:3px}.academy .ho-arbitration-nb{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.academy .ho-arbitration-nb.ho-arbitration-drv{fill:var(--accent-soft);stroke:var(--accent)}.academy .ho-arbitration-tt{border-collapse:collapse;width:100%;max-width:420px;font-size:14px}.academy .ho-arbitration-tt caption{text-align:left;color:var(--muted);padding-bottom:6px;font-size:13px}.academy .ho-arbitration-tt th,.academy .ho-arbitration-tt td{border:1px solid var(--line);text-align:left;font-family:var(--mono);padding:6px 10px}.academy .ho-arbitration-tt th{color:var(--muted);font-family:inherit;font-weight:600}.academy .ho-arbitration-tt tr.cur td{background:var(--accent-soft)}.academy .ho-arbitration-note{min-height:1.5em;font-size:15px}.academy .ho-arbitration-assign{gap:8px;display:grid}.academy .ho-arbitration-arow{border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.academy .ho-arbitration-arow select{font:inherit;font-family:var(--mono);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:4px 8px}.academy .ho-arbitration-seg{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.academy .ho-arbitration-q{margin-top:10px;display:block}.academy .ho-errors-zone{fill:#0000;cursor:pointer;stroke:#0000;stroke-width:2px}.academy .ho-errors-zone:hover,.academy .ho-errors-zone:focus{fill:color-mix(in srgb,var(--accent) 16%,transparent);stroke:var(--accent);outline:none}.academy .ho-errors-zone.on{fill:color-mix(in srgb,var(--accent) 24%,transparent);stroke:var(--accent)}.academy .ho-errors-q{align-self:center;font-weight:600}.academy .ho-errors-types{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.academy .ho-errors-types .ho-opt{text-align:center}.academy .ho-errors-tw{overflow-x:auto}.academy .ho-errors-tbl{border-collapse:collapse;width:100%;font-size:14px}.academy .ho-errors-tbl caption{text-align:left;padding-bottom:6px;font-weight:600}.academy .ho-errors-tbl th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 8px;font-weight:500}.academy .ho-errors-tbl td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px 8px}.academy .ho-errors-tbl tr.new{animation:.5s ho-errors-in}@keyframes ho-errors-in{0%{background:var(--accent-soft)}to{background:0 0}}.academy .ho-errors-btns{flex-wrap:wrap;gap:8px;display:flex}.academy .ho-errors-btns .btn{font-size:14px}.academy .ho-errors-lab{flex-direction:column;gap:12px;margin-top:6px;display:flex}.academy .ho-errors-status{min-height:48px;font-size:15px;line-height:1.5}.academy .ho-errors-chip{border:1px solid var(--c);color:var(--ink);background:color-mix(in srgb,var(--c) 16%,var(--surface));border-radius:999px;margin-right:6px;padding:2px 10px;font-size:13px;font-weight:600;display:inline-block}.academy .ho-errors-goal{color:var(--muted);margin-right:10px;font-weight:500;display:inline-block}.academy .ho-errors-goal.on{color:var(--ok);font-weight:600}.academy .ho-errors-pan .ho-dmm small{margin-top:4px}.academy .ho-errors-pan .lcd{min-width:170px}.academy .ho-stage .ho-errors-site{cursor:pointer}.academy .ho-stage .ho-errors-site:hover circle,.academy .ho-stage .ho-errors-site:focus circle{stroke:var(--accent);stroke-width:2.5px}.academy .ho-stage .ho-errors-site:focus{outline:none}.academy .ho-errors-col{flex-direction:column;gap:12px;display:flex}.academy .ho-errors-lab[hidden],.academy .ho-errors-tw[hidden]{display:none}.academy .ho-bit-timing-ctl{gap:8px;display:grid}.academy .ho-bit-timing-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.academy .ho-bit-timing-lbl{min-width:130px;color:var(--muted);font-size:14px}.academy .ho-bit-timing-seg{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.academy .ho-bit-timing-seg button{border:0;border-right:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;background:0 0;min-height:34px;padding:6px 12px;font-size:14px}.academy .ho-bit-timing-seg button:last-child{border-right:0}.academy .ho-bit-timing-seg button:hover:not(:disabled){background:var(--accent-soft)}.academy .ho-bit-timing-seg button[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 -3px 0 var(--accent);font-weight:600}.academy .ho-bit-timing-seg button:disabled{cursor:default;opacity:.75}.academy .ho-bit-timing-seg button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.academy .ho-bit-timing-cv{border-right:1px solid var(--line);align-items:center;padding:6px 10px;font-size:14px;display:inline-flex}.academy .ho-bit-timing-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.academy .ho-bit-timing-bar .ho-read i{font-style:normal}.academy .ho-bit-timing-col{flex-direction:column;gap:12px;display:flex}.academy .ho-bit-timing-col[hidden]{display:none}.academy .ho-bit-timing-s0{fill:color-mix(in srgb,var(--muted) 30%,var(--surface))}.academy .ho-bit-timing-s1{fill:color-mix(in srgb,var(--canl) 30%,var(--surface))}.academy .ho-bit-timing-s2{fill:color-mix(in srgb,var(--accent) 30%,var(--surface))}.academy .ho-bit-timing-s3{fill:color-mix(in srgb,var(--canh) 32%,var(--surface))}.academy .ho-bit-timing-lit{fill:color-mix(in srgb,var(--accent) 55%,var(--surface))}.academy .ho-bit-timing-dim{opacity:.6}.academy .ho-stage.ho-bit-timing-drag{cursor:ew-resize;touch-action:none}.academy .ho-stage.ho-bit-timing-drag:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .ho-bit-timing-range{max-width:360px;accent-color:var(--accent);flex:200px}.academy .ho-bit-timing-lg{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.academy .ho-bit-timing-lg i{border-radius:2px;width:18px;height:10px;margin-left:8px;display:inline-block}.academy .ho-bit-timing-lg i:first-child{margin-left:0}.academy .ho-bit-timing-an{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.academy .ho-bit-timing-anh{align-items:baseline;gap:10px;display:flex}.academy .ho-bit-timing-anh small{color:var(--muted);font-size:13px}.academy .ho-bit-timing-strip{background:var(--bg,var(--surface));border:1px solid var(--line);border-radius:6px;grid-template-columns:repeat(40,1fr);gap:2px;min-height:22px;padding:4px;display:grid}.academy .ho-bit-timing-strip i{background:color-mix(in srgb,var(--ok) 60%,var(--surface));border-radius:2px;height:16px}.academy .ho-bit-timing-strip i.e{background:var(--bad)}.academy .ho-bit-timing-strip i.m{background:var(--canl)}.academy .ho-bit-timing-chip{border:1px solid var(--c);color:var(--ink);background:color-mix(in srgb,var(--c) 16%,var(--surface));border-radius:999px;margin-right:8px;padding:2px 10px;font-size:13px;font-weight:600;display:inline-block}.academy .ho-bit-timing-cv{font-family:var(--mono)}.academy .ho-bit-timing-an .ho-bit-timing-cv{border:0;padding:0;font-size:14px}.academy .ho-bit-timing-bars{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:4px 8px;margin-top:8px;font-size:13px;display:grid}.academy .ho-bit-timing-bars b{background:var(--line);border-radius:5px;height:10px;display:block;overflow:hidden}.academy .ho-bit-timing-bars b i{background:var(--warn);height:100%;transition:width .2s;display:block}.academy .ho-bit-timing-status{min-height:48px;font-size:15px;line-height:1.5}.academy .ho-bit-timing-dlg{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.academy .ho-bit-timing-dlgh{border-bottom:1px solid var(--line);padding-bottom:8px;font-size:15px;font-weight:600}.academy .ho-bit-timing-log{font-family:var(--mono);flex-direction:column;gap:4px;min-height:20px;font-size:13px;display:flex}.academy .ho-bit-timing-log .bad{color:var(--bad)}.academy .ho-bit-timing-log .ok{color:var(--ok);font-weight:600}.academy .ho-bit-timing-log .fr{color:var(--muted)}.academy .ho-bit-timing-scope{width:100%;height:auto;display:block}.academy .ho-stage svg.ho-bit-timing-scope{min-width:520px}.academy .ho-row .ho-bit-timing-col .ho-bit-timing-seg button{padding:6px 10px;font-size:13px}.academy .ho-bit-timing-m{flex-direction:column;gap:12px;display:flex}.academy .ho-bit-timing-m>[hidden]{display:none}.academy .ho-bit-timing-lv{min-width:60px;font-size:15px;font-weight:600}.academy .ho-bit-timing-mseg{grid-template-columns:repeat(3,1fr);display:grid}.academy .ho-bit-timing-mseg button{flex-direction:column;align-items:center;gap:1px;padding:6px 8px;line-height:1.2;display:flex}.academy .ho-bit-timing-mseg button small{color:var(--muted);font-size:12px;font-weight:400}.academy .ho-bit-timing-m .ho-dmm{flex-wrap:wrap}.academy .ho-faults-rig{flex-direction:column;gap:10px;margin-top:10px;display:flex}.academy .ho-faults-ctl{flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:14px;display:flex}.academy .ho-faults-grp{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.academy .ho-faults-grp>span:first-child{color:var(--muted);font-size:13px}.academy .ho-faults-seg{flex-wrap:wrap;gap:6px;display:inline-flex}.academy .ho-faults-seg button{border:1px solid var(--line);background:var(--surface);min-height:34px;font:inherit;color:var(--ink);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:14px}.academy .ho-faults-seg button:hover{border-color:var(--accent)}.academy .ho-faults-seg button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#fff)}.academy .ho-faults-seg button:focus-visible,.academy .ho-faults-rd:focus-visible,.academy .ho-faults-card:focus-visible,.academy .ho-faults-bin:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .ho-faults-stage .ho-faults-hit{cursor:pointer}.academy .ho-faults-stage .ho-faults-hit:focus{outline:none}.academy .ho-faults-stage .ho-faults-hit:hover .hb,.academy .ho-faults-stage .ho-faults-hit:focus-visible .hb{stroke:var(--accent);stroke-width:3px}.academy .ho-faults-tip{color:var(--muted);margin:0;font-size:14px}.academy .ho-faults-rds{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.academy .ho-faults-rd{border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--ink);cursor:pointer;text-align:left;border-radius:10px;padding:8px 12px;font-size:14px;line-height:1.3}.academy .ho-faults-rd small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;display:block}.academy .ho-faults-rd:hover{border-color:var(--accent)}.academy .ho-faults-rd[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.academy .ho-faults-read .lcd{white-space:nowrap;flex:none;min-width:190px}.academy .ho-faults-read .lcd.ho-faults-badlcd{background:#e9c46a}.academy .ho-faults-read>div:last-child{min-width:0}.academy .ho-faults-logw{overflow-x:auto}.academy .ho-faults-log{border-collapse:collapse;width:100%;font-size:14px}.academy .ho-faults-log caption{text-align:left;padding-bottom:6px;font-weight:600}.academy .ho-faults-log th,.academy .ho-faults-log td{border:1px solid var(--line);text-align:left;padding:6px 10px}.academy .ho-faults-log thead th{color:var(--muted);font-weight:500}.academy .ho-faults-log tbody th{font-weight:500}.academy .ho-faults-log td{font-family:var(--mono);white-space:nowrap}.academy .ho-faults-log td.bad{color:var(--bad);font-weight:600}.academy .ho-faults-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.academy .ho-faults-list li{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:4px 12px}.academy .ho-faults-list li:before{content:"○ "}.academy .ho-faults-list li.done{border-color:var(--ok);color:var(--ink);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .ho-faults-list li.done:before{content:"✓ ";color:var(--ok)}.academy .ho-faults-sort{flex-direction:column;gap:12px;display:flex}.academy .ho-faults-pool{flex-wrap:wrap;gap:8px;min-height:40px;display:flex}.academy .ho-faults-card{border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--ink);cursor:pointer;border-radius:999px;padding:7px 14px;font-size:14px}.academy .ho-faults-card[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent);font-weight:600}.academy .ho-faults-card.miss{border-style:dashed;border-color:var(--warn)}.academy .ho-faults-empty{color:var(--muted);align-self:center;font-size:14px}.academy .ho-faults-bins{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.academy .ho-faults-bin{border:1.5px dashed var(--line);background:var(--surface);font:inherit;color:var(--ink);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;gap:2px;min-height:130px;padding:12px;display:flex}.academy .ho-faults-bin:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.academy .ho-faults-bin:disabled{cursor:default}.academy .ho-faults-bin small{color:var(--muted);font-size:13px}.academy .ho-faults-in{flex-direction:column;gap:4px;margin-top:8px;display:flex}.academy .ho-faults-in i{background:color-mix(in srgb,var(--ok) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 40%,var(--line));border-radius:6px;padding:3px 8px;font-size:13px;font-style:normal}.academy .ho-faults-myst{flex-direction:column;gap:10px;display:flex}.academy .ho-faults-mh{margin:0;font-size:17px}.academy .ho-faults-given{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.academy .ho-faults-given span{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px 10px;font-size:14px}.academy .ho-faults-given b{font-family:var(--display,inherit);color:var(--muted);font-size:12px;font-weight:500;display:block}.academy .ho-faults-myst .ho-nav{align-items:center}@media (width<=600px){.academy .ho-faults-bins{grid-template-columns:1fr}.academy .ho-faults-bin{min-height:0}.academy .ho-faults-read{flex-wrap:wrap}.academy .ho-faults-read .lcd{box-sizing:border-box;width:100%;min-width:0}}.academy .ho-nmt-col{flex-direction:column;gap:12px;display:flex}.academy .ho-nmt-col[hidden],.academy .ho-nmt-bw[hidden]{display:none}.academy .ho-nmt-an{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.academy .ho-nmt-anbar{border-bottom:1px solid var(--line);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.academy .ho-nmt-live{font-family:var(--mono);color:var(--muted);font-size:12px}.academy .ho-nmt-anbar .ho-nmt-pause{margin-left:auto}.academy .ho-nmt-flt{flex-wrap:wrap;gap:6px;display:inline-flex}.academy .ho-nmt-tw{overflow-x:auto}.academy .ho-nmt-tr{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:13px}.academy .ho-nmt-tr th{text-align:left;font-family:var(--body,inherit);color:var(--muted);border-bottom:1px solid var(--line);padding:6px 10px;font-size:12px;font-weight:500}.academy .ho-nmt-tr td{border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent);white-space:nowrap;color:var(--ink);padding:4px 10px}.academy .ho-nmt-tr td.m{font-family:var(--body,inherit);white-space:normal;font-size:13px}.academy .ho-nmt-tr tr.pad td{border-bottom-color:#0000}.academy .ho-nmt-tr tr.boot td{background:color-mix(in srgb,var(--accent) 14%,transparent)}.academy .ho-nmt-tr tr.nmt td{background:color-mix(in srgb,var(--warn) 16%,transparent);font-weight:600}.academy .ho-nmt-tr tr.sdo td{background:color-mix(in srgb,var(--canl) 12%,transparent)}.academy .ho-nmt-tr tr.pdo td{color:var(--muted)}.academy .ho-nmt-tr tr[role=button]{cursor:pointer}.academy .ho-nmt-tr tr[role=button] td{background:0 0}.academy .ho-nmt-tr tr[role=button]:hover td,.academy .ho-nmt-tr tr[role=button]:focus td{background:var(--accent-soft)}.academy .ho-nmt-tr tr[role=button]:focus{outline:2px solid var(--accent);outline-offset:-2px}.academy .ho-nmt-tr tr.sel td,.academy .ho-nmt-tr tr.sel:hover td{background:color-mix(in srgb,var(--ok) 20%,transparent);font-weight:600}.academy .ho-nmt-cnt{align-self:center;font-weight:600}.academy .ho-nmt-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:4px 12px;font-size:13px}.academy .ho-nmt-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#fff)}.academy .ho-nmt-chip.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 16%,var(--surface));color:var(--ink)}.academy .ho-nmt-chip:disabled{cursor:default}.academy .ho-nmt-tg{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .ho-nmt-bld{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.academy .ho-nmt-frame{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.academy .ho-nmt-fid,.academy .ho-nmt-slot{border:1px solid var(--line);background:var(--surface);min-width:120px;color:var(--ink);font:inherit;text-align:left;border-radius:8px;flex-direction:column;justify-content:center;padding:4px 12px;display:flex}.academy .ho-nmt-fid{background:var(--accent-soft);min-width:auto}.academy .ho-nmt-fid small,.academy .ho-nmt-slot small{color:var(--muted);font-size:12px}.academy .ho-nmt-fid b,.academy .ho-nmt-slot b{font-family:var(--mono);font-size:20px}.academy .ho-nmt-slot{cursor:pointer;border-style:dashed}.academy .ho-nmt-slot.on{border-style:solid;border-color:var(--accent)}.academy .ho-nmt-send{align-self:center}.academy .ho-nmt-keys{flex-wrap:wrap;gap:6px;display:flex}.academy .ho-nmt-key{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;width:46px;padding:6px 0;font-size:15px;font-weight:600}.academy .ho-nmt-key:hover,.academy .ho-nmt-slot:hover{border-color:var(--accent)}.academy .ho-nmt-legend{color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:13px;display:flex}.academy .ho-nmt-legend b{font-family:var(--mono);color:var(--ink)}.academy .ho-nmt-goals{flex-wrap:wrap;gap:6px 14px;font-size:14px;display:flex}.academy .ho-nmt-goal{color:var(--muted)}.academy .ho-nmt-goal.on{color:var(--ok);font-weight:600}.academy .ho-nmt-sbox{fill:var(--surface);stroke:var(--line);stroke-width:1.5px}.academy [data-box].lit .ho-nmt-sbox{fill:var(--accent-soft);stroke:var(--accent)}.academy .ho-nmt-tok circle{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.academy .ho-nmt-tok text{fill:var(--ink)}.academy .ho-nmt-tok.me circle{fill:var(--accent);stroke:var(--accent)}.academy .ho-nmt-tok.me text{fill:var(--accent-ink,#fff)}.academy .ho-nmt-sm.ready .ho-nmt-tok{transition:transform .5s}.academy .ho-nmt-picks{flex-direction:column;gap:10px;display:flex}.academy .ho-nmt-pick{grid-template-columns:110px 1fr;align-items:center;gap:8px 12px;display:grid}.academy .ho-nmt-plab{font-weight:600}.academy .ho-nmt-plab small{font-family:var(--mono);color:var(--muted);font-size:12px;font-weight:400;display:block}.academy .ho-nmt-popts{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.academy .ho-nmt-popts .ho-opt{text-align:center;padding:8px 10px}.academy .ho-nmt-pfb{grid-column:1/-1}.academy .ho-nmt-pfb:empty{display:none}@media (width<=560px){.academy .ho-nmt-pick{grid-template-columns:1fr}.academy .ho-nmt-popts .ho-opt{padding:8px 4px;font-size:13px}.academy .ho-nmt-slot{min-width:100px}}.academy .ho-sdo-col{flex-direction:column;gap:12px;display:flex}.academy .ho-sdo-stage{flex-direction:column;gap:12px;display:flex;overflow-x:visible}.academy .ho-sdo-frame{flex-direction:column;gap:6px;display:flex}.academy .ho-sdo-cap{color:var(--muted);font-size:13px;font-weight:600}.academy .ho-sdo-row{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.academy .ho-sdo-id{border:2px solid var(--ink);background:var(--surface);border-radius:8px;flex-direction:column;flex:0 0 78px;justify-content:center;align-items:center;gap:2px;padding:6px 4px;display:flex}.academy .ho-sdo-id b{font-family:var(--mono);font-size:20px}.academy .ho-sdo-id small{color:var(--muted);white-space:nowrap;font-size:12px}.academy .ho-sdo-id.empty{border-style:dashed;border-color:var(--line)}.academy .ho-sdo-id.empty b{color:var(--muted)}.academy .ho-sdo-id.cur,.academy .ho-sdo-b.cur{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.academy .ho-sdo-bytes{flex:380px;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;display:grid}.academy .ho-sdo-b{border:1.5px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:14px 2px 6px;display:flex;position:relative}.academy .ho-sdo-b i{color:var(--muted);font-size:11px;font-style:normal;font-family:var(--mono);position:absolute;top:2px;left:5px}.academy .ho-sdo-b b{font-family:var(--mono);font-size:19px;line-height:1.2}.academy .ho-sdo-b small{color:var(--muted);white-space:nowrap;font-size:12px}.academy .ho-sdo-b.empty{border-style:dashed}.academy .ho-sdo-b.empty b{color:var(--muted)}.academy .ho-sdo-b.lit{border-color:var(--accent);background:var(--accent-soft)}.academy .ho-sdo-b.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,var(--surface))}.academy .ho-sdo-b.dim{opacity:.55}.academy .ho-sdo-sub{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:12px;display:flex}.academy .ho-sdo-ord{flex-direction:column;gap:10px;display:flex}.academy .ho-sdo-toks{flex-wrap:wrap;gap:10px;display:flex}.academy .ho-sdo-tok{border:1.5px solid var(--accent);background:var(--surface);min-width:76px;color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;display:flex}.academy .ho-sdo-tok b{font-family:var(--mono);font-size:22px}.academy .ho-sdo-tok small{color:var(--muted);font-size:12px}.academy .ho-sdo-tok:hover:not(:disabled){background:var(--accent-soft)}.academy .ho-sdo-tok.used{border-style:dashed;border-color:var(--line);opacity:.5;cursor:default}.academy .ho-sdo-out{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.academy .ho-sdo-val{font-family:var(--mono);color:var(--ink);border:1.5px solid var(--line);background:var(--surface);border-radius:8px;min-width:120px;padding:2px 12px;font-size:22px}.academy .ho-sdo-val.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}.academy .ho-sdo-val.good{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.academy .ho-sdo-tw{overflow-x:auto}.academy .ho-sdo-tr{border-collapse:collapse;width:100%;font-size:14px}.academy .ho-sdo-tr caption{text-align:left;color:var(--muted);padding-bottom:6px;font-size:13px;font-weight:600}.academy .ho-sdo-tr th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:5px 8px;font-weight:500}.academy .ho-sdo-tr td{border-bottom:1px solid var(--line);vertical-align:top;padding:5px 8px}.academy .ho-sdo-tr td:nth-child(-n+3){font-family:var(--mono);white-space:nowrap}.academy .ho-sdo-ab td:nth-child(2){white-space:normal;font-family:inherit}.academy .ho-sdo-ab td:first-child{white-space:normal;min-width:90px}.academy .ho-sdo-tr tr.hl td{background:var(--accent-soft)}.academy .ho-sdo-tr tr.miss td{color:var(--bad);font-style:italic}.academy .ho-sdo-tool{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px 10px;font-size:14px}.academy .ho-sdo-tool.bad{border-color:var(--bad);color:var(--bad);font-weight:600}.academy .ho-sdo-lines{flex-direction:column;gap:4px;font-weight:400;display:flex}.academy .ho-sdo-lines>span{font-family:var(--mono);flex-wrap:wrap;align-items:baseline;gap:12px;font-size:15px;display:flex}.academy .ho-sdo-lines b{min-width:38px}.academy .ho-sdo-lines code{font-family:var(--mono)}.academy .ho-sdo-lines em{color:var(--muted);font-family:inherit;font-size:13px}@media (width<=560px){.academy .ho-sdo-tok{min-width:62px;padding:6px 8px}.academy .ho-sdo-toks{gap:8px}.academy .ho-sdo-tr:not(.ho-sdo-ab) th:first-child,.academy .ho-sdo-tr:not(.ho-sdo-ab) td:first-child{display:none}.academy .ho-sdo-tr{font-size:13px}.academy .ho-sdo-tr th,.academy .ho-sdo-tr td{padding:5px}.academy .ho-sdo-bytes{flex-basis:100%;grid-template-columns:repeat(4,minmax(0,1fr))}.academy .ho-sdo-id{flex-direction:row;flex-basis:100%;gap:10px}}.academy .ho-sdo-qq{margin-top:8px;display:block}.academy .ho-pdo-mono{font-family:var(--mono)}.academy .ho-pdo-muted{color:var(--muted);font-size:14px}.academy .ho-pdo-cap{color:var(--muted);font-size:13px;margin:10px 0 6px!important}.academy .ho-pdo-note{min-height:1.5em;font-size:15px}.academy .ho-pdo-q{margin-top:10px;font-weight:600;display:block}.academy .ho-pdo-pal{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .ho-pdo-chip{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);cursor:grab;border-radius:999px;padding:6px 14px;font-size:14px}.academy .ho-pdo-chip b{font-family:var(--mono);font-weight:600}.academy .ho-pdo-chip:hover:not(:disabled),.academy .ho-pdo-chip:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.academy .ho-pdo-chip:disabled{opacity:.5;cursor:default}.academy .ho-pdo-build{border:1px solid var(--line);border-radius:12px;padding:12px}.academy .ho-pdo-panels{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;display:grid}.academy .ho-pdo-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px}.academy .ho-pdo-panel h3{font-size:15px;font-family:var(--mono);margin:0}.academy .ho-pdo-sub{color:var(--muted);font-size:13px;margin:2px 0 6px!important}.academy .ho-pdo-tbl{border-collapse:collapse;width:100%;font-size:13px}.academy .ho-pdo-tbl td{border-top:1px solid var(--line);vertical-align:top;padding:5px 6px}.academy .ho-pdo-tbl td:first-child{color:var(--muted);white-space:nowrap;padding-left:0}.academy .ho-pdo-tbl td.ho-pdo-mono{white-space:nowrap}.academy .ho-pdo-tbl tr.ho-pdo-e0 td:nth-child(2){box-shadow:inset 3px 0 0 var(--accent)}.academy .ho-pdo-tbl tr.ho-pdo-e1 td:nth-child(2){box-shadow:inset 3px 0 0 var(--canh)}.academy .ho-pdo-tbl tr.ho-pdo-e2 td:nth-child(2){box-shadow:inset 3px 0 0 var(--canl)}.academy .ho-pdo-bytes{border:2px dashed #0000;border-radius:10px;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;padding:2px;display:grid}.academy .ho-pdo-drop{border-color:var(--line)}.academy .ho-pdo-drop.over{border-color:var(--accent);background:var(--accent-soft)}.academy .ho-pdo-b{border:1px solid var(--line);font:inherit;color:var(--ink);background:var(--surface);border-radius:8px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:6px 2px;display:flex}.academy .ho-pdo-b small{color:var(--muted);white-space:nowrap;font-size:12px}.academy .ho-pdo-b span{font-family:var(--mono);white-space:nowrap;font-size:15px;font-weight:600}.academy .ho-pdo-free span{color:var(--muted);font-family:inherit;font-size:12px;font-weight:400}.academy .ho-pdo-b.ho-pdo-e0{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.academy .ho-pdo-b.ho-pdo-e1{border-color:var(--canh);background:color-mix(in srgb,var(--canh) 14%,var(--surface))}.academy .ho-pdo-b.ho-pdo-e2{border-color:var(--canl);background:color-mix(in srgb,var(--canl) 14%,var(--surface))}.academy button.ho-pdo-b{cursor:pointer}.academy button.ho-pdo-b:hover,.academy button.ho-pdo-b:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.academy .ho-pdo-b.ho-pdo-hit{box-shadow:inset 0 -4px 0 var(--ink)}.academy .ho-pdo-lenq:empty{display:none}.academy .ho-pdo-lenq{flex-direction:column;gap:8px;display:flex}.academy .ho-pdo-lens{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.academy .ho-pdo-lens .ho-opt{text-align:center}.academy .ho-pdo-trw{border:1px solid var(--line);border-radius:10px;overflow-x:auto}.academy .ho-pdo-tr{border-collapse:collapse;width:100%;font-size:14px}.academy .ho-pdo-tr th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 10px;font-size:13px;font-weight:500}.academy .ho-pdo-tr td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px 10px}.academy .ho-pdo-tr tr:last-child td{border-bottom:0}.academy .ho-pdo-tr td.ho-pdo-mono{white-space:nowrap}.academy .ho-pdo-tr tr.ho-pdo-pickable{cursor:pointer}.academy .ho-pdo-tr tr.ho-pdo-pickable td:first-child{color:var(--accent);font-weight:600}.academy .ho-pdo-tr tr.ho-pdo-pickable:hover,.academy .ho-pdo-tr tr.ho-pdo-pickable:focus{background:var(--accent-soft);outline:none}.academy .ho-pdo-tr tr.ho-pdo-pinned{background:var(--accent-soft)}.academy .ho-pdo-tr tr.ho-pdo-hl td{background:color-mix(in srgb,var(--accent) 12%,transparent);font-weight:600}.academy .ho-pdo-tr tr.ho-pdo-new td:first-child{color:var(--accent);font-weight:600}.academy .ho-pdo-dec{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.academy .ho-pdo-dec .ho-pdo-cap{margin:0!important}.academy .ho-pdo-out{min-height:1.5em;font-size:15px}.academy .ho-pdo-ctl{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.academy .ho-pdo-ctl label{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:flex}.academy .ho-pdo-ctl select{font:inherit;font-family:var(--mono);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:5px 8px}.academy .ho-pdo-seg{gap:6px;display:inline-flex}.academy .ho-pdo-seg .btn{min-width:48px;font-family:var(--mono)}.academy .ho-pdo-hb{font-size:14px}.academy .ho-pdo-goal{margin-top:4px!important}.academy .ho-pdo-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;display:grid}.academy .ho-pdo-card{flex-direction:column;gap:4px;padding-right:40px;display:flex;position:relative}.academy .ho-pdo-card .ho-pdo-mono{color:var(--muted);font-size:13px}.academy .ho-pdo-num{background:var(--ok);width:24px;height:24px;color:var(--surface);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;top:10px;right:10px}@media (width<=560px){.academy .ho-pdo-bytes{grid-template-columns:repeat(4,minmax(0,1fr))}}.academy .ho-pdo-svc{color:var(--muted);white-space:nowrap;font-style:italic}.academy .stage-fallback{text-align:center;color:var(--muted);margin:0;padding:40px 16px;font-size:14px;display:none}.academy .stage[data-failed=true] .stage-body{display:none}.academy .stage[data-failed=true] .stage-fallback{display:block}.academy .layouts button:disabled{opacity:.45;cursor:default}.academy :where(h2){margin:.83em 0;font-size:1.5em;font-weight:700}.academy :where(h3){margin:1em 0;font-size:1.17em;font-weight:700}.academy :where(h4){margin:1.33em 0;font-weight:700}.academy :where(p){margin:1em 0}:is(.academy:has(.qmodal) .rolebar,.academy:has(.stage.fs) .rolebar){display:none}.academy .hm-note{color:var(--muted);margin:10px 0 0;font-size:13.5px}.academy .dy-teaser{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;flex-flow:wrap;align-items:center;gap:14px}.academy .dy-teaser:hover{border-color:var(--accent)}.academy .dy-teaser b{flex:220px;font-size:17px}.academy .dy-teaser .dy-go{color:var(--accent);font-size:14px;font-weight:600}@media (width<=600px){.academy .layouts,.academy .views{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.academy .views button{white-space:nowrap}.academy .topl{flex-wrap:nowrap;min-width:0;max-width:100%}.academy .topl .views{min-width:0}.academy .railtog{flex:none}.academy .layouts>span{display:none}.academy .layouts button{white-space:nowrap}}.academy .is-locked,.academy .lesson-link.is-locked .t{color:var(--muted)}.academy .is-locked .lv,.academy .is-locked .st,.academy .is-locked svg:not(.lk){filter:grayscale();opacity:.65}.academy .is-locked:hover{color:var(--ink)}.academy .lock-tip{vertical-align:-2px;align-items:center;display:inline-flex;position:relative}.academy .lock-tip .lk{stroke:currentColor}.academy .lock-tip-b{z-index:20;background:var(--ink);width:max-content;max-width:220px;color:var(--surface);font:500 12.5px/1.35 var(--sans,inherit);letter-spacing:0;text-transform:none;text-align:left;opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;flex-direction:column;gap:2px;padding:7px 10px;transition:opacity .12s;display:flex;position:absolute;bottom:calc(100% + 8px);left:-8px;box-shadow:0 4px 14px #0000002e}.academy .lock-tip-b:after{content:"";border:6px solid #0000;border-top-color:var(--ink);position:absolute;top:100%;left:12px}.academy .lock-tip-b span{opacity:.85;font-weight:400}.academy .is-locked:hover .lock-tip-b,.academy .is-locked:focus-visible .lock-tip-b,.academy .is-locked:active .lock-tip-b{opacity:1;visibility:visible}.academy .pr-card.locked h3:after{content:none}.academy .pr-card.is-locked{background:var(--sunk)}.academy .pg-b.is-locked{opacity:.7}.academy .askbtn{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);white-space:nowrap;align-items:center;gap:7px;padding:7px 13px;font-size:13.5px;font-weight:500;display:inline-flex}.academy .askbtn:hover{filter:brightness(1.08)}.academy .tu-modes{padding:10px 16px 0}.academy .tu-msg.ai :where(p){margin:0 0 .6em}.academy .adv-strip{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--surface);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 20px;margin:18px 0 0;padding:16px 18px;display:flex}.academy .adv-strip>div{flex-direction:column;flex:280px;gap:3px;display:flex}.academy .adv-strip b{font-size:17px}.academy .adv-strip span{color:var(--muted);font-size:14.5px}.academy button.hm-card{font:inherit;color:inherit;text-align:left;cursor:pointer}.academy button.hm-card:hover{border-color:var(--accent)}.academy .hm-go{color:var(--accent);margin-top:8px;font-size:14px;font-weight:600;display:block}.academy .tu-msg.me{white-space:pre-wrap}.academy .tu-msg .tu-about{color:var(--muted);quotes:"“" "”";-webkit-line-clamp:3;white-space:normal;-webkit-box-orient:vertical;margin:0 0 4px;font-size:13px;display:-webkit-box;overflow:hidden}.academy .tu-msg.ai ul{list-style:outside}.academy .tu-msg.ai ol{list-style:decimal}.academy .tu-msg.ai li{margin:0 0 .25em}.academy .why .ho-advisor .btn{color:var(--ink)}@media (width<=600px){.academy .topl .railtog{order:-2}.academy .topl .askbtn{order:-1}}.academy .tu-you{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 16px 0;font-size:13px;display:flex}.academy .tu-you select{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:7px;max-width:200px;margin-left:4px;padding:3px 6px}.academy .tu-link{color:var(--accent);font:600 13px var(--body);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.academy .tu-link:disabled{opacity:.5;cursor:default}.academy .tu-prof{gap:8px}.academy .tu-prof textarea,.academy .tu-prof input{border:1px solid var(--line);width:100%;font:14px/1.4 var(--body);background:var(--surface);color:var(--ink);border-radius:8px;padding:8px 10px}.academy .tu-prof textarea{resize:vertical;min-height:70px}.academy .tu-prof .flabel{margin:8px 0 0}.academy .tu-hint{color:var(--muted);margin:0;font-size:13px}.academy .tu-setup{border:1px solid var(--line);border-radius:10px;flex-direction:column;align-items:flex-start;gap:6px;margin:0;padding:10px;display:flex}.academy .tu-modes .chip[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.academy button.hm-card .hm-h{font:600 18px/1.25 var(--display);margin:0;display:block}.academy button.hm-card .hm-p{color:var(--muted);font-size:14.5px;display:block}.academy .rail-hd{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.academy .railx{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;margin:-4px -6px 0 0;display:inline-grid}.academy .railx:hover,.academy .railx:focus-visible{background:var(--sunk);color:var(--ink)}.academy .railx svg,.academy .railtog svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.academy .railtog{justify-content:center;width:36px;height:36px;padding:7px}.academy main,.academy .app.offlesson main{max-width:1440px;margin:0 auto}.academy #homeView,.academy #practiceView,.academy #progressView,.academy #teamView,.academy #flagsView,.academy #pubView{width:100%;max-width:none;margin:0}.academy #lockView{width:100%;margin:0 auto}@media (width>=901px){.academy .app.norail .railtog{z-index:15;background:var(--surface);position:fixed;top:24px;left:16px}}@media (width>=901px) and (width<=1575px){.academy .app.norail main{padding-left:68px;padding-right:68px}}.academy .dispmenu{flex:none;margin-left:auto;position:relative}.academy .disptog{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:9px;place-items:center;display:inline-grid}.academy .disptog:hover,.academy .disptog:focus-visible,.academy .disptog[aria-expanded=true]{color:var(--ink);background:var(--sunk)}.academy .disptog svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.academy .disppop{z-index:25;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:8px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px -10px #0000004d}.academy .disppop .layouts{flex-flow:column;align-items:stretch;min-width:180px;overflow:visible}.academy .disppop .layouts>span{padding:6px 8px 4px;display:block}.academy .disppop .layouts button{text-align:left;white-space:nowrap}.academy .railscrim{display:none}@media (width<=900px){.academy .rail{z-index:45;border-right:1px solid var(--line);border-bottom:0;width:min(320px,86vw);height:100dvh;animation:.18s ease-out railin;position:fixed;inset:0 auto 0 0;overflow:auto;box-shadow:0 0 40px -10px #0006}.academy .rail .map,.academy .rail .lvf{display:flex}.academy .rail .railcheck,.academy .rail-note{display:block}.academy .mapbtn{display:none}.academy .railscrim{z-index:44;cursor:default;background:#00000059;border:0;padding:0;display:block;position:fixed;inset:0}}@keyframes railin{0%{transform:translate(-100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){.academy .rail{animation:none}}@media (width<=600px){.academy .topbar:has(.dispmenu){flex-wrap:nowrap}.academy .topbar:has(.dispmenu) .topl{flex:auto}}.academy .mascot{z-index:41;align-items:flex-end;gap:10px;max-width:min(360px,100vw - 32px);animation:.35s ease-out both mc-in;display:flex;position:fixed;bottom:20px;right:20px}.academy .mc-bubble{border:1px solid var(--line);background:var(--surface);border-radius:16px 16px 4px;flex-direction:column;gap:6px;padding:14px 16px;display:flex;position:relative;box-shadow:0 12px 32px -14px #0006}.academy .mc-name{align-items:baseline;gap:8px;padding-right:22px;display:flex}.academy .mc-name b{font-size:18px}.academy .mc-name small{font:600 10.5px/1 var(--mono,monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:6px;padding:4px 6px}.academy .mc-bubble>span{color:var(--ink);font-size:14px;line-height:1.45}.academy .mc-acts{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.academy .mc-acts .btn{padding:6px 12px;font-size:13.5px}.academy .mc-x{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:inline-grid;position:absolute;top:8px;right:8px}.academy .mc-x:hover,.academy .mc-x:focus-visible{background:var(--sunk);color:var(--ink)}.academy .mc-avatar,.academy .mascot-dot{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:inline-grid}.academy .mc-avatar{width:72px;height:72px}.academy .mc-avatar .kenny,.academy .mascot-dot .kenny{width:100%;height:100%}.academy .mascot-dot{z-index:41;width:60px;height:60px;position:fixed;bottom:16px;right:16px}.academy .mc-avatar:focus-visible,.academy .mascot-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.academy .kenny{filter:drop-shadow(0 10px 10px #00000038);animation:3.6s ease-in-out infinite k-float;overflow:visible}.academy .mc-avatar:hover .kenny,.academy .mascot-dot:hover .kenny{animation-duration:1.8s}.academy .kenny .k-glow{transform-origin:40px 40px;animation:3.6s ease-in-out infinite k-glow}.academy .kenny .k-eyes{transform-origin:40px 40px;animation:5.5s infinite k-blink}.academy .kenny .k-spark{transform-origin:68px 21px;animation:2.8s ease-in-out infinite k-twinkle}.academy .kenny .k-spark2{transform-origin:12px 62px;animation:3.4s ease-in-out .9s infinite k-twinkle}@keyframes k-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes k-glow{0%,to{opacity:.65;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}@keyframes k-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes k-twinkle{0%,to{opacity:.35;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@keyframes mc-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.academy .mascot,.academy .kenny,.academy .kenny *{animation:none!important}}@media (width<=600px){.academy .mascot{bottom:72px;right:12px}.academy .mascot-dot{bottom:68px;right:10px}.academy .mc-avatar{width:60px;height:60px}}.academy .signin-view{flex-direction:column;gap:14px;max-width:620px;margin:0 auto;padding:40px 16px 96px;display:flex}.academy .signin-view .lkbig svg{fill:none;width:40px;height:40px;stroke:var(--accent);stroke-width:1.8px}.academy .signin-view h2{margin:0}.academy .signin-pop{z-index:60;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.academy .signin-pop>.signin-view{background:var(--surface);border:1px solid var(--line);border-radius:18px;max-height:calc(100dvh - 32px);padding:28px 24px;position:relative;overflow:auto}.academy .signin-pop-x{z-index:61;background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;font-size:24px;position:fixed;top:16px;right:16px}.academy .dy-signup{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:12px;display:grid}.academy .dy-su{border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;text-decoration:none;display:flex}.academy .dy-su:hover,.academy .dy-su:focus-visible{filter:brightness(1.04)}.academy .dy-su span{color:var(--muted);font-size:14px}@media (width<=600px){.academy .dy-signup{grid-template-columns:minmax(0,1fr)}}.academy .basics-link{border:1px dashed var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 16px;padding:10px 14px;font-size:14.5px;display:flex}.academy .basics-link span{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.academy .basics-link a{color:var(--accent);font-weight:600;text-decoration:none}.academy .basics-link a:hover{text-decoration:underline}.academy .hm-basics .hm-ls{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:6px}.academy .hm-course{color:var(--muted);margin:6px 0 4px;font-size:15px}.academy .hm-course b{color:var(--ink)}.academy .th-videos{flex-direction:column;gap:18px;display:flex}.academy .th-video{flex-direction:column;gap:8px;margin:0;display:flex}.academy .th-frame{aspect-ratio:16/9;background:#000;border-radius:12px;width:100%;position:relative;overflow:hidden}.academy .th-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.academy .th-video figcaption{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 14px;font-size:14px;display:flex}.academy .th-video figcaption b{color:var(--ink);font-weight:600}.academy .th-src{font:500 11.5px var(--mono);color:var(--muted)}.academy .th-see{border:1px solid var(--line);border-left:4px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;margin:0;padding:10px 14px;font-size:14px;line-height:1.45}.academy .th-fix{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-left:4px solid #d97706;border-radius:10px;margin:0;padding:10px 14px;font-size:14px;line-height:1.45}.academy .th-tx{color:var(--ink);max-height:320px;margin:0;font-size:14px;line-height:1.55;overflow:auto}.academy .th-stars{flex-wrap:wrap;align-items:center;gap:4px 10px;margin:14px 0 0;display:flex}.academy .th-video .th-stars{margin:0}.academy .th-stars-l{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.academy .th-stars button{min-width:32px;min-height:32px;color:var(--line);cursor:pointer;background:0 0;border:0;padding:0;font-size:22px;line-height:1}.academy .th-stars button.on{color:#f59e0b}.academy .th-stars button:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:6px}.academy .th-stars-x{font-size:13px}.academy .th-why{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:8px;margin:8px 0 0;padding:12px;display:flex}.academy .th-why label{color:var(--muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.academy .th-why textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:var(--bg,#fff);resize:vertical;border-radius:8px;padding:8px 10px}.academy .th-why-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.academy .th-why-kinds,.academy .th-why-act{flex-wrap:wrap;gap:6px;display:flex}.academy .th-why .chip[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.academy .th-stars-n{color:var(--muted);font-size:12.5px}.academy .th-watch{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:18px 0 0;padding:14px 16px}.academy .th-watch h2{margin:0 0 4px;font-size:16px}.academy .th-watch>p{color:var(--muted);margin:0 0 10px;font-size:14px}.academy .th-watch ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.academy .th-watch-b{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--ink);font:500 14.5px var(--body,inherit);text-align:left;cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.academy .th-watch-b:hover,.academy .th-watch-b[aria-expanded=true]{background:var(--sunk)}.academy .th-watch .th-video{margin:10px 0 4px}.academy .th-slide img{border:1px solid var(--line);border-radius:9px;width:100%;height:auto;display:block}.academy .th-slide audio{width:100%;margin:8px 0 0;display:block}.academy .th-vtag{color:var(--accent);font-size:11px}.academy .ch-top{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px 28px;padding:8px 0 22px;display:flex}.academy .ch-top h1{margin:6px 0 14px}.academy .ch-cta{flex-wrap:wrap;gap:10px;display:flex}.academy .ch-stats{min-width:240px;color:var(--muted);flex:0 320px;font-size:14px}.academy .ch-stats p{margin:8px 0 4px}.academy .ch-stats b{color:var(--ink)}.academy .ch-stats a{color:var(--accent);font-weight:600;text-decoration:none}.academy .ch-bar{background:var(--sunk);border-radius:99px;height:10px;overflow:hidden}.academy .ch-bar span{background:var(--accent);border-radius:99px;height:100%;display:block}.academy .ch-mp{font:500 12px var(--mono);color:var(--muted);white-space:nowrap;margin-left:auto}.academy .ch-dot{border:2px solid var(--accent);box-sizing:border-box;border-radius:50%;flex:none;width:10px;height:10px;margin-left:4px}.academy .ch-sales{text-align:center;margin:28px 0 8px;font-size:14px}.academy .ch-back{text-align:left;margin:0 0 12px}.academy .xr-h1{font:700 30px/1.1 var(--display);margin:0}.academy .xr-sub{color:var(--muted);margin:0 0 10px;font-size:14px}.academy .xr-srcs{vertical-align:middle;gap:4px;margin-right:4px;display:inline-flex}.academy .xr-src{font:600 10.5px/1 var(--mono);letter-spacing:.04em;border:1px solid var(--line);white-space:nowrap;border-radius:6px;padding:3px 6px}.academy .xr-new{background:var(--accent-soft);color:var(--accent);border-color:#0000}.academy .xr-ts{color:var(--canh);border-color:currentColor}.academy .xr-fs{color:var(--canl);border-color:currentColor}.academy .xr-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:18px 0 6px;display:grid}.academy .xr-tile{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.academy a.xr-tile{color:inherit;text-decoration:none}.academy a.xr-tile:hover{border-color:var(--ok)}.academy .xr-tile b{font:700 24px/1.1 var(--display)}.academy .xr-tile span{color:var(--muted);font-size:13px}.academy .xr-score{letter-spacing:1px;white-space:nowrap;color:var(--ok);font-size:11px}.academy .xr-score .xr-off{color:var(--line)}.academy .xr-score.xr-unrated{color:var(--muted);letter-spacing:0}.academy .xr-scores{align-items:center;gap:8px;display:inline-flex}.academy .xr-scores .xr-score+.xr-score{color:#7a5af8}.academy .xr-split{color:#b54708;background:#fef0e6;border-radius:5px;padding:0 6px;font-size:11px;font-weight:700}.academy .xr-note.xr-other{border-left:3px solid #7a5af8;padding-left:8px}.academy .xr-s3{color:var(--warn)}.academy .xr-s1,.academy .xr-s2{color:var(--bad)}.academy .xr-row,.academy .xr-slot>summary{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.academy .xr-t{flex:220px;min-width:0}.academy .xr-t small,.academy .xr-gaps small,.academy .xr-unused small{color:var(--muted);font-size:12.5px}.academy .xr-lab{font:600 11px var(--mono);color:var(--muted)}.academy .xr-in{color:var(--muted);font-size:13px}.academy .xr-lr{white-space:nowrap;font-size:13px}.academy .xr-lr.xr-none{color:var(--muted)}.academy .xr-flags{color:var(--warn);white-space:nowrap;font-size:12px}.academy .xr-note{color:var(--muted);margin:4px 0 0;font-size:13.5px;line-height:1.45}.academy .xr-queue,.academy .xr-parts,.academy .xr-gaps,.academy .xr-unused{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.academy .xr-queue>li,.academy .xr-gaps>li{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px}.academy .xr-mod{margin:14px 0 0}.academy .xr-mod>h3{font:600 15px var(--body);margin:0 0 6px}.academy .xr-slot{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin:0 0 6px}.academy .xr-slot>summary{cursor:pointer;padding:9px 12px;list-style:none}.academy .xr-slot>summary::-webkit-details-marker{display:none}.academy .xr-slot[open]>summary{border-bottom:1px solid var(--line)}.academy .xr-body{padding:8px 12px 12px}.academy .xr-parts{margin-top:10px}.academy .xr-parts>li{border-top:1px dashed var(--line);padding:8px 0 0}.academy .xr-gaps>li{align-items:flex-start;gap:10px;display:flex}.academy .xr-sev{font:600 10.5px/1 var(--mono);text-transform:uppercase;border:1px solid;border-radius:6px;flex:none;margin-top:2px;padding:4px 6px}.academy .xr-high{color:var(--bad)}.academy .xr-medium{color:var(--warn)}.academy .xr-low{color:var(--muted)}.academy .xr-stamp{color:var(--muted);margin:4px 0 10px;font-size:14px}.academy .xr-stamp b{color:var(--ink);font-weight:600}.academy .xr-rubric{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--surface);border-radius:10px;margin:-4px 0 12px;padding:8px 12px;font-size:14px}.academy .xr-rubric small{color:var(--muted);font-size:12.5px}.academy .xr-revs{color:var(--muted);white-space:nowrap;font-size:12px}.academy .xr-reviews{border-left:2px solid var(--line);flex-direction:column;gap:6px;margin:8px 0 0;padding:0 0 0 10px;list-style:none;display:flex}.academy .xr-status{font:600 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--warn);border:1px solid;border-radius:6px;padding:5px 8px}.academy .xr-disp{font:600 10.5px/1 var(--mono);text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:6px;flex:none;padding:3px 6px}.academy .xr-disp-pass{color:var(--ok)}.academy .xr-disp-teach{color:var(--warn)}.academy .xr-disp-fix{color:var(--bad)}.academy .xr-disp-off{color:var(--muted)}.academy .xr-why{flex-wrap:wrap;gap:4px;margin:6px 0 2px;display:flex}.academy .xr-tag{background:var(--surface);border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:11.5px}.academy .xr-legend-box{margin:10px 0 14px}.academy .xr-legend{margin:6px 0}.academy .xr-legend .chip small{opacity:.7;margin-left:3px}.academy .xr-unused>li{font-size:14px}.academy .xr-head{font:600 18px/1.35 var(--body);margin:0 0 12px}.academy .xr-prices{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.academy .xr-prices>li{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:flex-start;gap:12px;padding:10px 12px;display:flex}.academy .xr-ans{text-align:center;min-width:64px;font:600 11px/1 var(--mono);text-transform:uppercase;border:1px solid;border-radius:6px;flex:none;margin-top:2px;padding:5px 6px}.academy .xr-ans-yes{color:var(--ok)}.academy .xr-ans-no{color:var(--warn)}.academy .xr-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 20px;margin:14px 0 0;display:grid}.academy .xr-verdict h3{font:600 15px var(--body);margin:14px 0 6px}.academy .xr-verdict ul,.academy .xr-verdict ol{margin:0;padding-left:20px;font-size:14px;line-height:1.5}.academy .xr-verdict .xr-prices{padding-left:0}.academy .xr-prompt{border:1px solid var(--line);background:var(--sunk);width:100%;color:var(--ink);font:12.5px/1.45 var(--mono);resize:vertical;border-radius:10px;margin-top:10px;padding:10px 12px}.academy .dx-answer{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0;padding:12px 14px;display:flex}.academy .dx-answer legend{padding:0 6px;font-weight:600}.academy .dx-answer label{color:var(--muted);flex-direction:column;flex:220px;gap:4px;font-size:13px;display:flex}.academy .dx-answer select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;min-height:38px;padding:7px 10px;font-size:15px}.academy .ho-faults-ctl .btn[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}@media (width<=600px){.academy .dx .ho-dmm-grp{flex-wrap:wrap}}.academy .topr{align-items:center;gap:10px;margin-left:auto;display:flex}.academy .topr .upg{background:var(--accent);color:var(--accent-ink);white-space:nowrap;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none}.academy .topr .upg:hover{filter:brightness(1.08)}.academy #lockView .btn .was{opacity:.65;margin-left:8px;font-weight:400}.academy .me{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;text-decoration:none;display:grid}.academy .me:hover{box-shadow:0 0 0 2px var(--accent)}.academy .themetog{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:4px 2px;font-size:13px}.academy .themetog:hover{color:var(--ink)}.academy .preview-note{border:1px solid var(--line);color:var(--muted);border-radius:8px;margin:0 0 12px;padding:6px 12px;font-size:12.5px}.academy .lesson-footer{color:var(--muted);margin:16px 0 0;font-size:12px;line-height:1.5}.academy .hm-price .amt .was{font:500 22px var(--display);opacity:.6;margin-left:10px}.academy .hm-before{color:color-mix(in srgb,var(--bg) 80%,transparent);margin:0 0 16px;font-size:13.5px;line-height:1.5}.academy .hm-before b{color:var(--bg)}.academy .hm-before p{margin:4px 0 0}.academy .cat{max-width:900px;margin:0 auto;padding:24px 20px 60px}.academy .cat-tools{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.academy .cat-flag{border:1px solid var(--warn);border-radius:10px;margin:0 0 18px;padding:10px 14px;font-size:13.5px;line-height:1.5}.academy .cat-flag code{font:12px var(--mono)}.academy .cat-doc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:32px 36px;font-size:14px;line-height:1.5}.academy .cat-eyebrow{font:600 11.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0}.academy .cat-title{font:700 28px/1.15 var(--display);margin:8px 0}.academy .cat-sub{color:var(--accent);margin:-2px 0 10px;font-size:16px;font-weight:600}.academy .cat-lede{color:var(--ink);margin:0;font-size:15px}.academy .cat-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:20px 0;padding:14px 0;list-style:none;display:grid}.academy .cat-facts li{flex-direction:column;display:flex}.academy .cat-facts b{font:700 24px/1.1 var(--display);color:var(--accent)}.academy .cat-facts span{color:var(--muted);font-size:12.5px}.academy .cat-doc h3{font:700 15px/1.2 var(--display);margin:18px 0 6px}.academy .cat-doc ul{margin:0;padding-left:18px}.academy .cat-doc li{margin:3px 0}.academy .cat-doc p{margin:0 0 6px}.academy .cat-two{grid-template-columns:1fr 1fr;gap:0 28px;display:grid}.academy .cat-mod{border-top:1px solid var(--line);break-inside:avoid;padding:8px 0}.academy .cat-mod-h{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.academy .cat-mod-h span,.academy .cat-lessons{color:var(--muted);font-size:12.5px}.academy .cat-mark{color:var(--accent)}.academy .cat-price b{font:700 20px/1 var(--display)}.academy .cat-edition{color:var(--muted);font-size:12.5px}.academy .cat-foot{border-top:1px solid var(--line);color:var(--muted);margin-top:18px;padding-top:8px;font-size:11.5px}@media (width<=700px){.academy .cat-two{grid-template-columns:1fr}.academy .cat-doc{padding:20px 16px}}@media print{@page{size:letter;margin:.45in}html:has(.cat-doc){background:#fff!important;min-height:0!important;margin:0!important;padding:0!important}body:has(.cat-doc){background:#fff!important;min-height:0!important;margin:0!important;padding:0!important}body:has(.cat-doc) .academy{background:#fff!important;min-height:0!important;margin:0!important;padding:0!important}body:has(.cat-doc) .app{background:#fff!important;min-height:0!important;margin:0!important;padding:0!important}body:has(.cat-doc) main{background:#fff!important;min-height:0!important;margin:0!important;padding:0!important}.academy .cat-tools,.academy .cat-flag{display:none!important}body:has(.cat-doc) .topbar{display:none!important}body:has(.cat-doc) .rolebar{display:none!important}body:has(.cat-doc) .railscrim{display:none!important}body:has(.cat-doc) .mascot{display:none!important}body:has(.cat-doc) .mascot-dot{display:none!important}.academy .cat{max-width:none;padding:0}.academy .cat-doc{color:#111;background:#fff;border:0;border-radius:0;padding:0;font-size:9.5pt}.academy .cat-doc *{color:inherit}.academy .cat-eyebrow,.academy .cat-facts b,.academy .cat-mark{color:#0b6b57}.academy .cat-facts span,.academy .cat-mod-h span,.academy .cat-lessons,.academy .cat-edition,.academy .cat-foot{color:#555}.academy .cat-two{grid-template-columns:1fr 1fr}.academy .cat-facts{grid-template-columns:repeat(6,1fr);margin:12px 0;padding:10px 0}.academy .cat-title{font-size:22pt}.academy .cat-sub{margin:0 0 6px;font-size:11.5pt}.academy .cat-lede{font-size:10.5pt}.academy .cat-doc h3{break-after:avoid;margin-top:9px}.academy .cat-mod{padding:5px 0}.academy .cat-doc li{margin:1px 0}.academy .cat-foot{margin-top:6px;padding-top:4px}.academy .cat-facts{margin:8px 0}}.academy .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.academy .tmg .lesson-head h1{margin:4px 0 0}.academy .tmg-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 20px;display:flex}.academy .tmg-seats{flex:260px;min-width:0}.academy .tmg-count{margin:0 0 8px;font-size:17px}.academy .tmg-count b{font-weight:600}.academy .tmg-free{color:var(--accent);font-weight:600}.academy .tmg-full{color:var(--muted)}.academy .tmg-bar{background:var(--sunk);border-radius:999px;max-width:420px;height:8px;overflow:hidden}.academy .tmg-bar i{background:var(--accent);border-radius:inherit;height:100%;transition:width .3s;display:block}.academy .tmg-head-acts{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.academy .tmg-head-acts .btn.primary{padding:10px 18px;font-weight:600}.academy .tmg-buy{color:var(--muted);text-underline-offset:3px;font-size:14px;text-decoration:underline}.academy .tmg-buy:hover{color:var(--accent)}.academy .tmg-panel{border:1px solid var(--line);background:var(--sunk);border-radius:10px;flex-direction:column;gap:10px;padding:16px;display:flex}.academy .tmg-panel label{flex-direction:column;gap:4px;display:flex}.academy .tmg-panel textarea{font:inherit;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);resize:vertical;border-radius:8px;min-height:96px;padding:10px 12px;font-size:15px}.academy .tmg-panel textarea:focus{border-color:var(--accent)}.academy .tmg-hint{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.academy .tmg-over{color:var(--warn)}.academy .tmg-err{color:var(--bad);margin:0;font-size:14px}.academy .tmg-acts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.academy .tmg-ok{border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 8%,var(--surface))}.academy .tmg-note{background:var(--surface);border:1px dashed var(--line);-webkit-user-select:all;user-select:all;border-radius:8px;margin:0;padding:10px 12px;font-size:14.5px}.academy .tmg-banner{background:color-mix(in srgb,var(--ok) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 40%,var(--line));border-radius:10px;margin:0;padding:10px 14px;font-size:14.5px}.academy .tmg-empty{text-align:left;flex-direction:column;gap:6px;display:flex}.academy .tmg-empty p{margin:0}.academy .tmg-table th .tmg-email{font:12px var(--mono);color:var(--muted);font-weight:400;display:block}.academy .tmg-row-acts{text-align:right;white-space:nowrap}.academy .tmg-row-acts .btn+.btn{margin-left:6px}.academy .tmg-remove{color:var(--muted)}.academy .tmg-remove:hover{color:var(--bad);border-color:var(--bad)}.academy .tmg-confirm td{white-space:normal;background:color-mix(in srgb,var(--bad) 6%,var(--surface));font-family:inherit;display:table-cell}.academy .tmg-confirm td>span:first-child{margin-bottom:8px;display:block}.academy .btn.primary.tmg-danger{background:var(--bad);border-color:var(--bad);color:#fff}@media (width<=600px){.academy .tmg-opt,.academy .tmg-table thead{display:none}.academy .tmg-table,.academy .tmg-table tbody{display:block}.academy .tmg-table tr{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;margin-bottom:8px;padding:10px 12px;display:grid}.academy .tmg-table th,.academy .tmg-table td{white-space:normal;border:0;padding:0}.academy .tmg-table tbody th{overflow-wrap:anywhere;grid-area:1/1}.academy .tmg-table .tmg-row-acts{grid-area:1/2}.academy .tmg-table td[data-label]{grid-column:1/-1;font-size:13px}.academy .tmg-table td[data-label]:before{content:attr(data-label) ": ";font-family:var(--body,inherit);color:var(--muted)}.academy .tmg-table .tmg-confirm td{grid-column:1/-1;display:block}.academy .tmg-head-acts{justify-content:space-between;width:100%}.academy .tmg-head-acts .btn.primary{flex:1}}.academy .dr-filter{flex-wrap:wrap;gap:6px;margin:6px 0 18px;display:flex}.academy .dr-filter button,.academy .dr-marks button{font:600 12.5px/1 var(--body);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;padding:8px 11px}.academy .dr-filter button[aria-pressed=true],.academy .dr-marks button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.academy .dr-gh{font:600 13px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:26px 0 12px}.academy .dr{min-width:0}.academy .dr-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.academy .dr-card{background:var(--surface);border:1px solid var(--line);border-top:3px solid #a7aaa9;border-radius:12px;gap:10px;min-width:0;padding:18px 20px;display:grid}.academy .dr-card.dr-st-promising{border-top-color:var(--warn)}.academy .dr-card.dr-st-keep{border-top-color:var(--ok)}.academy .dr-card.dr-st-retire{opacity:.6}.academy .dr-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.academy .dr-head h3{font:600 18px/1.3 var(--body);margin:0}.academy .dr-marks{flex-wrap:wrap;gap:4px;display:flex}.academy .dr-idea{color:var(--muted);max-width:75ch;margin:0;font-size:14px;line-height:1.55}.academy .dr-frame{min-width:0}.academy .dr-frame iframe{border:1px solid var(--line);background:var(--bg);border-radius:10px;width:100%;display:block}.academy .ho-fwd{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.academy .ho-skip{color:var(--muted);text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.academy .ho-skip:hover{color:var(--ink);background:var(--sunk)}.academy .ho-dots i.skip{box-shadow:inset 0 0 0 1.5px var(--line);background:0 0}.academy .ho-left{margin:0 0 14px}.academy .ho-left-go{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.academy .trk.trk-drafts{border-style:dashed;margin-top:12px;position:relative}.academy .trk.trk-drafts:before{content:"";border-top:1px solid var(--line);position:absolute;top:-11px;left:4px;right:4px}.academy{--bg:#f7f7f2;--surface:#fff;--sunk:#eaece5;--ink:#253028;--muted:#64705f;--line:#d7dcd1;--accent:#a12015;--action:#a12015;--accent-ink:#fff;--accent-soft:#f6e8e3;--brand-red:#a12015;--ok:#15803d;--warn:#946000;--bad:#b91c1c;--canh:#966a00;--canl:#267442;--hl:#f1dda3;--hl-sent:#f3eddb;--r:12px;--display:"Source Serif 4",Georgia,serif;--body:"Source Sans 3",system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--bg);color:var(--ink);font:400 var(--cba-body-size,16px)/1.7 var(--body);font-optical-sizing:auto}.academy[data-theme=dark]{--bg:#171d18;--surface:#202820;--sunk:#2b342a;--ink:#f1f3e9;--muted:#aebca5;--line:#3c493b;--accent:#ff9184;--accent-ink:#171d18;--accent-soft:#3b211d;--brand-red:#ff9184;--ok:#86d99c;--warn:#f0c266;--bad:#ff9184;--canh:#facc15;--canl:#4ade80;--hl:#604d18;--hl-sent:#333124;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.academy h1,.academy h2{font-family:var(--display);letter-spacing:-.035em;font-weight:400;line-height:1.15}.academy h1{font-size:clamp(34px,3.5vw,46px)}.academy h2{font-size:30px}.academy h3{font-family:var(--body);font-weight:600}.academy .tx,.academy [data-layout=interactive] .tx{font:400 var(--cba-reading-size,18px)/1.8 var(--display)}.academy .tx code,.academy .tx pre{font-family:var(--mono);font-size:.85em}.academy :is(.hm-card p,.hm-p,.hm-card .hm-p,.hm-sec>p,.hm-course,.ch-top p,.ch-stats p,.adv-strip span){font-size:var(--cba-body-size,16px);line-height:1.7}.academy :is(.btn,.views button,.askbtn,.hm-go,.lesson-link .t,.layouts button,.co-link,.ch-stats a){font-family:var(--body);font-size:var(--cba-control-size,14px);line-height:1.5}.academy :is(.meta,.stage-cap,.hm-note,.lesson-link .m,.ch-mp,.rail-note,.lesson-footer){font-size:var(--cba-caption-size,12px)}.academy .kicker{font:500 11px/1.6 var(--mono);letter-spacing:.08em;color:var(--muted)}.academy .kicker:before{content:"";background:var(--action);width:18px;height:2px;margin:0 9px 3px 0;display:inline-block}.academy .btn.primary{background:var(--action);border-color:var(--action);color:#fff;border-radius:8px}.academy .askbtn{color:var(--ink);border-color:var(--line);background:0 0}.academy .adv-strip .btn.primary{border-color:var(--line);color:var(--ink);background:0 0}.academy .topbar{border-bottom:3px double var(--line);background:var(--bg);flex-wrap:wrap;align-items:center;gap:14px;padding:18px 0 22px;display:flex}.academy .topl,.academy .topr{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.academy .topr{margin-left:auto}.academy .views{flex-wrap:wrap;gap:4px}.academy .views button{color:var(--muted);background:0 0;border-radius:0;padding:9px 10px}.academy .views button[aria-selected=true]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--action);background:0 0}.academy .toplogo{flex:none;order:0;width:192px;display:block}.academy .topbar:has(.toplogo) .topr{order:1}.academy .topbar:has(.toplogo) .topl{flex:1 0 100%;order:2}.academy .brand-logo{width:100%;height:auto;display:block}.academy .brand .brand-logo{max-width:200px;margin-bottom:8px}.academy .brand-logo.dk,.academy[data-theme=dark] .brand-logo.lt{display:none}.academy[data-theme=dark] .brand-logo.dk{display:block}.academy .brand b.brand-course{font:400 18px/1.3 var(--display);letter-spacing:0}.academy .hm-hero{background:0 0;border:0;border-radius:0;gap:5%;padding:24px 0 36px}.academy .hm-hero .lead{font-size:var(--cba-body-size,16px);line-height:1.7}.academy .hm-art{border:1px solid var(--line);background:var(--sunk);border-radius:12px;overflow:hidden}.academy .hm-card{background:var(--surface);border:1px solid var(--line);box-shadow:none;border-top:3px solid #a7aaa9;border-radius:12px;padding:25px}.academy button.hm-card .hm-h,.academy .hm-card h3{font:600 20px/1.25 var(--body);letter-spacing:-.02em}.academy .hm-grid{gap:18px}.academy .hm-sec{margin-top:36px}.academy .hm-mod{background:var(--surface);border-radius:10px}.academy .ch-top{border-bottom:0;align-items:stretch;gap:24px;padding-bottom:30px}.academy .ch-top>div:first-child{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex:420px;padding:28px}.academy .ch-stats{background:var(--sunk);border:1px solid var(--line);border-top:3px solid #a7aaa9;border-radius:12px;min-width:0;padding:28px}.academy .ch-bar{background:var(--line);height:4px}.academy .ch-bar span{background:#a7aaa9}.academy .ch-dot{border-color:var(--muted)}.academy .ch-dot.done{background:var(--muted)}.academy .rail{background:var(--sunk)}.academy .lesson-link[aria-current=true]{background:var(--surface);box-shadow:inset 2px 0 0 var(--action)}.academy .stage{border-radius:12px}.academy .stage-cap{background:var(--sunk)}.academy .meta .lv,.academy .meta .src{color:var(--muted);border:1px solid var(--line);background:0 0}.academy .adv-strip{background:var(--sunk);color:var(--ink);border:1px solid var(--line);border-radius:12px}.academy .hm-price{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-top:3px solid #a7aaa9}.academy .hm-price p,.academy .hm-price .amt,.academy .hm-price .until{color:var(--ink)}@media (width>=1180px){.academy [data-layout=split] .lesson{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:28px}}@media (width<=900px){.academy .topbar:has(.dispmenu){flex-wrap:wrap}.academy .topbar:has(.dispmenu) .topl{flex:1 0 100%}.academy .topr{flex-wrap:wrap;width:100%;margin-left:0}.academy .toplogo{width:192px}.academy .views{flex-wrap:wrap;max-width:100%;overflow:visible}.academy .ch-top>div:first-child,.academy .ch-stats{flex-basis:100%}.academy .hm-card{padding:24px}}@media (width<=600px){.academy .topbar{gap:12px}.academy .topbar .topl{flex-wrap:wrap}.academy .views button{font-size:var(--cba-caption-size,12px)}.academy .cba-reader{margin-right:auto}.academy .hm-hero{padding-top:8px}.academy .hm-hero .lead{font-size:var(--cba-body-size,16px)}}.academy :is(.tu-msg,.pr-card p){font-size:var(--cba-body-size,16px);line-height:1.7}.academy .pr-opts .opt{font-size:var(--cba-control-size,14px)}.academy .sh-acts a.btn.primary{color:#fff}.academy .fw-s li.lit .n{color:var(--accent-ink)}.academy[data-theme=dark] :is(.fw-s li.done .n,.fw-s li.x .n,.kt-id,.vcount),.academy[data-theme=dark] .btn.primary.tmg-danger{color:#171d18}.academy .g2-header{border-bottom:1px solid var(--line);flex-wrap:nowrap;gap:16px;padding:14px 0;position:relative}.academy .g2-header .toplogo{order:0;width:168px;max-width:32%}.academy .navigation-shell{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.academy .navigation-content{display:contents}.academy .navigation-content>.views{flex-wrap:nowrap;flex:1;justify-content:center;display:flex}.academy .navigation-toggle{white-space:nowrap}.academy .nav-phone-label{display:none}.academy .navigation-secondary{background:var(--surface);border:1px solid var(--line);z-index:15;border-radius:12px;width:330px;max-width:calc(100vw - 32px);max-height:75dvh;padding:20px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 10px 30px #0002}.academy .navigation-secondary[hidden]{display:none}.academy .navigation-secondary h3{margin:0 0 10px;font-size:15px}.academy .secondary-routes{gap:6px;margin-top:18px;display:grid}.academy .secondary-routes button,.academy .account-settings{text-align:left;min-height:44px;color:var(--ink);background:0 0;border:0;padding:10px;display:block}.academy .reading-settings{padding:10px 0}.academy .reading-settings summary{cursor:pointer;min-height:32px}.academy .reading-settings p{margin:12px 0 0}.academy .navigation-secondary .cba-reader{max-width:100%;margin-top:12px}.academy .advisor-sparkle{white-space:nowrap;flex:none;align-items:center;gap:8px;min-height:44px;margin-left:auto;display:flex}.academy .advisor-sparkle svg{color:var(--accent);flex:none}.academy .lesson-controls{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin:20px 0;padding:14px 16px;display:flex}.academy .lesson-controls label{font-size:var(--cba-control-size,14px);align-items:center;gap:10px;display:flex}.academy .lesson-controls select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:7px;max-width:100%;padding:10px}.academy .lesson-controls .btn{min-height:44px}.academy .lesson-controls [aria-pressed=true]{background:var(--sunk);border-color:var(--muted)}.academy .g2-lesson.text-hidden [data-section],:is(.academy .g2-lesson.diagram-hidden .lcol:not(:has(.th-videos)),.academy .g2-lesson.diagram-hidden .fig){display:none}.academy .g2-lesson.diagram-hidden:not(:has(.th-videos)){grid-template-columns:1fr!important}.academy .g2-lesson .expand-figure{z-index:4;position:absolute;top:14px;right:14px}.academy .g2-lesson.diagram-hidden .stage.fs{display:flex}.academy .home-disclosure{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:20px}.academy .home-disclosure summary{cursor:pointer;font-weight:600}.academy .home-disclosure[open] summary{margin-bottom:20px}.academy .ch-top h2{margin:12px 0;font-size:30px}.academy .ch-stats h2{font:600 19px var(--body);margin:0 0 18px}.academy .g2-next-milestone{border:1px solid var(--line);background:var(--surface);border-top:3px solid #a7aaa9;border-radius:12px;margin:24px 0 32px;padding:26px}.academy .g2-next-milestone h2{margin:10px 0}.academy .g2-next-milestone .btn{text-decoration:none;display:inline-block}.academy .skills-cards{grid-template-columns:1fr 1fr;gap:20px;display:grid}.academy .skills-cards>div{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:22px}.academy .skills-cards p{font:400 28px var(--display)}.academy .practice-track-totals{color:var(--muted);font-size:var(--cba-control-size,14px);flex-wrap:wrap;gap:10px 25px;display:flex}.academy .pr-grid:has(.diagnosis-tile){grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=900px){.academy .g2-header{flex-wrap:wrap;gap:10px}.academy .g2-header .toplogo{width:150px;max-width:45%;margin-right:auto}.academy .navigation-shell{flex:none}.academy .navigation-content{display:none}.academy .navigation-shell[data-open=true] .navigation-content{border:1px solid var(--line);background:var(--surface);z-index:15;border-radius:12px;flex-direction:column;width:340px;max-width:calc(100vw - 32px);max-height:80dvh;padding:18px;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 10px 30px #0002}.academy .navigation-content>.views{flex:none;gap:5px;display:grid}.academy .navigation-content>.views button{text-align:left;min-height:44px}.academy .navigation-secondary{width:100%;max-width:none;max-height:none;box-shadow:none;border:0;padding:18px 0 0;position:static;overflow:visible}.academy .nav-phone-label{display:inline}.academy .nav-desktop-label{display:none}.academy .advisor-sparkle{min-width:44px;min-height:44px;margin:0;padding:10px;background:0 0!important;border:0!important}.academy .advisor-sparkle span{display:none}.academy .g2-header .upg{padding:7px;font-size:12px}:is(.academy .skills-cards,.academy .pr-grid:has(.diagnosis-tile)){grid-template-columns:1fr}.academy .lesson-controls label{flex:1 0 100%;justify-content:space-between}.academy .lesson-controls label select{min-width:0}}@media (width<=360px){.academy .g2-header .toplogo{width:120px}.academy .g2-header{gap:4px}.academy .navigation-toggle{padding:8px}.academy .g2-header .upg{padding:4px;font-size:11px}}@media (width>=901px){.academy .g2-header{flex-wrap:wrap}.academy .navigation-shell{flex:300px}}.academy .cert-logo{width:34cqw;max-width:80%;height:auto;display:block}.academy .hm-price h2,.academy .hm-price>div>p,.academy .hm-price>div>p.until,.academy .hm-before,.academy .hm-before b{color:var(--ink)}.academy a.signin-link{color:var(--ink);text-decoration:none}.academy .g2-header .upg{background:var(--accent);color:var(--accent-ink);white-space:nowrap;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none}
