:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#102e58;background:#cfdbe6;font-synthesis:none;--blue:#1f74d6;--orange:#e07a1c;--ink:#102e58;--muted:#5a7591}*{box-sizing:border-box}html,body{margin:0;width:100vw;height:100vh;overflow:hidden;background:radial-gradient(120% 90% at 30% 20%,#f4f8fb,#dbe5ee 55%,#c3d1de)}button,input,output{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #0a84c6;outline-offset:3px}[hidden]{display:none!important}.stage{position:absolute;left:50%;top:50%;width:1920px;height:var(--stage-height,1080px);transform:translate(-50%,-50%) scale(var(--scale,1));overflow:hidden;background:linear-gradient(180deg,#fff0 62%,#c9d6e2aa),repeating-linear-gradient(90deg,#fff0 0 180px,#ffffff38 180px 186px,#fff0 186px 240px),radial-gradient(80% 70% at 32% 30%,#fbfdff,#e3ebf2 55%,#cbd8e4)}.glass{background:linear-gradient(125deg,#ffffffe8,#eef5fcd6);border:1px solid #fffffff2;box-shadow:0 10px 32px #2c4f7417,inset 0 1px #fff;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:24px}.scene{position:absolute;left:0;top:0;width:1250px;height:100%}#apparatus{position:absolute;left:0;top:0;width:1920px;height:100%;display:block;cursor:grab}#apparatus:active{cursor:grabbing}.labels{position:absolute;inset:0;pointer-events:none}.scene-label{position:absolute;left:0;top:0;white-space:nowrap;padding:6px 13px;border-radius:9px;font-size:16px;font-weight:600;color:#17324f;background:#ffffffe8;border:1px solid #dbe7f2;box-shadow:0 4px 14px #1e3d5c1c;transition:opacity .2s;will-change:transform}.scene-label i{font-style:normal;color:#1aa36f;margin-left:4px}.scene-label.h2 i{color:#1b7bdc}.scene-label.unit{background:linear-gradient(110deg,#244958f0,#17374be8);color:#fff;border-color:#9fbfcb}.scene-label.reactor{display:flex;flex-direction:column;align-items:center;padding:7px 16px;font-size:18px}.scene-label.reactor small,.scene-label.flask small{font-size:13px;font-weight:500;opacity:.9;margin-top:2px}.scene-label.small{font-size:14px;padding:4px 11px}.scene-label.water{font-size:13px;color:#0d6db5;padding:4px 9px}.scene-label.water i{color:#1b86e6}.scene-label.product i{color:#1b86e6}.scene-label.flask{display:flex;flex-direction:column;align-items:center;background:#ffffffb8;font-size:17px;color:#163a62}.scene-label.reading{display:flex;gap:8px;padding:5px 8px;background:#0e161dee;border:2px solid #56626e;border-radius:7px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:14px;font-weight:700}.scene-label.reading span{color:#ff4a55;text-shadow:0 0 6px #ff2a3a99}.scene-label.reading span+span{color:#5fe3ff;text-shadow:0 0 6px #2ad4ff99}.scene-header{position:absolute;left:34px;top:26px;pointer-events:none;padding:14px 26px 16px;border-radius:20px;background:linear-gradient(105deg,#f7fafdf2,#f2f6fae0 62%,#eef3f8b0);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 26px #0d22381f;border:1px solid #ffffffb0}.eyebrow{margin:0;font-size:15px;letter-spacing:2px;color:#4f6f8f}.scene-header h1{margin:10px 0 6px;font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:52px;letter-spacing:3px;color:#081f42}.subtitle{margin:0;font-size:20px;color:#2d4a69}.live-chips{position:absolute;right:28px;top:40px;display:flex;gap:0;padding:10px 6px;border-radius:18px}.live-chips span{display:flex;flex-direction:column;align-items:center;padding:0 16px;border-left:1px solid #c9d8e6}.live-chips span:first-child{border-left:0}.live-chips small{font-size:12px;color:var(--muted)}.live-chips b{font-size:18px;font-variant-numeric:tabular-nums;color:#16365e;margin-top:2px}.views{position:absolute;left:40px;bottom:36px;display:flex;align-items:center;gap:6px;padding:7px;border-radius:18px}.views button{border:0;background:transparent;padding:9px 17px;border-radius:12px;font-size:16px;font-weight:600;color:#2b4f74}.views button[aria-pressed=true]{background:linear-gradient(105deg,#237ee6,#0abfea);color:#fff;box-shadow:0 3px 10px #1d7fd84a}.views i{width:1px;height:26px;background:#c4d4e3;margin:0 4px}#flows[aria-pressed=false]{opacity:.6}.scene-hint{position:absolute;right:30px;bottom:44px;margin:0;font-size:13px;color:#56718b;background:#fffa;padding:6px 12px;border-radius:10px}.webgl-error{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:20px 28px;background:#fff;border-radius:14px}.panel{position:absolute;right:20px;top:18px;width:640px;height:calc(100% - 36px);padding:16px 20px 18px;display:flex;flex-direction:column}.tabs{display:flex;gap:6px;padding:5px;border-radius:16px;background:#e2ecf5c4;margin-bottom:10px}.tabs button{flex:1;border:0;background:transparent;border-radius:12px;padding:9px;font-size:18px;font-weight:650;color:#4a6a8a}.tabs button[aria-selected=true]{background:#fff;color:#0f3d6e;box-shadow:0 3px 10px #3d628a1c}#sim{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0}.equation-bar{display:flex;align-items:baseline;justify-content:center;gap:12px;font-size:22px;font-weight:650;color:#0f5a9c;padding:2px 0}.equation-bar em{font-style:normal;color:#b7781a}.equation-bar small{font-size:13px;font-weight:500;color:var(--muted);margin-left:10px}.card{background:linear-gradient(120deg,#ffffffde,#f1f7fdc9);border:1px solid #fff;border-radius:18px;box-shadow:0 5px 18px #3a5f8612;padding:12px 18px}.controls{display:flex;flex-direction:column;gap:6px;padding-top:10px;padding-bottom:10px}.control-head{display:flex;justify-content:space-between;align-items:baseline}.control-head label{font-size:16px;font-weight:650;color:#1c3f66}.control-head output{font-size:21px;font-weight:700;font-variant-numeric:tabular-nums;color:#0f4f8e}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:6px;margin:8px 0 4px;background:linear-gradient(90deg,#1f86e8 var(--fill,50%),#d3e0ec var(--fill,50%))}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #1f86e8;box-shadow:0 2px 6px #1c4e7f40}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid #1f86e8}.scale{position:relative;display:flex;justify-content:space-between;font-size:11px;color:#7790a8;height:16px}.scale .band{position:absolute;left:var(--a);width:calc(var(--b) - var(--a));top:0;text-align:center;color:#b36a16;border-top:3px solid #f2b25f;padding-top:1px;font-size:11px}.segmented{display:flex;gap:4px;padding:4px;margin-top:7px;background:#e3edf6;border-radius:12px}.segmented button{white-space:nowrap;flex:1;border:0;background:transparent;border-radius:9px;padding:7px 6px;font-size:14px;font-weight:600;color:#45678a}.segmented button[aria-checked=true]{background:#fff;color:#0d4c8a;box-shadow:0 2px 8px #3a5f8624}.segmented.small{margin:0;padding:3px}.segmented.small button{padding:4px 9px;font-size:13px}.catalyst input[type=range]{margin-top:10px}.results{padding-top:12px;padding-bottom:12px}.meters{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.meter small{display:block;font-size:12px;color:var(--muted);white-space:nowrap}.meter small i{font-style:normal;color:#93a8bc}.meter strong{display:block;font-size:30px;font-weight:750;font-variant-numeric:tabular-nums;margin:2px 0 5px}.meter strong span{font-size:14px;font-weight:500;margin-left:2px}.meter.eq strong{color:#2f6fbf}.meter.yield strong{color:var(--orange)}.meter.rate strong{color:#148a63}.bar{height:7px;background:#dde7f0;border-radius:6px;overflow:hidden}.bar b{display:block;height:100%;width:0;border-radius:6px;transition:width .35s ease}.eq .bar b{background:linear-gradient(90deg,#68a6ef,#2f6fbf)}.yield .bar b{background:linear-gradient(90deg,#ffbf75,#e07a1c)}.rate .bar b{background:linear-gradient(90deg,#6fdcb2,#148a63)}.composition{margin-top:8px}.composition>small{font-size:12px;color:var(--muted)}.comp-bar{display:flex;height:18px;border-radius:9px;overflow:hidden;margin-top:5px;background:#e6edf3}.comp-bar i{display:block;height:100%;transition:flex-basis .35s ease}.comp-legend{display:flex;gap:16px;margin-top:5px;font-size:12px;color:#4b6783}.comp-legend span:before{content:"";display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px;background:var(--c)}.chart-card{padding-top:10px;padding-bottom:8px}.chart-head{display:flex;justify-content:space-between;align-items:center}.chart-head h2{margin:0;font-size:16px;color:#1c3f66}.chart-head h2 small{font-size:11.5px;font-weight:500;color:#7a91a8;margin-left:6px}#chart{display:block;width:560px;height:150px;margin-top:2px}.legend{display:flex;gap:16px;font-size:12px;color:#4b6783;justify-content:center}.legend span:before{content:"";display:inline-block;width:18px;height:3px;margin-right:6px;vertical-align:middle;background:#2f6fbf}.legend .l-eq:before{background:repeating-linear-gradient(90deg,#2f6fbf 0 5px,transparent 5px 8px)}.legend .l-x:before{background:#e07a1c;height:4px}.legend .l-now:before{width:9px;height:9px;border-radius:50%;background:#e07a1c;box-shadow:0 0 0 3px #ffd9b4}.insight{flex:1 1 auto;min-height:0;overflow:auto;padding:8px 18px;background:linear-gradient(120deg,#fff8eedd,#fdf3e3c9);border-color:#fff3df}.insight b{font-size:15px;color:#9a5a10}.insight p{margin:3px 0 0;font-size:13px;line-height:1.55;color:#5d4a33}.transport{display:flex;gap:9px;margin-top:auto}.transport button{border:1.5px solid #fff;background:#e9f3ffcc;color:#214872;border-radius:28px;font-size:17px;font-weight:600;padding:11px 18px}.transport .primary{flex:1;background:linear-gradient(105deg,#237ee6,#0abfea);color:#fff;box-shadow:0 0 10px #ffffffd9,inset 0 1px 6px #b2fcff}.stage[data-running=true] .transport .primary{background:linear-gradient(105deg,#e98a2b,#f2b44c)}#theory{overflow:auto;padding:4px 6px 0}#theory .kicker{margin:6px 0 0;font-size:11px;letter-spacing:3px;color:#6586aa}#theory h2{font-size:28px;margin:8px 0 14px;font-family:Songti SC,STSong,serif}#theory .equation-bar.big{font-size:26px;justify-content:flex-start}#theory .cond{font-size:14px;color:#6b829c;margin:4px 0 14px}#theory h3{font-size:18px;margin:16px 0 6px;color:#174774}#theory p{font-size:15.5px;line-height:1.75;margin:0;color:#3f5c78}.model-note{background:#daeaf780;border-radius:14px;padding:12px 16px;margin-top:18px}.model-note b{font-size:14px}.model-note p{font-size:12.5px!important;margin-top:6px!important;line-height:1.65!important}.scene-label.o2 i{color:#ff4545}.scene-label.syn i{color:#ff8a2a}.scene-label.meoh i{color:#16b862}.scene-label.light i{color:#d9a400}.views button[data-mode][aria-pressed=true]{background:linear-gradient(105deg,#1f9d63,#22c47a);box-shadow:0 3px 10px #1f9d634a}.panel.glass{background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:16px 6px 18px}.panel .card,#theory{background:linear-gradient(120deg,#ffffffe0,#edf5ffd1);border:1px solid #fffffff0;box-shadow:0 7px 25px #40668e0b,0 10px 30px #0d223814,inset 0 1px #fff;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);border-radius:24px}.panel .card{padding-left:22px;padding-right:22px}.tabs{margin:0 0 12px;padding:0;gap:0;height:52px;border:1px solid #ffffff8c;border-radius:40px;background:#c5d9ef70;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);box-shadow:0 6px 20px #0d22381a}.tabs button{border-radius:40px;font-size:19px;font-weight:600;color:#33557d;border:2px solid transparent}.tabs button[aria-selected=true]{background:linear-gradient(#fff,#dceeff);color:#123763;box-shadow:0 0 17px #ffffffc4,inset 0 0 5px #fff;border:2px solid #fff}.equation-bar{padding:8px 14px;border-radius:18px;background:linear-gradient(120deg,#ffffffd4,#edf5ffc4);border:1px solid #fffffff0;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);box-shadow:0 6px 20px #0d223814}#theory .equation-bar.big{background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:2px 0}input[type=range]{height:9px;border-radius:10px;background:linear-gradient(90deg,#208cfa var(--fill,50%),#becfe0 var(--fill,50%))}input[type=range]::-webkit-slider-thumb{width:23px;height:23px;background:#fff;border:1px solid #a7bfd8;box-shadow:0 2px 5px #26528044}input[type=range]::-moz-range-thumb{width:23px;height:23px;background:#fff;border:1px solid #a7bfd8}.segmented{background:#dfeaf5b8;border:1px solid #ffffffa8}.segmented button[aria-checked=true]{background:linear-gradient(#fff,#e6f2ff);box-shadow:0 0 10px #ffffffb0,0 2px 8px #3a5f8624}.panel .insight{background:linear-gradient(120deg,#fff8eee0,#fdf3e3d1);border-color:#fff3dff0}#theory{padding:18px 24px 20px;flex:1;min-height:0}.transport button{background:#e9f3ffbc;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 18px #0d223814}.transport .primary{box-shadow:0 0 10px #ffffffd9,inset 0 1px 6px #b2fcff,0 6px 18px #0d22381f}.meter.out strong{color:#e07a1c}.meter.slag strong{color:#7a6a58}.meter.co strong{color:#2f6fbf}.out .bar b{background:linear-gradient(90deg,#ffbf75,#e07a1c)}.slag .bar b{background:linear-gradient(90deg,#d8c7b0,#8a7258)}.co .bar b{background:linear-gradient(90deg,#68a6ef,#2f6fbf)}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid #d9e5f0}.stats span{display:flex;flex-direction:column;align-items:center}.stats small{font-size:11.5px;color:var(--muted);white-space:nowrap}.stats b{font-size:17px;font-variant-numeric:tabular-nums;color:#16365e;margin-top:1px}.stats b[data-bad=true]{color:#d23a2a}.head-tools{display:flex;align-items:baseline;gap:10px}.chip-btn{border:1px solid #fff;background:linear-gradient(#fff,#e6f2ff);color:#1a5a9c;border-radius:14px;font-size:12.5px;font-weight:600;padding:3px 10px;box-shadow:0 2px 8px #3a5f8624}.comp-legend .aux{margin-left:auto;color:#7a8ea3}.legend .l-out:before{background:#e07a1c;height:4px}.legend .l-hm:before{background:repeating-linear-gradient(90deg,#c0392b 0 5px,transparent 5px 8px)}.legend .l-cold:before{width:14px;height:10px;background:#d23a2a26;border-radius:2px}#sim{gap:9px}.controls{gap:3px}.equation-bar em{font-size:15px;letter-spacing:1px}.scene-label.unit.stove{display:flex;flex-direction:column;align-items:center;font-size:15px;padding:5px 12px}.scene-label.stove small{font-size:12px;font-weight:600;color:#9fe0ff}.scene-label.stove small.on{color:#ffb070}.scene-label.gas{font-size:13.5px;color:#2c5f8a;background:#eef6ffe8}.scene-label.cold{font-size:13.5px;color:#1b66b0;background:#e6f2ffe8}.scene-label.hotmetal{font-size:14px;color:#fff;background:linear-gradient(110deg,#c8501cf0,#9a2f0ce8);border-color:#ffb27a}.scene-label.product{font-size:14px;padding:5px 10px}.scene-label.product.slag{color:#6e5536}.scene-label.zone{display:flex;flex-direction:column;align-items:flex-start;font-size:15px;padding:5px 11px;color:#fff;background:#14202ccc;border:1px solid #ffffff55;box-shadow:0 4px 14px #0006;backdrop-filter:blur(4px)}.scene-label.zone small{font-size:11.5px;font-weight:500;opacity:.85;margin-top:1px}.scene-label.zone.soft{border-color:#ff9a5a99}.scene-label.zone.drip{border-color:#ffc06a99}.scene-label.zone.race{background:#5a2a0ccc;border-color:#ffc070;font-size:13.5px}.scene-label.zone.slag{background:#5a4320cc;font-size:13px;padding:3px 9px}.scene-label.zone.iron{background:#7a2a08d8;font-size:13px;padding:3px 9px}.scene-label.status i{width:10px;height:10px;border-radius:50%;background:#2bdc6a;box-shadow:0 0 8px #2bdc6a}.scene-label.status i.warn{background:#ffb020;box-shadow:0 0 8px #ffb020}.scene-label.status i.bad{background:#ff3b30;box-shadow:0 0 10px #ff3b30}.views button{padding:9px 12px;font-size:15px}#chart{height:136px}.panel .card.results{padding-top:10px;padding-bottom:10px}.meter strong{font-size:28px}.scene-header h1{font-size:50px}.panel input[type=range]{margin:6px 0 3px}.panel .scale{height:14px}.panel .controls{padding-top:8px;padding-bottom:6px}.insight{min-height:74px}.stats{margin-top:8px;padding-top:7px}.composition{margin-top:6px}.panel .controls{gap:calc(3px + var(--extra-height,0px) / 12);padding-top:calc(8px + var(--extra-height,0px) / 24);padding-bottom:calc(6px + var(--extra-height,0px) / 24)}#chart{height:calc(136px + var(--extra-height,0px) / 3)}#sim{gap:12px}.panel .controls{padding-top:14px;padding-bottom:12px}.control-head label{font-size:17px}.o2card{padding-top:14px;padding-bottom:14px}.o2-head{display:flex;justify-content:space-between;align-items:flex-end}.o2-head small{display:block;font-size:13px;color:var(--muted)}.o2-head strong{display:block;font-size:60px;line-height:1.05;font-weight:780;font-variant-numeric:tabular-nums;color:#0f3d6e;letter-spacing:-1px}.o2-head strong span{font-size:24px;margin-left:4px;font-weight:600}.status-chip{font-size:20px;font-weight:700;padding:9px 20px;border-radius:30px;color:#fff;margin-bottom:8px;box-shadow:0 4px 14px #0002}.status-chip.ok{background:linear-gradient(105deg,#18a75e,#2fd07c)}.status-chip.low{background:linear-gradient(105deg,#b9361f,#e8582f)}.status-chip.high{background:linear-gradient(105deg,#d08a10,#f1b53b)}.gauge{position:relative;display:flex;height:14px;border-radius:8px;overflow:visible;margin-top:12px}.gauge .z{display:block;height:100%}.gauge .z.low{flex:0 0 25%;background:#ef6a4c;border-radius:8px 0 0 8px}.gauge .z.ok{flex:0 0 25%;background:#2fc477}.gauge .z.mid{flex:0 0 12.5%;background:#a8d86a}.gauge .z.high{flex:1;background:#f2b33d;border-radius:0 8px 8px 0}.gauge #needle{position:absolute;top:-6px;width:6px;height:26px;margin-left:-3px;border-radius:3px;background:#0f2e55;box-shadow:0 0 0 3px #fff,0 3px 8px #0005;transition:left .3s}.gauge-scale{position:relative;height:18px;font-size:12px;color:#7790a8;margin-top:6px}.gauge-scale span{position:absolute;transform:translate(-50%)}.gauge-scale span:first-child{transform:none}.gauge-scale span:last-child{transform:none}.zones{display:flex;flex-direction:column;gap:5px;margin-top:8px}.zone-row{display:flex;align-items:center;gap:10px;font-size:14px;color:#3f5c78;padding:5px 10px;border-radius:10px;background:#f4f8fc}.zone-row b{flex:0 0 46px;text-align:center;font-size:13px;color:#fff;border-radius:7px;padding:2px 0}.zone-row.low b{background:#e2573a}.zone-row.ok b{background:#22b46a}.zone-row.high b{background:#e3a226}.trend{display:grid;gap:7px;padding-top:12px;padding-bottom:8px}.trend-row{display:grid;grid-template-columns:120px 1fr 30px;align-items:center;gap:10px}.trend-row small{font-size:14px;color:#2d4a69;font-weight:600}.trend-row em{font-style:normal;font-weight:700;color:#0f4f8e;font-size:14px}.tbar{height:10px;border-radius:6px;background:#dbe6f0;overflow:hidden}.tbar b{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#68a6ef,#1f74d6);transition:width .35s}.tbar.warn b{background:linear-gradient(90deg,#f7c27a,#e0682c)}.trend .note{margin:2px 0 0;font-size:11.5px;color:#8aa0b5;text-align:right}.insight[data-st=low]{background:linear-gradient(120deg,#ffeee8e6,#fde3dad6)!important}.insight[data-st=low] b{color:#b5371f}.insight[data-st=ok]{background:linear-gradient(120deg,#ecfbf2e6,#def5e8d6)!important}.insight[data-st=ok] b{color:#14804a}.insight p{font-size:14.5px;line-height:1.65}.insight b{font-size:17px}#chip-status[data-st=ok]{color:#14904f}#chip-status[data-st=low]{color:#c63a20}#chip-status[data-st=high]{color:#c98a0c}.scene-header h1{font-size:46px}.scene-label.probe{display:flex;align-items:center;gap:7px;font-size:14px;padding:4px 10px 4px 4px;background:#0f2340e6;color:#fff;border-color:#5b8fd0}.scene-label.probe .pt{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#1f74d6;font-size:13px}.scene-label.probe .pv{font-family:SF Mono,Menlo,monospace;color:#5fe3a0;margin-left:2px}.scene-label.probe[data-st=low] .pv{color:#ff7a5c}.scene-label.probe[data-st=high] .pv{color:#ffd24a}.scene-label.status{display:flex;align-items:center;gap:7px;font-size:15px;padding:6px 13px;background:#101a24dd;color:#fff;border-color:#ffffff40}.scene-label .dot{width:10px;height:10px;border-radius:50%;background:#2bdc6a;box-shadow:0 0 8px #2bdc6a;margin:0}.scene-label .dot.warn{background:#ffb020;box-shadow:0 0 8px #ffb020}.scene-label .dot.bad{background:#ff3b30;box-shadow:0 0 10px #ff3b30}.scene-label.zone{font-size:14px;padding:5px 11px;color:#fff;background:#3a1a08cc;border:1px solid #ffb27a88}.scene-label.hot{font-size:14px;color:#a5410e;background:#fff2e6ee;border-color:#ffd2b0}.tabs button[aria-selected=false]{opacity:.85}.points{padding-top:12px;padding-bottom:12px}.points-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.points-head b{font-size:16px;color:#1c3f66}.points-head small{font-size:12px;color:#8aa0b5}.points-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.points-grid span{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:14px;background:#f2f7fc;border:1px solid #e1ebf4}.points-grid i{font-style:normal;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#1f74d6;color:#fff;font-weight:700;font-size:13px}.points-grid small{font-size:12.5px;color:#4b6783;margin-top:4px;white-space:nowrap}.points-grid b{font-size:19px;font-variant-numeric:tabular-nums;color:#0f3d6e;margin-top:2px}.points-grid span.main{border-color:#2fc477;box-shadow:0 0 0 2px #2fc47755}.points-grid span.main.low{border-color:#e2573a;box-shadow:0 0 0 2px #e2573a55}.points-grid span.main.high{border-color:#e3a226;box-shadow:0 0 0 2px #e3a22655}.insight{flex:1 1 auto}.scene-header{max-width:720px}.scene-header h1{font-size:44px;margin:6px 0 4px}.scene-header .subtitle{font-size:16px;margin:0;color:#3d5a78}.eyebrow{font-size:14px;letter-spacing:1px;color:#1f74d6;font-weight:700;margin:0}.views{left:50%;transform:translate(-50%);bottom:28px;gap:4px;padding:6px}.views button{display:flex;align-items:center;gap:7px;padding:10px 22px;font-size:17px}.views button i{width:auto;height:auto;background:none;margin:0;font-style:normal;font-size:15px;opacity:.8}.views button[data-mode][aria-pressed=true]{background:linear-gradient(105deg,#237ee6,#0abfea);box-shadow:0 3px 10px #1d7fd84a}.scene-hint{bottom:38px}.panel{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.pane{display:flex;flex-direction:column;gap:12px}.pane[hidden]{display:none}.ttl{display:block;font-size:19px;color:#0f3460;margin-bottom:6px}.ttl.sm{font-size:16px;margin-bottom:4px}.intro p{margin:0;font-size:14.5px;line-height:1.65;color:#36536f}.note{margin:8px 0 0;font-size:12px;color:#7d93a8}.pt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pt-grid button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 7px;border-radius:14px;background:#f2f7fc;border:1px solid #dfe9f3;cursor:pointer;font:inherit;color:inherit;transition:transform .15s,box-shadow .15s}.pt-grid button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1f74d626}.pt-grid i{font-style:normal;font-weight:800;font-size:17px;color:#fff;background:#1f74d6;border-radius:8px;padding:1px 9px}.pt-grid button.best i{background:linear-gradient(105deg,#f08a1c,#f5b330)}.pt-grid small{font-size:11.5px;line-height:1.3;text-align:center;color:#45627f;min-height:30px}.pt-grid b{font-size:14px;color:#0f4f8e;font-variant-numeric:tabular-nums}.notes ol,.notes ul{margin:4px 0 0;padding-left:20px;font-size:14px;line-height:1.65;color:#2d4a69}.notes li{margin:3px 0}.notes li.hl{color:#a3520c;font-weight:600}.slope{margin:8px 0 0;padding:8px 12px;border-radius:12px;background:#fff4e5;color:#8a4b0c;font-size:13.5px;line-height:1.6}.pt-head{display:flex;align-items:center;gap:12px;padding:4px 6px}.pt-head .back{border:0;background:#ffffffc8;border-radius:10px;padding:7px 12px;font:inherit;font-size:14px;font-weight:600;color:#1f74d6;cursor:pointer}.pt-head .badge{display:grid;place-items:center;min-width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#1f74d6,#0abfea);color:#fff;font-size:26px;font-weight:800;box-shadow:0 6px 16px #1f74d64d}.pt-head small{display:block;font-size:13px;color:#5a7591}.pt-head strong{font-size:22px;color:#0b2c55}.pt-head .nav2{margin-left:auto;display:flex;gap:6px}.pt-head .nav2 button{width:38px;height:38px;border:0;border-radius:12px;background:#ffffffc8;font-size:22px;color:#1f74d6;cursor:pointer}.ptable{display:grid;grid-template-columns:132px 1fr;margin:0;font-size:15px}.ptable dt{padding:9px 0;color:#5a7591;border-bottom:1px solid #e3ecf5}.ptable dd{margin:0;padding:9px 0;font-weight:650;color:#0f2e55;border-bottom:1px solid #e3ecf5}.ptable dt:last-of-type,.ptable dd:last-of-type{border:0}.best{background:linear-gradient(120deg,#fff7ebe8,#fdf0dcd6)!important}.best p{margin:4px 0;font-size:14px;line-height:1.6;color:#6d4512}.best small{display:block;font-size:12px;color:#a07b4a}.best b{font-size:16px;color:#8a4b0c;letter-spacing:1px}.best .star{font-weight:700;color:#b25a06}.best .warnline{font-size:13px;color:sienna}.demo-head{display:flex;flex-direction:column;gap:2px}.demo-head small{font-size:13px;color:#4f6b86}.demo-svg svg{display:block;width:100%;height:auto;max-height:230px}.demo-svg .d{fill:#dfe7ee;stroke:#8fa3b6;stroke-width:2}.demo-svg .fa{fill:none;stroke:#e07a1c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.demo-svg .rod{fill:#9fb3c6;stroke:#5d7790}.demo-svg .head{fill:#2a7fe0}.demo-svg .fl{fill:#5d7790}.demo-svg .tip{fill:#4fe3ff;opacity:0}.demo-svg .t{font-size:13px;fill:#4a6683;text-anchor:middle}.demo-svg .pr{transform:translateY(-34px)}.demo-svg.run .pr{animation:ins 1.4s .2s cubic-bezier(.3,.7,.3,1) forwards}.demo-svg.run .tip{animation:glow 1.6s 1.4s ease-in-out infinite}@keyframes ins{to{transform:translateY(0)}}@keyframes glow{0%,to{opacity:.35}50%{opacity:1}}.demo-read{display:flex;justify-content:space-between;align-items:baseline;margin-top:4px}.demo-read small{font-size:13px;color:#5a7591}.demo-read strong{font-size:34px;font-weight:780;color:#0f3d6e;font-variant-numeric:tabular-nums;opacity:0}.demo-read strong.show{animation:fade .5s 1.6s forwards}@keyframes fade{to{opacity:1}}.scale.three span{flex:1;text-align:center;border-top:3px solid #9cc6ee;margin:0 2px;padding-top:1px}.scale.three span:nth-child(2){border-color:#c9a77a}.scale.three span:nth-child(3){border-color:#8a6a4a}.strat-read{display:flex;align-items:center;gap:14px}.s-svg{flex:1}.s-svg svg{display:block;width:100%;height:auto}.s-svg .l1{fill:#d9ecfb}.s-svg .l2{fill:#c9ae8c}.s-svg .l3{fill:#7a5f45}.s-svg .t{font-size:11px;text-anchor:middle;fill:#24425f}.s-svg .t.w{fill:#fff}.s-svg .rod{fill:#2a7fe0}.s-svg .tip{fill:#4fe3ff;stroke:#fff;stroke-width:1.5}.s-svg .ax{stroke:#8fa3b6;stroke-width:1.2}.s-svg .cv{fill:none;stroke:#1f74d6;stroke-width:2.5}.s-svg .dot{fill:#e0682c;stroke:#fff;stroke-width:2}.s-svg .gl{stroke:#e0682c;stroke-dasharray:4 3;stroke-width:1.2}.s-svg .ts{font-size:10px;fill:#7790a8}.s-svg .ts.l{text-anchor:start}.s-num{flex:0 0 170px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.s-num small{font-size:13px;color:#5a7591}.s-num strong{font-size:56px;line-height:1;font-weight:780;color:#0f3d6e;font-variant-numeric:tabular-nums}.s-num strong span{font-size:22px;margin-left:3px}.s-num .status-chip{font-size:13.5px;padding:6px 12px;margin:0;white-space:nowrap}.status-chip.mid{background:linear-gradient(105deg,#b98320,#e0a93b)}.pin{position:absolute;left:0;top:0;display:flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:20px;border:2px solid #fff;background:#0f2a4ae6;color:#fff;font:inherit;font-size:14px;cursor:pointer;box-shadow:0 4px 14px #0b1e3540;transition:opacity .2s,background .2s;white-space:nowrap;will-change:transform}.pin b{display:grid;place-items:center;min-width:26px;height:26px;padding:0 4px;border-radius:13px;background:#1f74d6;font-size:14px;font-weight:800}.pin.best b{background:linear-gradient(105deg,#f08a1c,#f5b330)}.pin .pv{font-style:normal;font-family:SF Mono,Menlo,monospace;font-weight:700;color:#5fe3a0;font-size:13px}.pin[data-st=low] .pv{color:#ff8a6c}.pin[data-st=high] .pv{color:#ffd24a}.pin:hover,.pin.sel{background:#1f74d6;border-color:#bfe4ff}.pin.sel b{background:#fff;color:#1f74d6}.pin.sel{box-shadow:0 0 0 4px #1f74d655,0 6px 18px #0b1e3560}.scene-label.strat-l{font-size:13.5px;background:#14202cd0}.scene-label.flowtag{font-size:14px}body.mobile{overflow:auto;background:#dbe6ef}body.mobile .stage{position:relative;left:0;top:0;transform:none;width:100%;height:auto;overflow:visible}body.mobile .scene{position:relative;width:100%;height:var(--scene-h,52vh)}body.mobile .scene-header{left:10px;top:10px;padding:8px 12px 9px;border-radius:14px;max-width:calc(100% - 20px)}body.mobile .scene-header h1{font-size:22px;letter-spacing:1px;margin:3px 0 2px}body.mobile .eyebrow{font-size:11px;letter-spacing:0}body.mobile .subtitle,body.mobile .scene-hint{display:none}body.mobile .views{position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));transform:none;z-index:20;justify-content:space-between;border-radius:18px}body.mobile .views button{flex:1;flex-direction:column;gap:1px;padding:6px 2px;font-size:13px;justify-content:center}body.mobile .views button i{font-size:14px}body.mobile .panel{position:relative;right:auto;top:auto;width:auto;height:auto;margin:-18px 0 0;padding:10px 10px 90px;border-radius:22px 22px 0 0;overflow:visible;background:#eef4f9!important}body.mobile .panel .card{padding:12px 14px;border-radius:18px}body.mobile .pt-grid{grid-template-columns:repeat(4,1fr);gap:6px}body.mobile .pt-grid small{font-size:10.5px}body.mobile .pin{font-size:11px;padding:2px 6px 2px 2px;gap:3px;border-width:1.5px}body.mobile .pin b{min-width:20px;height:20px;font-size:11.5px}body.mobile .pin .pv{display:none}body.mobile .scene-label{font-size:11px;padding:3px 7px}body.mobile .scene-label.small{font-size:10px}body.mobile .ptable{grid-template-columns:100px 1fr;font-size:14px}body.mobile .pt-head strong{font-size:17px}body.mobile .pt-head .badge{min-width:46px;height:46px;font-size:21px}body.mobile .s-num{flex-basis:120px}.body.mobile .s-num strong{font-size:44px}body.mobile .o2-head strong{font-size:46px}body.mobile .status-chip{font-size:15px;padding:7px 14px}body.mobile .trend-row{grid-template-columns:96px 1fr 26px}.pin:not(.near){padding-right:3px}html.mobile,html.mobile body{width:100%;height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}body.mobile #apparatus{width:100%;height:100%}body.mobile .labels{overflow:hidden}body.mobile .scene-label.small{display:none}body.mobile .scene-header{top:8px;left:8px;padding:6px 10px}body.mobile .scene-header h1{font-size:17px;margin:2px 0 0}body.mobile .eyebrow{font-size:10px}.labels .leads{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;overflow:visible}.leads line{stroke:#fff;stroke-width:1.6;opacity:.9;filter:drop-shadow(0 0 2px #0b1e35aa)}.leads line.clu{stroke-dasharray:3 3;opacity:.75}.leads line.lab{stroke:#d9ecff;stroke-width:1.3}.leads circle{fill:#4fe3ff;stroke:#fff;stroke-width:1}.leads circle.lab{fill:#ffd24a}.pin.cluster{padding:3px 12px 3px 3px;background:#0f2a4af0;gap:7px}.pin.cluster b{padding:0 9px;font-size:13.5px;background:linear-gradient(105deg,#1f74d6,#0abfea)}.pin.cluster .pc{font-style:normal;font-size:12px;opacity:.85}.pin.cluster.open{background:#1f74d6;opacity:.9}.pin:not(.near) .pv{display:none}.pin.near:not(.val) .pv{display:none}.pin.near:not(.val){padding-right:3px}.pin.val .pv{display:inline}.scene-label.keep{z-index:1}.scene-header{transition:padding .25s,max-width .25s}body.compact .scene-header{padding:10px 18px;border-radius:16px;max-width:520px}body.compact .scene-header .eyebrow,body.compact .scene-header .subtitle{display:none}body.compact .scene-header h1{font-size:24px;margin:0}body.compact .scene-header h1:before{content:"LONHOT \b7  ";color:#1f74d6;font-weight:800}.pt-grid b.len{font-size:12.5px;line-height:1.25;text-align:center;color:#0f4f8e;font-weight:750}.pt-grid em{font-style:normal;font-size:11px;color:#6d86a0}body.mobile .pt-grid b.len{font-size:10.5px}body.mobile .pt-grid em{font-size:9.5px}body.mobile .pin.cluster{padding:2px 8px 2px 2px;gap:4px}body.mobile .pin.cluster b{font-size:11px;padding:0 6px}body.mobile .pin.cluster .pc{display:none}body.mobile .scene-label.small.keep{display:block}body.mobile.compact .scene-header{padding:5px 10px}body.mobile.compact .scene-header h1{font-size:14px}:root{--ink:#0b2545;--ink2:#3d5a7a;--muted:#6b829b;--hair:rgba(16,46,88,.12);--blue:#0a63d8}.stage{--u:max(1px, calc(1px / var(--scale, 1)));--s1:calc(8 * var(--u));--s2:calc(16 * var(--u));--s3:calc(24 * var(--u));--m:calc(16 * var(--u));--pw:calc(475 * var(--u));--floor:calc(16 * var(--u));isolation:isolate;background:radial-gradient(80% 70% at 32% 30%,#fbfdff,#e3ebf2 55%,#cbd8e4)}@media(max-aspect-ratio:3/2){.stage{--pw:calc(430 * var(--u))}}.stage .glass,.stage .views,.stage .panel,.stage .panel-tab{background:linear-gradient(160deg,#f0f7ffd1,#d0e4fcb3);border:1px solid rgba(255,255,255,.75);box-shadow:0 calc(12 * var(--u)) calc(40 * var(--u)) #12305a29,inset 0 1px #ffffffe6;backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6)}.stage .scene{position:absolute;inset:0;width:auto}.boot{position:absolute;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;background:radial-gradient(80% 70% at 50% 38%,#fbfdff,#e3ebf2 55%,#cbd8e4);color:#0b2545;transition:opacity .45s ease}.boot.done{opacity:0;pointer-events:none}.boot-card{display:flex;flex-direction:column;align-items:center;gap:calc(14 * var(--u));padding:calc(28 * var(--u)) calc(40 * var(--u)) calc(24 * var(--u));max-width:min(92%,calc(640 * var(--u)));text-align:center;border-radius:calc(25 * var(--u));border:1px solid #ffffffb8;background:linear-gradient(145deg,#f1f7ffeb,#dbe9f8e6);box-shadow:inset 0 1px 1px #fff,0 3px 20px #176dd323;color:#09235d;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.boot-badge{display:inline-block;padding:.32em .85em;border-radius:999px;background:linear-gradient(180deg,#69d1ff,#2798ff 40%,#1479ef);box-shadow:inset 0 2px 3px #ffffff9c,0 2px 9px #4caeff80;border:1px solid #bceeff;color:#fff;font-size:calc(18 * var(--u));font-weight:700;letter-spacing:.04em;text-shadow:0 1px 2px #147ac566}.boot-title{margin:0;padding:0;font-size:calc(44 * var(--u));line-height:1.15;font-weight:800;letter-spacing:.03em;color:#081f5c;text-shadow:0 1px 0 #ffffffb3}.boot-line{margin:0;padding:0;font-size:calc(20 * var(--u));line-height:1.45;font-weight:600;color:#0863c8;letter-spacing:.02em}.boot-bar{width:calc(280 * var(--u));height:calc(6 * var(--u));border-radius:999px;background:#102e581f;overflow:hidden}.boot-bar i{display:block;height:100%;width:100%;border-radius:inherit;background:linear-gradient(90deg,#5ac8fa,#0a84ff);transform:scaleX(.1);transform-origin:left center;animation:bootPulse 1.15s ease-in-out infinite}@keyframes bootPulse{0%,to{transform:scaleX(.1)}50%{transform:scaleX(.62)}}.boot-hint{margin:0;font-size:calc(16 * var(--u));color:#5a7390;letter-spacing:.06em}.stage .scene-header{position:absolute;left:var(--m);top:var(--m);z-index:5;pointer-events:none;max-width:calc(100% - var(--pw) - 3 * var(--m));padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-family:PingFang SC,Microsoft YaHei,sans-serif}.scene-header .course-title-card{position:relative;isolation:isolate;width:max-content;max-width:100%;font-size:calc(20 * var(--u));padding:.55em 1em .65em;border-radius:1.25em;border:1px solid #ffffffb8;background:linear-gradient(145deg,#f1f7ffeb,#dbe9f8e6);box-shadow:inset 0 1px 1px #fff,0 3px 20px #176dd323;color:#09235d;text-align:left;backdrop-filter:blur(calc(14 * var(--u))) saturate(1.2);-webkit-backdrop-filter:blur(calc(14 * var(--u))) saturate(1.2)}.scene-header .course-title-card{padding-left:1.25em}.scene-header .course-title-card:before{content:"";position:absolute;left:.5em;top:.75em;bottom:.75em;width:calc(3 * var(--u));min-width:2px;border-radius:99px;background:linear-gradient(180deg,#29aff3,#146cf2);pointer-events:none}.scene-header .header-meta{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-start;gap:.65em;font-size:.9em;line-height:1.35;font-weight:700;color:#142e76;letter-spacing:.04em}.scene-header .subject-badge{display:inline-block;flex:none;padding:.35em 1em;border-radius:999px;background:linear-gradient(180deg,#69d1ff,#2798ff 40%,#1479ef);box-shadow:inset 0 2px 3px #ffffff9c,0 2px 9px #4caeff80;border:1px solid #bceeff;color:#fff;font-size:1em;font-weight:700;text-shadow:0 1px 2px #147ac566}.stage .scene-header h1{font-family:PingFang SC,Microsoft YaHei,sans-serif;margin:.12em 0 .04em;padding:0;font-size:2.25em;line-height:1.15;font-weight:800;letter-spacing:.035em;color:#081f5c;text-shadow:0 1px 0 #ffffffb3;white-space:normal}.stage .scene-header h1:before,.scene-header h1:after{content:none}.stage .scene-header .subtitle{display:block;margin:0;padding:0;border:0;font-size:1.2em;line-height:1.4;letter-spacing:.06em;font-weight:600;color:#0863c8;text-shadow:0 1px 0 #ffffff80}.scene-header .subtitle-lead{display:block;font-weight:600}.scene-header .subtitle-detail{display:block;margin-top:.2em;font-size:.72em;line-height:1.45;letter-spacing:.02em;font-weight:600;color:#3d6390}.stage .scene-hint{position:static;margin:calc(8 * var(--u)) 0 0;font-size:var(--floor);line-height:1.4;color:#29435c;background:#ffffffc9;border-radius:99px;width:max-content;padding:5px 12px}body.compact .stage .scene-header .subtitle,body.compact .stage .scene-hint{display:none}body.compact .scene-header .course-title-card{font-size:calc(16 * var(--u))}.stagebar{position:absolute;z-index:6;left:var(--m);right:calc(var(--pw) + 2 * var(--m));bottom:var(--m);display:flex;align-items:center;justify-content:center;gap:var(--s1);pointer-events:none;transition:right .36s cubic-bezier(.3,.7,.2,1)}.stagebar>*{pointer-events:auto}.stage .views{position:static;transform:none;display:flex;gap:calc(4 * var(--u)) var(--s1);padding:calc(6 * var(--u)) calc(10 * var(--u));border-radius:calc(20 * var(--u))}.stage .views button{display:flex;align-items:center;gap:calc(6 * var(--u));border:0;background:transparent;padding:calc(7 * var(--u)) calc(14 * var(--u));border-radius:calc(11 * var(--u));font-size:calc(17 * var(--u));font-weight:500;line-height:1.2;color:#25507e;white-space:nowrap}.stage .views button:hover{background:#ffffff8c}.stage .views button[aria-pressed=true],.stage .views button[data-mode][aria-pressed=true]{background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff;font-weight:600;box-shadow:0 2px 8px #0a63d84d}.stage .panel{position:absolute;z-index:7;top:var(--m);right:var(--m);bottom:var(--m);left:auto;width:var(--pw);height:auto;padding:0;--pf:1.25;--ff:calc(var(--u) * var(--pf));--floor:calc(16 * var(--ff));display:flex;flex-direction:column;border-radius:calc(24 * var(--u));overflow:hidden;transition:transform .36s cubic-bezier(.3,.7,.2,1),opacity .3s}.stage.panel-collapsed .panel{transform:translate(calc(100% + 2 * var(--m)));opacity:0;pointer-events:none}.stage.panel-collapsed .stagebar{right:calc(48 * var(--u) + 2 * var(--m))}.stage.panel-collapsed .scene-header{max-width:calc(100% - 6 * var(--m))}.panel-tab{position:absolute;z-index:7;right:var(--m);top:50%;transform:translateY(-50%);writing-mode:vertical-rl;display:flex;align-items:center;gap:var(--s1);padding:var(--s2) calc(10 * var(--u));border-radius:calc(16 * var(--u));font-size:var(--floor);font-weight:600;color:#164a86;letter-spacing:.2em;cursor:pointer}.panel-tab[hidden]{display:none}.panel-tab span{writing-mode:horizontal-tb;font-size:calc(22 * var(--u));line-height:1}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--s2) var(--s2) var(--s1) var(--s3)}.panel-title{margin:0;font-size:calc(22 * var(--ff));font-weight:700;letter-spacing:.01em;color:#06204a;display:flex;align-items:baseline;gap:var(--s1);min-width:0}.panel-step{font-size:var(--floor);font-weight:500;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:calc(32 * var(--u));height:calc(32 * var(--u));border-radius:50%;border:0;background:#0a3c7814;color:#25507e;font-size:calc(20 * var(--ff));line-height:1;display:grid;place-items:center;padding:0 0 calc(2 * var(--u));cursor:pointer}.icon-btn:hover{background:#0a3c7824}.panel-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:0 var(--s3) var(--s3);scrollbar-width:thin;scrollbar-color:rgba(16,46,88,.25) transparent}.acc{border-top:1px solid var(--hair)}.pane>.acc:first-child,.pane>.pt-head+.acc{border-top:0}.acc-head{display:flex;align-items:center;gap:var(--s1);width:100%;border:0;background:none;text-align:left;cursor:pointer;padding:calc(14 * var(--u)) 0;font-size:calc(18 * var(--ff));font-weight:600;color:#0b2545;font-family:inherit}.acc-title{flex:1;min-width:0;line-height:1.3}.chev{flex:none;width:calc(10 * var(--u));height:calc(10 * var(--u));border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-25%) rotate(45deg);transition:transform .28s ease;margin-right:calc(4 * var(--u))}.acc[data-open=false] .chev{transform:rotate(-45deg)}.acc-body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .32s cubic-bezier(.3,.7,.2,1)}.acc[data-open=false] .acc-body{grid-template-rows:0fr}.acc-inner{min-height:0;overflow:hidden;padding-bottom:var(--s2)}.acc[data-open=false] .acc-inner{padding-bottom:0;visibility:hidden;transition:visibility 0s .32s}.acc-head .badge,.pt-head .badge{flex:none;display:inline-grid;place-items:center;min-width:calc(30 * var(--u));height:calc(28 * var(--u));padding:0 var(--s1);border-radius:calc(9 * var(--u));background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff;font-size:var(--floor);font-weight:600;box-shadow:none}.state,.acc-head .status-chip{flex:none;font-size:var(--floor);font-weight:500;color:var(--ink2);background:#0a3c7814;border-radius:999px;padding:calc(2 * var(--u)) calc(10 * var(--u));margin:0;box-shadow:none}.acc-head .status-chip{color:#fff;font-weight:600}.state:empty{display:none}.panel .desc{margin:0 0 var(--s1);font-size:calc(16 * var(--ff));line-height:1.6;color:var(--ink2)}.panel .feedback{margin-top:var(--s2);padding:calc(12 * var(--u)) var(--s2);border-radius:calc(14 * var(--u));background:#ffffff8c!important;border:0;border-left:calc(4 * var(--u)) solid #9ab3c9}.panel .feedback.best{border-left-color:#f0a020;background:#fff6e4b3!important}.panel .feedback.insight[data-st=ok]{border-left-color:#18a75e;background:#ecfbf2bf!important}.panel .feedback.insight[data-st=low]{border-left-color:#e2453a;background:#ffece9cc!important}.panel .feedback.insight[data-st=high]{border-left-color:#f0a020;background:#fff6e4b3!important}.panel .note{font-size:calc(12 * var(--ff));color:var(--muted)}.pt-table{display:flex;flex-direction:column;border-radius:calc(14 * var(--u));background:#ffffff80;border:1px solid rgba(255,255,255,.7);overflow:hidden}.pt-row{display:grid;grid-template-columns:calc(44 * var(--u)) 1fr calc(116 * var(--u)) calc(80 * var(--u));align-items:center;gap:var(--s1);width:100%;border:0;border-top:1px solid var(--hair);background:none!important;text-align:left;padding:calc(6 * var(--u)) calc(10 * var(--u));font:inherit;font-size:calc(14 * var(--ff));color:#0f2e55;cursor:pointer}.pt-row:hover{background:#ffffffb3!important}.pt-row.on{background:#2b8cff24!important}.pt-th{border-top:0;cursor:default;font-size:calc(12 * var(--ff));font-weight:600;color:var(--muted);padding-top:calc(8 * var(--u));padding-bottom:calc(4 * var(--u))}.pt-th:hover{background:none!important}.pt-row i{font-style:normal;display:inline-grid;place-items:center;min-width:calc(36 * var(--u));height:calc(26 * var(--u));border-radius:calc(8 * var(--u));background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff;font-weight:700;font-size:calc(14 * var(--ff))}.pt-row.best i{background:linear-gradient(140deg,#f08a1c,#f5b330)}.pt-row .nm{line-height:1.35;font-weight:600}.pt-row .nm b{color:#d27a0a}.pt-row .len{font-variant-numeric:tabular-nums;color:#0b3b70;font-weight:600}.pt-row em{font-style:normal;color:var(--ink2);font-size:calc(13 * var(--ff))}.panel .pt-head{padding:var(--s1) 0 var(--s1);gap:var(--s1)}.panel .pt-head .badge{min-width:calc(48 * var(--u));height:calc(44 * var(--u));font-size:calc(22 * var(--ff));font-weight:800}.panel .pt-head .back,.panel .pt-head .nav2 button{background:#fff9}.panel .pt-head small{font-size:calc(12 * var(--ff));color:var(--muted)}.panel .pt-head strong{font-size:calc(18 * var(--ff))}.panel .ptable{font-size:calc(14 * var(--ff));grid-template-columns:calc(150 * var(--u)) 1fr}.panel .ptable dt,.panel .ptable dd{border-color:var(--hair)}.panel .demo{background:none}.panel .demo-sub{display:block;font-size:calc(13 * var(--ff));color:var(--ink2);margin-bottom:calc(4 * var(--u))}.panel .demo-svg{border-radius:calc(14 * var(--u));background:#ffffff73;padding:calc(6 * var(--u))}.panel .notes ol,.panel .notes ul{font-size:calc(14 * var(--ff));color:#2d4a69}.panel .slope{font-size:calc(13 * var(--ff))}.panel .control{margin-bottom:var(--s1)}.panel .o2card{margin-top:var(--s2);padding:calc(12 * var(--u)) var(--s2);border-radius:calc(14 * var(--u));background:#ffffff80;border:1px solid rgba(255,255,255,.7)}.panel .strat-read{margin-top:var(--s2);padding:calc(10 * var(--u));border-radius:calc(14 * var(--u));background:#ffffff80}.panel .trend{padding-top:0}html:root #apparatus{cursor:grab}html:root #apparatus:active{cursor:grabbing}body.mobile .stage{--u:1px}body.mobile .stage .scene{position:relative;inset:auto;width:100%;height:var(--scene-h,52vh)}body.mobile .stage .scene-header{left:10px;top:10px;max-width:calc(100% - 20px)}body.mobile .scene-header .course-title-card{font-size:11px;padding:6px 11px 7px 15px;border-radius:13px;box-shadow:inset 0 1px 1px #fff,0 2px 10px #176dd31f}body.mobile .scene-header .header-meta{font-size:11px;gap:6px;letter-spacing:0}body.mobile .scene-header .subject-badge{font-size:11px;padding:.2em .7em}body.mobile .stage .scene-header h1{font-size:19px;margin:3px 0 0;letter-spacing:.02em}body.mobile .stage .scene-header .subtitle,body.mobile .stage .scene-hint{display:none}body.mobile.compact .stage .scene-header h1{font-size:15px}body.mobile .stagebar{position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:20}body.mobile .stage .views{flex:1;justify-content:space-between;border-radius:18px;padding:5px}body.mobile .stage .views button{flex:1;flex-direction:column;gap:1px;padding:6px 2px;font-size:13px;justify-content:center}body.mobile .stage .panel{position:relative;inset:auto;width:auto;margin:-16px 0 0;border-radius:22px 22px 0 0;overflow:visible;transform:none;opacity:1;pointer-events:auto;--ff:1px;--floor:15px;background:linear-gradient(170deg,#ecf5fff7,#d4e6fbf2)!important}body.mobile .panel-head{padding:14px 14px 4px 18px}body.mobile .icon-btn,body.mobile .panel-tab{display:none}body.mobile .panel-body{overflow:visible;padding:0 14px 92px}body.mobile .pt-row{grid-template-columns:40px 1fr 74px 84px;font-size:13px;padding:6px 8px}body.mobile .pt-row em{font-size:11.5px}body.mobile .pt-row i{min-width:32px;font-size:13px}body.mobile .boot-title{font-size:26px}body.mobile .boot-line{font-size:13px}body.compact .stage .scene-header{max-width:calc(100% - var(--pw) - 3 * var(--m));padding:0;border-radius:0}body.compact .stage .scene-header h1{white-space:nowrap}body.mobile.compact .stage .scene-header{max-width:calc(100% - 20px)}body.mobile .scene-header .header-meta{white-space:nowrap}body.mobile.compact .stage .scene-header h1{display:none}body.mobile.compact .scene-header .course-title-card{padding:4px 10px 4px 12px}body.compact .stage .scene-header h1:before,body .stage .scene-header h1:before{content:none}.boot-card{max-width:min(92%,calc(780 * var(--u)))}body.mobile .pt-row{grid-template-columns:36px 1fr 92px 62px}body.mobile .pt-row .len{font-size:12px}body:not(.mobile) .pt-row{grid-template-columns:calc(40 * var(--u)) 1fr calc(100 * var(--u)) calc(64 * var(--u));gap:calc(6 * var(--u))}body:not(.mobile) .pt-row .nm{font-size:calc(14 * var(--ff))}body:not(.mobile) .pt-row .len{font-size:calc(13 * var(--ff))}body:not(.mobile) .pt-row em{font-size:calc(12 * var(--ff))}body:not(.mobile) .pt-row .nm b{display:none}body.mobile .boot{position:fixed}.stage .panel,.stage .views,.stage .panel-tab{background:linear-gradient(160deg,#d6e9ffcc,#a8cefab3 55%,#8cbcf5a8);border:1px solid rgba(232,244,255,.7);box-shadow:0 calc(12 * var(--u)) calc(40 * var(--u)) #0e346e38,inset 0 1px #ffffffbf;backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6)}.panel .panel-head{border-bottom:1px solid rgba(16,60,130,.14)}.panel .acc{border-top-color:#103c8229}.panel .acc-head{color:#06204a}.panel .pt-table,.panel .o2card,.panel .strat-read,.panel .demo-svg{background:#ecf5ff6b!important;border-color:#ffffff80}.panel .pt-row.pt-th{background:#145abe1a!important}.panel .pt-row:hover{background:#ffffff59!important}.panel .pt-row.on{background:#146ef02e!important}.panel .feedback{background:#ecf5ff80!important}.panel .icon-btn{background:#0a3c8c1f}.stage .scene-header h1{text-shadow:0 0 calc(6 * var(--u)) rgba(255,255,255,.85),0 1px 0 #fff}.stage .scene-header .header-meta,.stage .scene-header .subtitle,.stage .scene-header .subtitle-detail{text-shadow:0 0 calc(5 * var(--u)) rgba(255,255,255,.9),0 1px 0 rgba(255,255,255,.9)}body:not(.mobile) .panel .demo-svg svg{max-height:calc(120 * var(--u))}body:not(.mobile) .panel .demo-read{margin-top:calc(6 * var(--u))}body:not(.mobile) .panel .demo-read strong{font-size:calc(26 * var(--ff))}.panel-body{padding-bottom:calc(32 * var(--u))}body.mobile .stage .panel{background:linear-gradient(170deg,#d0e5fff7,#9ec6f8f5)!important}body.mobile .pt-row{grid-template-columns:34px 1fr 84px 58px}.stage .panel,.stage .views,.stage .panel-tab{background:linear-gradient(160deg,#c8e1ffcc,#96c2f8b3 55%,#76aaf0a8)}body.mobile .stage .panel{background:linear-gradient(170deg,#c4defff7,#8cbaf6f5)!important}.panel .pt-table,.panel .o2card,.panel .strat-read,.panel .demo-svg{background:#e8f3ff7a!important}.pt-row .nm b{display:none}@media(max-aspect-ratio:3/2){body:not(.mobile) .scene-header .course-title-card{font-size:calc(15 * var(--u))}body:not(.mobile).compact .scene-header .course-title-card{font-size:calc(13 * var(--u))}}html{touch-action:manipulation;-webkit-text-size-adjust:100%;text-size-adjust:100%}html.mobile,html.mobile body{overscroll-behavior:none}body.mobile #apparatus{touch-action:none}body.mobile .stage .scene-header{left:calc(10px + env(safe-area-inset-left))}html.mobile.land,html.mobile.land body{height:100%;overflow:hidden}body.mobile.land .stage{display:flex;flex-direction:row;height:100vh;height:100dvh;overflow:hidden}body.mobile.land .stage .scene{flex:1 1 auto;min-width:0;width:auto;height:100%}body.mobile.land .stage .panel{flex:0 0 clamp(300px,42vw,400px);height:100%;margin:0;border-radius:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:env(safe-area-inset-right)}body.mobile.land .panel-head{padding:10px 12px 2px 14px}body.mobile.land .panel-body{padding:0 10px 16px}body.mobile.land .stagebar{position:absolute;left:8px;right:8px;bottom:8px;z-index:20}body.mobile.land .stage .views button{flex-direction:row;gap:4px;padding:7px 2px;font-size:12.5px}body.mobile.land .scene-header .course-title-card{padding:4px 10px 4px 12px}body.mobile.land .stage .scene-header h1{font-size:15px}@media(min-width:600px){body.mobile:not(.land) .panel-body{max-width:720px;margin:0 auto}body.mobile:not(.land) .stagebar{left:50%;right:auto;width:min(560px,calc(100% - 16px));transform:translate(-50%)}}body.mobile.land .stage .views{position:relative;left:auto;right:auto;bottom:auto;transform:none;width:100%}@media(min-width:600px){body.mobile:not(.land) .stage .views{position:relative;left:auto;right:auto;bottom:auto;transform:none;width:100%}}body.mobile .stage .scene,body.mobile .stage .scene *{touch-action:none}html.mobile,html.mobile body{touch-action:pan-x pan-y}:root{--ink:#0b2545;--ink2:#3d5a7a;--muted:#6a819b;--blue:#0a6cff;--hair:rgba(16,46,88,.12)}.stage .glass,.stage .views,.stage .panel,.stage .panel-tab,body.mobile .stage .panel{background:linear-gradient(160deg,#f0f7ffd1,#d0e4fcb3)!important;border:1px solid rgba(255,255,255,.75);box-shadow:0 calc(12 * var(--u)) calc(40 * var(--u)) #12305a29,inset 0 1px #ffffffe6;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body:not(.mobile) .stage .panel{border-radius:calc(24 * var(--u))}.stage .panel-title{color:#06204a}.panel .panel-head{border-bottom:0}.panel .acc{border-top-color:var(--hair)}.panel .acc-head{color:#0b2545}.panel .pt-table,.panel .o2card,.panel .strat-read,.panel .demo-svg{background:#ffffff80!important;border-color:#ffffffb3}.panel .feedback{background:#ffffff8c!important}.panel .pt-row.pt-th{background:#0a3c780f!important}.panel .pt-row:hover{background:#ffffff8c!important}.panel .pt-row.on{background:#0a6cff1f!important}.panel .icon-btn{background:#0a3c7814}.panel .icon-btn:hover{background:#0a3c7824}.scene-header .course-title-card{background:linear-gradient(145deg,#f1f7fff7,#dbe9f8f5);border:1px solid #ffffffb8;box-shadow:inset 0 1px 1px #fff,0 3px 20px #176dd323;color:#09235d;backdrop-filter:none;-webkit-backdrop-filter:none}.stage .scene-header h1{text-shadow:0 1px 0 #ffffffb3}.stage .scene-header .header-meta{text-shadow:none}.stage .scene-header .subtitle{text-shadow:0 1px 0 #ffffff80}.stage .scene-header .subtitle-detail{text-shadow:none}.boot-card{background:linear-gradient(145deg,#f1f7fff7,#dbe9f8f5);border:1px solid #ffffffb8;box-shadow:inset 0 1px 1px #fff,0 3px 20px #176dd323;color:#09235d;backdrop-filter:none;-webkit-backdrop-filter:none}.sheet-grab{display:none}.dev-strip{flex:none;padding:calc(14 * var(--u)) var(--s3) calc(6 * var(--u))}.dev-cap{font-size:calc(17 * var(--ff));font-weight:700;color:#06204a;margin:0 0 calc(8 * var(--u));display:flex;align-items:baseline;gap:calc(8 * var(--u))}.dev-cap small{font-size:calc(12 * var(--ff));font-weight:500;color:var(--muted)}.dev-row{display:grid;grid-template-columns:1fr 1fr;gap:calc(6 * var(--u))}.dev-row .chip{display:flex;align-items:center;gap:calc(8 * var(--u));min-width:0;border:1px solid rgba(255,255,255,.75);background:#ffffff80;border-radius:calc(10 * var(--u));padding:calc(6 * var(--u)) calc(8 * var(--u));font:inherit;font-size:calc(14 * var(--ff));color:#0f2e55;cursor:pointer;text-align:left;line-height:1.25}.dev-row .chip:hover{background:#ffffffbf}.dev-row .chip b{flex:none;display:inline-grid;place-items:center;min-width:calc(24 * var(--u));height:calc(24 * var(--u));padding:0 calc(4 * var(--u));border-radius:calc(7 * var(--u));background:#0a3c781a;color:#164a86;font-size:calc(13 * var(--ff));font-weight:800}.dev-row .chip i{margin-left:auto;font-style:normal;font-size:calc(12 * var(--ff));color:var(--muted);white-space:nowrap}.dev-row .chip.on{background:#0a6cff24;border-color:#0a6cff73;color:#06204a;font-weight:600}.dev-row .chip.on b{background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff}.dev-row .chip-cap{display:none}body:not(.mobile) .dev-row .chip:first-child{grid-column:1 / -1}body:not(.mobile) .panel-head{padding-top:calc(4 * var(--u));border-top:1px solid var(--hair)}.dev-pts{display:grid;gap:calc(8 * var(--u))}.dev-pt{display:block;width:100%;text-align:left;border:1px solid rgba(255,255,255,.75);background:#ffffff80;border-radius:calc(12 * var(--u));padding:calc(8 * var(--u)) calc(10 * var(--u));font:inherit;color:#0f2e55;cursor:pointer}.dev-pt:hover{background:#ffffffbf}.dev-pt.best{border-color:#e896148c}.dp-h{display:flex;align-items:center;gap:calc(8 * var(--u))}.dp-h i{flex:none;font-style:normal;display:inline-grid;place-items:center;min-width:calc(36 * var(--u));height:calc(26 * var(--u));border-radius:calc(8 * var(--u));background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff;font-weight:800;font-size:calc(14 * var(--ff))}.dp-h strong{min-width:0;font-size:calc(15 * var(--ff));line-height:1.3}.dp-h strong small{display:block;font-weight:400;font-size:calc(12 * var(--ff));color:var(--muted)}.dp-h b{flex:none;font-size:calc(12 * var(--ff));color:#b86b00;background:#ffbe5038;border-radius:999px;padding:calc(1 * var(--u)) calc(8 * var(--u))}.dp-h em{margin-left:auto;font-style:normal;color:#5a7aa0;font-size:calc(18 * var(--ff))}.dp-g{display:grid;grid-template-columns:auto 1fr;gap:calc(2 * var(--u)) calc(10 * var(--u));margin-top:calc(6 * var(--u));font-size:calc(13 * var(--ff));line-height:1.4}.dp-g small{color:var(--muted);font-size:calc(12 * var(--ff));white-space:nowrap}.dp-g span{min-width:0;overflow-wrap:anywhere}.panel .pt-head .nav2{margin-left:auto;display:flex;gap:calc(4 * var(--u))}.panel .pt-head .nav2 button{width:calc(32 * var(--u));height:calc(32 * var(--u));border-radius:50%;border:0;background:#0a3c7814;color:#25507e;font-size:calc(18 * var(--ff));cursor:pointer}.pin.pulse:after{content:"";position:absolute;inset:-6px;border-radius:inherit;border:2px solid rgba(255,170,40,.95);animation:pinPulse 1.4s ease-out infinite;pointer-events:none}@keyframes pinPulse{0%{transform:scale(.85);opacity:1}to{transform:scale(1.55);opacity:0}}@media(prefers-reduced-motion:reduce){.pin.pulse:after{animation:none;opacity:.8}}html.mobile:not(.land),html.mobile:not(.land) body{height:100%;overflow:hidden}body.mobile:not(.land) .stage{height:100vh;height:100dvh;overflow:hidden}body.mobile:not(.land) .stage .panel{position:fixed;left:0;right:0;bottom:0;margin:0;z-index:15;display:flex;flex-direction:column;height:var(--sheet-h,150px);max-height:100dvh;overflow:hidden;border-radius:20px 20px 0 0;transition:height .32s cubic-bezier(.3,.7,.2,1);padding-bottom:env(safe-area-inset-bottom)}body.mobile.sheet-open:not(.land) .stage .panel{height:min(80vh,calc(100vh - 120px));height:min(80dvh,calc(100dvh - 120px))}body.mobile:not(.land) .sheet-grab{display:flex;flex-direction:column;align-items:center;gap:2px;flex:none;width:100%;border:0;background:none;padding:6px 0 0;cursor:grab;touch-action:none;font:inherit}body.mobile:not(.land) .sheet-grab i{width:40px;height:5px;border-radius:3px;background:#102e5847}body.mobile:not(.land) .sheet-grab span{font-size:11px;color:var(--muted);line-height:1.2}body.mobile .dev-strip{padding:4px 0 6px}body.mobile .dev-cap{display:none}body.mobile .dev-row{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;padding:2px 12px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-x;scroll-padding:0 12px}body.mobile .dev-row::-webkit-scrollbar{display:none}body.mobile .dev-row .chip{flex:none;white-space:nowrap;font-size:14px;padding:7px 11px 7px 7px;border-radius:999px;gap:6px;min-height:36px}body.mobile .dev-row .chip b{min-width:22px;height:22px;font-size:12.5px;border-radius:999px}body.mobile .dev-row .chip.pt b{min-width:26px;background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff}body.mobile .dev-row .chip.pt.on{background:#0a6cff29}body.mobile .dev-row .chip.pt.best{border-color:#e8961499}body.mobile .dev-row .chip.back{padding:7px 12px;color:#164a86;font-weight:600}body.mobile .dev-row .chip-cap{display:flex;align-items:center;flex:none;font-size:13px;font-weight:700;color:#06204a;padding:0 2px;white-space:nowrap}body.mobile:not(.land) .panel-head{flex:none;padding:6px 14px 2px 18px}body.mobile:not(.land) .panel-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:0 14px 96px}body.mobile:not(.land) .stagebar{z-index:16}@media(min-width:600px){body.mobile:not(.land) .dev-row{justify-content:safe center}}body.mobile.land .dev-strip{position:sticky;top:0;z-index:2;background:linear-gradient(180deg,#e8f2fff7,#e2efffe6);padding:8px 0 4px}.panel .pane,.panel .acc-inner,.panel .control,.panel .strat-read{min-width:0;max-width:100%}body.mobile .panel .control-head{flex-wrap:wrap;gap:2px 8px}body.mobile .panel .segmented{flex-wrap:wrap}body.mobile .panel .segmented button{white-space:normal;flex:1 1 30%;min-width:0;font-size:13px;padding:6px 4px}body.mobile .panel .scale{font-size:11.5px}body.mobile .panel .scale span{min-width:0;overflow-wrap:anywhere}body.mobile .panel .strat-read{flex-direction:column;align-items:stretch;gap:6px}body.mobile .panel .strat-read .s-svg{width:100%;min-width:0}body.mobile .panel .strat-read .s-svg svg{width:100%;height:auto;max-height:220px}body.mobile .panel .s-num{flex:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:4px 8px 6px}body.mobile .panel .s-num small{width:100%}body.mobile .panel .s-num strong{font-size:38px;line-height:1}body.mobile .panel .s-num .status-chip{white-space:normal;max-width:100%}body.mobile .panel .desc,body.mobile .panel .note{overflow-wrap:anywhere}body.mobile:not(.land) .stage .panel{background:linear-gradient(170deg,#f0f7fff7,#d6e8fcf5)!important}body.mobile:not(.land):not(.sheet-open) .stage .panel>.panel-head,body.mobile:not(.land):not(.sheet-open) .stage .panel>.panel-body{visibility:hidden}.flow-toggle{display:flex;align-items:center;gap:calc(8 * var(--u,1px));flex:none;border:1px solid rgba(37,80,126,.2);background:#fffc;color:#25507e;border-radius:999px;padding:calc(8 * var(--u,1px)) calc(16 * var(--u,1px)) calc(8 * var(--u,1px)) calc(10 * var(--u,1px));font-size:calc(17 * var(--u,1px));font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;box-shadow:0 2px 10px #14284624;pointer-events:auto;font-family:inherit}.flow-toggle .ft-sw{position:relative;width:calc(38 * var(--u,1px));height:calc(22 * var(--u,1px));border-radius:999px;background:#b9c3cd;transition:background .2s}.flow-toggle .ft-sw i{position:absolute;top:calc(3 * var(--u,1px));left:calc(3 * var(--u,1px));width:calc(16 * var(--u,1px));height:calc(16 * var(--u,1px));border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s}.flow-toggle[aria-checked=true] .ft-sw{background:linear-gradient(90deg,#ff6a1a,#ffb347)}.flow-toggle[aria-checked=true] .ft-sw i{transform:translate(calc(16 * var(--u,1px)))}.flow-toggle .ft-st{min-width:1em;color:#e2621b;font-weight:700}.flow-toggle[aria-checked=false] .ft-st{color:#7d8995}.flow-toggle[aria-checked=false] .ft-txt{color:#5d6f82}body.mobile .panel>.flow-toggle{position:absolute;top:7px;right:10px;z-index:6;gap:5px;padding:3px 9px 3px 4px;font-size:12px;box-shadow:0 1px 5px #14284624}body.mobile .panel>.flow-toggle .ft-sw{width:28px;height:16px}body.mobile .panel>.flow-toggle .ft-sw i{top:2px;left:2px;width:12px;height:12px}body.mobile .panel>.flow-toggle[aria-checked=true] .ft-sw i{transform:translate(12px)}body.mobile.land .stagebar>.flow-toggle{position:absolute;right:4px;bottom:calc(100% + 6px);gap:5px;padding:4px 10px 4px 5px;font-size:12px}body.mobile.land .stagebar>.flow-toggle .ft-sw{width:28px;height:16px}body.mobile.land .stagebar>.flow-toggle .ft-sw i{top:2px;left:2px;width:12px;height:12px}body.mobile.land .stagebar>.flow-toggle[aria-checked=true] .ft-sw i{transform:translate(12px)}body.mobile:not(.land) .sheet-grab span{align-self:flex-start;padding-left:16px;max-width:calc(100% - 140px);white-space:nowrap;text-align:left}.brand-logo{position:absolute;z-index:9;top:var(--m,16px);right:var(--m,16px);display:flex;align-items:center;gap:calc(14 * var(--u,1px));padding:calc(6 * var(--u,1px)) calc(10 * var(--u,1px));pointer-events:none;user-select:none;isolation:isolate}.brand-logo:before{content:"";position:absolute;z-index:-1;inset:-30% -12%;border-radius:50%;background:radial-gradient(closest-side,#ffffffc7,#ffffff80 55%,#fff0);filter:blur(calc(4 * var(--u,1px)))}.brand-logo .bl-mark{display:block;height:calc(44 * var(--u,1px));width:auto;overflow:visible;filter:drop-shadow(0 0 calc(1.5 * var(--u,1px)) rgba(255,255,255,.95)) drop-shadow(0 calc(2 * var(--u,1px)) calc(6 * var(--u,1px)) rgba(10,30,90,.22))}.brand-logo .bl-bolt{filter:drop-shadow(0 0 3px rgba(255,90,40,.55))}.brand-logo .bl-div{display:block;flex:none;width:calc(2 * var(--u,1px));height:calc(46 * var(--u,1px));border-radius:2px;background:linear-gradient(180deg,#1f45f200,#1f45f2 22%,#ec1c24 78%,#ec1c2400)}.brand-logo .bl-cn{display:flex;flex-direction:column;align-items:center;line-height:1;color:#0b1f6e;text-shadow:0 0 calc(3 * var(--u,1px)) #fff,0 0 calc(8 * var(--u,1px)) rgba(255,255,255,.9),0 calc(2 * var(--u,1px)) calc(6 * var(--u,1px)) rgba(10,30,90,.25)}.brand-logo .bl-cn b{font-family:Songti SC,STSong,"Noto Serif SC","Source Han Serif SC",SimSun,serif;font-weight:900;font-size:calc(40 * var(--u,1px));letter-spacing:.16em;margin-right:-.16em;color:#0a2a8f}body:not(.mobile) .stage .panel{top:calc(var(--m) + 76 * var(--u))}body:not(.mobile) .stage .scene-header{max-width:calc(100% - var(--pw) - 3 * var(--m))}body.mobile .brand-logo{top:calc(10px + env(safe-area-inset-top,0px));right:calc(8px + env(safe-area-inset-right,0px));flex-direction:column;align-items:center;gap:3px;padding:3px 4px}body.mobile .brand-logo .bl-mark{height:19px}body.mobile .brand-logo .bl-div{width:70%;height:1.5px;background:linear-gradient(90deg,#1f45f200,#1f45f2 25%,#ec1c24 75%,#ec1c2400)}body.mobile .brand-logo .bl-cn{flex-direction:row;justify-content:center;width:100%}body.mobile .brand-logo .bl-cn b{font-size:16px;letter-spacing:.55em;margin-right:-.55em}body.mobile .stage .scene-header{max-width:calc(100% - 124px)}body.mobile.land .brand-logo{top:8px;right:8px}body.compact .scene-header h1:before{content:none}body:not(.mobile) .stage{--k:.68;--pw:calc(475 * var(--u) * var(--k));--logo-b:calc(var(--m) + 76 * var(--u))}@media(max-aspect-ratio:3/2){body:not(.mobile) .stage{--pw:calc(430 * var(--u) * var(--k))}}body:not(.mobile) .stage .scene-header,body:not(.mobile) .stage .panel,body:not(.mobile) .stage .panel-tab{--u:calc(max(1px, calc(1px / var(--scale, 1))) * var(--k));--s1:calc(8 * var(--u));--s2:calc(16 * var(--u));--s3:calc(24 * var(--u))}body:not(.mobile) .stage .panel{top:var(--logo-b);bottom:auto;max-height:max(calc(240 * var(--u)),calc(var(--stage-height, 1080px) * .62 - var(--logo-b)))}body:not(.mobile) .stage .panel .panel-body{flex:1 1 auto;min-height:0;overflow-y:auto}body:not(.mobile) .stage .panel-tab{top:50%}body:not(.mobile) .scene-header .course-title-card{padding-right:2.6em}body:not(.mobile) .stage .scene-hint{font-size:calc(16 * var(--u));padding:calc(5 * var(--u)) calc(12 * var(--u))}body:not(.mobile).compact .stage .scene-header h1{font-size:1.6em}.title-toggle{display:none}body:not(.mobile) .title-toggle{display:grid;place-items:center;position:absolute;top:.6em;right:.6em;width:1.6em;height:1.6em;padding:0;border:0;border-radius:50%;background:#0a3c781a;color:#25507e;cursor:pointer;pointer-events:auto;transition:background .2s}body:not(.mobile) .title-toggle:hover{background:#0a3c782e}body:not(.mobile) .title-toggle:focus-visible{outline:2px solid #2b8cff;outline-offset:2px}.title-toggle i{display:block;width:.45em;height:.45em;border-left:2px solid currentColor;border-top:2px solid currentColor;transform:translateY(20%) rotate(45deg);transition:transform .3s ease}body:not(.mobile) .scene-header .header-meta,body:not(.mobile) .stage .scene-header .subtitle,body:not(.mobile) .stage .scene-hint{overflow:hidden;max-height:10em;transition:max-height .34s cubic-bezier(.3,.7,.2,1),opacity .25s ease,margin .34s cubic-bezier(.3,.7,.2,1)}body:not(.mobile) .stage .scene-header h1{transition:font-size .34s cubic-bezier(.3,.7,.2,1),margin .34s}body:not(.mobile) .stage.title-collapsed .scene-header .header-meta,body:not(.mobile) .stage.title-collapsed .scene-header .subtitle,body:not(.mobile) .stage.title-collapsed .scene-hint{max-height:0;opacity:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}body:not(.mobile) .stage.title-collapsed .scene-header h1{font-size:1.45em;margin:0;white-space:nowrap}body:not(.mobile) .stage.title-collapsed .scene-header .course-title-card{padding-top:.4em;padding-bottom:.45em;padding-right:2.4em}body:not(.mobile) .stage.title-collapsed .scene-header .course-title-card:before{top:.5em;bottom:.5em}body:not(.mobile) .stage.title-collapsed .title-toggle{top:50%;margin-top:-.8em}.stage.title-collapsed .title-toggle i{transform:translateY(-20%) rotate(225deg)}body:not(.mobile) .panel-tab{animation:v3pTabIn .32s ease both}@keyframes v3pTabIn{0%{opacity:0}to{opacity:1}}body:not(.mobile) .panel-head .icon-btn{flex:none}.ptbar{display:none}body:not(.mobile) .stagebar{flex-wrap:wrap;row-gap:calc(6 * var(--u))}body:not(.mobile) .ptbar{display:flex;flex:0 0 100%;justify-content:center;pointer-events:none}body:not(.mobile) .ptbar:before{content:none}body:not(.mobile) .ptbar>*{pointer-events:auto}body:not(.mobile) .ptbar{gap:calc(4 * var(--u));align-items:center}body:not(.mobile) .ptbar .ptbar-cap{display:inline-flex;align-items:center;height:calc(26 * var(--u));margin-right:calc(2 * var(--u));padding:0 calc(10 * var(--u));border-radius:999px;font-size:calc(13 * var(--u));font-weight:700;color:#fff;letter-spacing:.06em;pointer-events:none;background:linear-gradient(140deg,#164a86eb,#0a346eeb);border:1px solid rgba(255,255,255,.55);box-shadow:0 calc(2 * var(--u)) calc(8 * var(--u)) #12305a33}body:not(.mobile) .ptbar button{min-width:calc(34 * var(--u));height:calc(26 * var(--u));padding:0 calc(8 * var(--u));border-radius:999px;border:1px solid rgba(255,255,255,.8);background:linear-gradient(160deg,#f0f7ffe0,#d0e4fcc7);box-shadow:0 calc(2 * var(--u)) calc(8 * var(--u)) #12305a29;color:#164a86;font:700 calc(13 * var(--u))/1 "PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:.02em;cursor:pointer;transition:background .2s,color .2s,transform .15s}body:not(.mobile) .ptbar button:hover{background:#fff;transform:translateY(-1px)}body:not(.mobile) .ptbar button.on{background:linear-gradient(140deg,#2b8cff,#0a63d8);color:#fff;border-color:#bfe0ff;box-shadow:0 2px 8px #0a63d859}body:not(.mobile) .ptbar button:focus-visible{outline:2px solid #2b8cff;outline-offset:2px}body:not(.mobile) .stage.title-collapsed .scene-header .header-meta,body:not(.mobile) .stage.title-collapsed .scene-header .subtitle,body:not(.mobile) .stage.title-collapsed .scene-hint{max-width:0}
