:root{--bg: #060b16;--bg2: #0a1426;--panel: rgba(13, 26, 46, .78);--panel2: rgba(16, 32, 55, .72);--line: rgba(96, 160, 220, .18);--line2: rgba(96, 160, 220, .32);--text: #dcecff;--muted: #809fc4;--cyan: #5ce1ff;--amber: #ffd166;--pink: #ff86d0;--green: #7dffd0;--orange: #ff9f6e;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);overflow:hidden;-webkit-font-smoothing:antialiased}button,input{font-family:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:#5ce1ff33;border-radius:8px}::-webkit-scrollbar-track{background:transparent}.app{height:100vh;display:flex;flex-direction:column;background:radial-gradient(1100px 620px at 50% -12%,rgba(30,96,158,.22),transparent 70%),radial-gradient(800px 500px at 100% 100%,rgba(24,76,130,.14),transparent 70%),linear-gradient(180deg,#070e1c,#050a14)}.topbar{flex:0 0 auto;display:flex;align-items:center;gap:18px;padding:10px 18px;border-bottom:1px solid var(--line);background:#070f1dd9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px;min-width:300px}.brand-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:22px;color:var(--cyan);background:linear-gradient(145deg,#5ce1ff29,#5ce1ff08);border:1px solid rgba(92,225,255,.35);box-shadow:0 0 20px #5ce1ff1f inset}.brand h1{font-size:16px;margin:0;letter-spacing:.5px;font-weight:700;white-space:nowrap}.brand h1 span{color:var(--cyan);font-weight:600}.brand p{margin:3px 0 0;font-size:11px;color:var(--muted);letter-spacing:1px}.mode-tabs{display:flex;gap:5px;padding:4px;border-radius:12px;background:#091424cc;border:1px solid var(--line)}.mode-tab{border:0;background:transparent;color:var(--muted);font-size:12.5px;padding:8px 12px;border-radius:9px;display:flex;align-items:center;gap:5px;white-space:nowrap;transition:.18s}.mode-tab i{font-style:normal;font-size:13px}.mode-tab:hover{color:var(--text);background:#5ce1ff12}.mode-tab.active{color:#061526;font-weight:700;background:linear-gradient(135deg,#7fe3ff,#46b9ea);box-shadow:0 3px 14px #5ce1ff40}.top-right{margin-left:auto;display:flex;align-items:center;gap:12px}.progress-box{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.progress-track{width:74px;height:6px;border-radius:4px;background:#5ce1ff1f;overflow:hidden}.progress-track div{height:100%;background:linear-gradient(90deg,#46b9ea,#7dffd0);transition:width .4s}.progress-box b{color:var(--cyan);font-size:11px}.score-box{display:flex;flex-direction:column;align-items:center;line-height:1.1;padding:0 10px;border-left:1px solid var(--line);border-right:1px solid var(--line)}.score-box span{font-size:10px;color:var(--muted)}.score-box b{font-size:17px;color:var(--amber)}.seg-switch{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.seg-switch button{border:0;background:transparent;color:var(--muted);font-size:11.5px;padding:7px 9px;white-space:nowrap}.seg-switch button.active{background:#5ce1ff29;color:var(--cyan);font-weight:600}.teacher-btn{width:32px;height:32px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:17px;font-family:Georgia,serif}.teacher-btn.active{color:#061526;background:var(--cyan);border-color:var(--cyan)}.lab-main{flex:1;min-height:0;display:grid;gap:11px;padding:11px;grid-template-columns:260px minmax(0,1fr) 306px}.side{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:3px}.scene-col{min-width:0;min-height:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 26px #0000002e}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;font-size:12.5px;font-weight:700;letter-spacing:.6px;color:#e6f4ff}.panel-title:before{content:"";width:3px;height:13px;border-radius:3px;background:var(--cyan);margin-right:7px;box-shadow:0 0 9px var(--cyan)}.panel-title>span:first-child{margin-right:auto}.tag-soft{font-size:10px;color:var(--muted);font-weight:400;background:#5ce1ff14;padding:3px 7px;border-radius:6px}.panel-desc{font-size:11.5px;color:var(--muted);line-height:1.65;margin:0 0 10px}.inline-tip{font-size:11px;color:var(--cyan);line-height:1.6;background:#5ce1ff12;border-left:2px solid rgba(92,225,255,.55);padding:7px 9px;border-radius:0 7px 7px 0;margin-top:9px}.inline-tip.warn{color:var(--amber);background:#ffd16614;border-left-color:var(--amber)}.btn{border:1px solid var(--line2);background:#5ce1ff0f;color:var(--text);border-radius:9px;padding:8px 11px;font-size:11.5px;transition:.16s;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--cyan);background:#5ce1ff24}.btn-primary{background:linear-gradient(135deg,#6fd8ff,#3ba5e0);color:#05182a;border-color:transparent;font-weight:700}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#9beaff,#58bff0)}.btn-soft{background:#5ce1ff1f;border-color:#5ce1ff4d;color:var(--cyan)}.btn-danger{background:#ff86d024;border-color:#ff86d066;color:var(--pink)}.btn.wide{width:100%;margin-top:9px}.slider-row{margin-bottom:12px}.slider-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.slider-head label{font-size:11.5px;color:var(--muted)}.slider-value{font-size:15px;font-weight:700;color:var(--cyan);font-variant-numeric:tabular-nums}.slider-value i{font-size:10px;font-style:normal;color:var(--muted)}input[type=range]{width:100%;height:5px;border-radius:5px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(90deg,#5ce1ff80,#5ce1ff21);outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#d9f6ff;border:3px solid #3ba5e0;box-shadow:0 0 10px #5ce1ff99;cursor:grab}.slider-hint{font-size:10px;color:#6a89ac;margin-top:6px;line-height:1.5}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px dashed rgba(96,160,220,.12);cursor:pointer}.toggle-row:last-child{border-bottom:0}.toggle-label{font-size:11.5px;line-height:1.5}.toggle-label small{display:block;font-size:10px;color:#6f8fb2;margin-top:2px}.switch{position:relative;flex:0 0 34px;width:34px;height:19px;border-radius:12px;background:#263a53;transition:.2s}.switch i{position:absolute;top:2.5px;left:2.5px;width:14px;height:14px;border-radius:50%;background:#a9c4de;transition:.2s}.switch.on i{transform:translate(15px);background:#05182a}.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.quick-btn{text-align:left;border:1px solid var(--line);background:#0c1b30cc;border-radius:9px;padding:7px 9px;color:var(--text);transition:.16s}.quick-btn b{display:block;font-size:11.5px;font-weight:600}.quick-btn small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.quick-btn:hover{border-color:var(--cyan)}.quick-btn.active{border-color:var(--cyan);background:#5ce1ff24;box-shadow:0 0 14px #5ce1ff1f inset}.quick-btn.active b{color:var(--cyan)}.micro-row{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:10px}.micro-row>span{font-size:10.5px;color:var(--muted)}.micro-row>div{display:flex;gap:4px}.micro-row .btn{padding:5px 7px;font-size:10.5px}.micro-note{font-size:10px;color:#6f8fb2;line-height:1.55;margin-top:8px}.screen-actions{display:flex;gap:6px}.screen-actions .btn{flex:1}.clarity-box{margin-top:11px;padding:9px;border-radius:9px;background:#081323b3;border:1px solid var(--line)}.clarity-head{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.clarity-head b{color:var(--green)}.clarity-track{height:6px;border-radius:4px;background:#7dffd01f;margin:7px 0;overflow:hidden}.clarity-track div{height:100%;background:linear-gradient(90deg,#3ba5e0,#7dffd0);transition:width .2s}.clarity-box small{font-size:10px;color:#7f9ec4;line-height:1.5}.scene-wrap{position:relative;width:100%;height:100%;border-radius:16px;overflow:hidden;border:1px solid rgba(92,225,255,.22);background:#070d1a;box-shadow:0 0 50px #145aa01f inset,0 12px 34px #0000004d}.scene-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(3,8,18,.45) 100%)}.scene-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.scene-hud{position:absolute;z-index:3;pointer-events:none}.scene-hud-tl{top:12px;left:14px;display:flex;flex-direction:column;gap:5px}.hud-tag{font-size:10.5px;letter-spacing:1.5px;color:var(--cyan);border:1px solid rgba(92,225,255,.3);background:#09192cb3;padding:4px 9px;border-radius:6px;width:fit-content}.hud-hint{font-size:10.5px;color:#8fb4d8}.scene-notice,.scene-mask-note,.scene-virtual-tip,.scene-edge{position:absolute;z-index:4;left:50%;transform:translate(-50%);pointer-events:none;border-radius:10px;padding:8px 15px;font-size:11.5px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap}.scene-notice{top:14px;display:flex;flex-direction:column;gap:3px;align-items:center;background:#ffd1661f;border:1px solid rgba(255,209,102,.42);color:#ffe6ac}.scene-notice b{color:var(--amber)}.scene-notice span{font-size:10.5px}.scene-mask-note{top:14px;background:#0e1e34e6;border:1px dashed rgba(92,225,255,.5);color:var(--cyan)}.scene-virtual-tip{bottom:88px;background:#143c58d1;border:1px solid rgba(139,233,255,.4);color:#c9f2ff}.scene-virtual-tip b{color:#8be9ff}.scene-edge{top:62px;background:#ff9f6e21;border:1px solid rgba(255,159,110,.45);color:#ffd2b8}.edge-arrow{font-size:15px;margin-right:6px;color:var(--orange)}.scene-formula{position:absolute;z-index:4;top:60px;left:14px;padding:10px 12px;border-radius:10px;background:#081424e6;border:1px solid var(--line2);font-size:11px;color:#cbe6ff;line-height:1.8;font-family:SF Mono,Menlo,monospace;pointer-events:none}.formula-title{color:var(--cyan);font-family:inherit;font-weight:700;margin-bottom:3px}.formula-now{color:var(--amber)}.scene-legend{position:absolute;z-index:3;left:14px;bottom:12px;display:flex;gap:12px;font-size:10.5px;color:#a9c8e6;pointer-events:none}.scene-legend span{display:flex;align-items:center;gap:5px}.scene-legend span.off{opacity:.35;text-decoration:line-through}.scene-legend i{width:14px;height:3px;border-radius:2px;display:inline-block}.minimap{position:absolute;z-index:3;right:12px;bottom:12px;width:232px;border-radius:10px;overflow:hidden;border:1px solid var(--line2);background:#071120e6;box-shadow:0 8px 22px #00000059;pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.minimap.dragging{z-index:10;cursor:grabbing;border-color:#5ce1ffb3;box-shadow:0 16px 38px #0000008c,0 0 0 1px #5ce1ff33}.minimap-head{display:flex;justify-content:space-between;padding:5px 8px;font-size:10px;color:#a9c8e6;border-bottom:1px solid var(--line);cursor:grab}.minimap-grip{font-style:normal;color:var(--cyan);margin-right:4px}.minimap-tools{display:flex;align-items:center;gap:6px}.minimap-reset{border:0;background:transparent;color:#7fa8cc;font-size:11px;line-height:1;padding:0 2px;cursor:pointer}.minimap-reset:hover{color:var(--cyan)}.minimap-scale{color:#6285a8}.minimap svg{display:block}.stat-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:5px 0;font-size:11.5px;border-bottom:1px dashed rgba(96,160,220,.1)}.stat-row:last-of-type{border-bottom:0}.stat-row span{color:var(--muted)}.stat-row b{color:#e8f5ff;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.stat-divider{height:1px;background:var(--line);margin:7px 0}.region-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:20px;color:#06182a;background:var(--cyan)}.rb-gt2f{background:#7dffd0}.rb-eq2f{background:#ffd166}.rb-between{background:#ff9f6e}.rb-eqf{background:#ff86d0}.rb-ltf{background:#8be9ff}.conclusion{margin-top:10px;padding:9px 10px;border-radius:9px;font-size:11.5px;line-height:1.6;background:#5ce1ff14;border-left:3px solid var(--cyan);color:#dbf2ff}.cc-eqf{background:#ff86d017;border-left-color:var(--pink)}.cc-ltf{background:#8be9ff17;border-left-color:#8be9ff}.screen-state{display:flex;justify-content:space-between;margin-top:8px;font-size:11px;color:var(--muted)}.screen-state b{color:var(--green)}.predict-panel,.explore-panel,.games-panel,.challenge-panel{border-color:#ffd16647}.quiz-field{margin:10px 0}.quiz-label{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:11.5px;margin-bottom:6px;color:#cfe6fa}.quiz-label .right{color:var(--green);font-size:10.5px}.quiz-label .wrong{color:var(--orange);font-size:10.5px}.choice-group{display:grid;gap:5px}.choice-group.cols3{grid-template-columns:repeat(3,1fr)!important}.choice{border:1px solid var(--line);background:#0a182acc;color:#bcd6ee;border-radius:8px;padding:7px 6px;font-size:11px;text-align:center;transition:.15s;line-height:1.35}.choice:hover:not(:disabled){border-color:var(--cyan);color:var(--text)}.choice.active{border-color:var(--cyan);background:#5ce1ff2e;color:#eafaff;font-weight:600}.predict-result{margin-top:10px;padding:10px;border-radius:9px;background:#7dffd014;border:1px solid rgba(125,255,208,.25)}.predict-result b{color:var(--green);font-size:12px}.predict-result p{font-size:11px;color:#b8d8c9;line-height:1.6}.free-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.free-actions .btn{flex:1}.step-list{margin-top:10px;display:grid;gap:5px}.step-list div{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.step-list i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:10px;background:#5ce1ff21;color:var(--cyan)}.game-tabs{display:flex;gap:5px;margin-bottom:10px}.game-tabs button{flex:1;border:1px solid var(--line);background:#0a182acc;color:var(--muted);border-radius:8px;padding:7px 3px;font-size:10.5px;display:flex;flex-direction:column;align-items:center;gap:2px}.game-tabs button i{font-style:normal;font-size:15px}.game-tabs button.active{border-color:var(--amber);color:var(--amber);background:#ffd1661a}.game-title{font-size:13px;font-weight:700;color:var(--amber);margin-bottom:9px}.game-body{display:flex;flex-direction:column}.task-card{padding:11px;border-radius:10px;background:linear-gradient(135deg,#ffd1661c,#ff9f6e0a);border:1px solid rgba(255,209,102,.3);margin-bottom:10px}.task-kicker{font-size:10px;letter-spacing:1px;color:var(--amber)}.task-card h3{font-size:13px;margin:5px 0;line-height:1.5}.task-card p{font-size:10.5px;color:#b8c9dd;margin:0;line-height:1.55}.game-readout,.level-readout{font-size:10.5px;color:var(--muted);padding:6px 0;font-variant-numeric:tabular-nums}.hint-box{font-size:11px;color:#ffe3ac;background:#ffd16617;border:1px dashed rgba(255,209,102,.4);border-radius:9px;padding:9px;line-height:1.6;margin:8px 0}.win-box{margin-top:9px;padding:12px;border-radius:11px;text-align:center;background:#7dffd017;border:1px solid rgba(125,255,208,.4);animation:pop .35s ease}.win-box b{color:var(--green);font-size:13px}.win-box p{font-size:11px;color:#c5e3d8;line-height:1.65;margin:7px 0}.win-box .btn{margin:4px 3px 0}.confetti{font-size:16px;color:var(--amber);letter-spacing:7px;margin-bottom:6px;animation:twinkle 1.4s infinite alternate}@keyframes pop{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}@keyframes twinkle{0%{opacity:.5}to{opacity:1}}.repair-step{padding:9px 0;border-bottom:1px dashed var(--line)}.repair-step>b{font-size:11.5px;color:#dcecff;display:block;margin-bottom:7px}.step-fb{font-size:10.5px;margin-top:6px}.step-fb.ok{color:var(--green)}.step-fb.no{color:var(--orange)}.level-dots{display:flex;gap:6px;margin-bottom:11px}.level-dots button{flex:1;height:34px;border-radius:9px;border:1px solid var(--line);background:#0a182acc;color:var(--muted);font-size:12px;display:flex;flex-direction:column;align-items:center;justify-content:center}.level-dots button small{font-size:8px;color:var(--amber);line-height:1}.level-dots button.active{border-color:var(--amber);color:var(--amber);background:#ffd1661c}.level-dots button.cleared{border-color:#7dffd073}.level-head h3{font-size:13.5px;margin:0 0 4px;color:var(--amber)}.level-head p{font-size:11px;color:var(--muted);margin:0 0 9px;line-height:1.55}.level-ops{padding:9px;border-radius:9px;background:#081323b3;margin-bottom:9px}.level-ops b{font-size:10.5px;color:var(--cyan)}.level-ops div{display:flex;gap:7px;align-items:center;font-size:10.5px;color:#b8cfe6;margin-top:5px;line-height:1.45}.level-ops i{width:16px;height:16px;flex:0 0 16px;border-radius:50%;background:#5ce1ff24;color:var(--cyan);display:grid;place-items:center;font-style:normal;font-size:9px}.level-steps{display:grid;gap:5px}.level-step{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted);padding:7px 9px;border-radius:8px;border:1px solid var(--line)}.level-step span{width:18px;height:18px;flex:0 0 18px;border-radius:50%;background:#60a0dc26;display:grid;place-items:center;font-size:10px}.level-step.now{border-color:var(--amber);color:#ffe3ac}.level-step.now span{background:var(--amber);color:#06182a;font-weight:700}.level-step.done{color:var(--green);border-color:#7dffd04d}.level-step.done span{background:#7dffd033}.visited-box{margin-top:9px;font-size:10.5px;color:var(--cyan);background:#5ce1ff12;padding:7px;border-radius:8px}.explore-target{display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:9px;background:#5ce1ff17;border:1px solid rgba(92,225,255,.3);margin-bottom:9px}.explore-target span{font-size:10px;color:var(--muted)}.explore-target b{font-size:18px;color:var(--cyan)}.explore-target small{font-size:10.5px;color:#a9c8e6}.explore-steps{display:flex;gap:5px;margin-bottom:9px}.exp-dot{flex:1;height:26px;border-radius:7px;border:1px solid var(--line);background:#0a182acc;color:var(--muted);font-size:11px}.exp-dot.done{border-color:#7dffd073;color:var(--green)}.exp-dot.now{border-color:var(--amber);color:var(--amber);background:#ffd1661a}.placement{font-size:10.5px;color:var(--orange);padding:7px 0;line-height:1.5}.placement.good{color:var(--green)}.summary-table{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin:9px 0;font-size:10px}.st-head,.st-row{display:grid;grid-template-columns:1.1fr .8fr .7fr .7fr 1.2fr;gap:3px;padding:6px;align-items:center}.st-head{background:#5ce1ff1f;color:var(--cyan);font-weight:600}.st-row{border-top:1px solid var(--line);color:#c9dff2}.st-row .st-region{color:var(--amber)}.st-row i{grid-column:1 / -1;font-style:normal;font-size:9.5px}.st-row i.ok{color:var(--green)}.st-row i.diff{color:var(--orange)}.mnemonic-box{margin-top:10px;padding:10px;border-radius:9px;background:#ffd16612;border:1px solid rgba(255,209,102,.25)}.mnemonic-box b{font-size:11.5px;color:var(--amber)}.mnemonic-box p{font-size:10.8px;color:#e6dcc0;line-height:1.65;margin:6px 0 0}.console{flex:0 0 auto;display:flex;align-items:center;gap:18px;padding:9px 16px;border-top:1px solid var(--line);background:#070f1de6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.console-group{display:flex;align-items:center;gap:10px}.console-play{flex:0 0 auto}.speed-seg{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.speed-seg button{border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font-size:11px;padding:8px 10px;white-space:nowrap}.speed-seg button:last-child{border-right:0}.speed-seg button.active{background:#5ce1ff29;color:var(--cyan);font-weight:600}.console-readout{display:flex;gap:14px;padding:0 14px;border-left:1px solid var(--line);border-right:1px solid var(--line)}.console-readout div{display:flex;flex-direction:column;line-height:1.2}.console-readout span{font-size:9.5px;color:var(--muted)}.console-readout b{font-size:16px;font-variant-numeric:tabular-nums}.console-readout b.cyan{color:var(--cyan)}.console-readout i{font-size:9px;color:var(--muted);font-style:normal}.console-boundary{flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:5px}.console-label{font-size:10px;color:var(--muted)}.console-label em{color:var(--amber);font-style:normal}.boundary-btns{display:flex;gap:5px;flex-wrap:wrap}.boundary-btns button{border:1px solid var(--line);background:#0c1b30cc;color:#b8d2ea;border-radius:7px;padding:5px 8px;font-size:10px;white-space:nowrap}.boundary-btns button:hover{border-color:var(--amber);color:var(--amber)}.summary-page{flex:1;min-height:0;overflow-y:auto;padding:20px 26px 30px}.summary-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.summary-kicker{font-size:11px;letter-spacing:2px;color:var(--cyan)}.summary-hero h2{font-size:25px;margin:7px 0 5px}.summary-hero p{font-size:12px;color:var(--muted);margin:0}.summary-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}.summary-card{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:16px}.card-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.card-head h3{font-size:15px;margin:0}.card-head span{font-size:11px;color:var(--muted)}.big-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}.bt-head,.bt-row{display:grid;grid-template-columns:1.1fr 1.3fr 1.9fr .7fr;gap:8px;align-items:center;padding:11px 12px;text-align:left}.bt-head{background:#5ce1ff1a;font-size:11px;color:var(--cyan);font-weight:600}.bt-row{width:100%;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);font-size:12px;transition:.16s}.bt-row:hover{background:#5ce1ff14}.bt-u{font-weight:700;color:var(--amber)}.bt-nature{color:#e8f5ff}.bt-note{font-size:11px;color:var(--muted)}.bt-go{font-size:10.5px;color:var(--cyan);text-align:right}.bt-eqf .bt-nature{color:var(--pink)}.bt-ltf .bt-nature{color:#8be9ff}.mnemonic-item{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px dashed var(--line)}.mnemonic-item i{flex:0 0 22px;height:22px;border-radius:7px;background:#ffd16624;color:var(--amber);display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:700}.mnemonic-item p{margin:0;font-size:12px;line-height:1.7}.mnemonic-extra{margin-top:12px;padding:11px;border-radius:10px;background:#7dffd012}.mnemonic-extra b{color:var(--green);font-size:12.5px}.mnemonic-extra p{font-size:11.5px;color:#bddfd0;line-height:1.7;margin:6px 0 0}.rv-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rv-col{padding:12px;border-radius:11px}.rv-col.real{background:#ff9f6e14;border:1px solid rgba(255,159,110,.3)}.rv-col.virtual{background:#8be9ff14;border:1px solid rgba(139,233,255,.3)}.rv-col h4{margin:0 0 8px;font-size:14px}.rv-col.real h4{color:var(--orange)}.rv-col.virtual h4{color:#8be9ff}.rv-col p{font-size:11.5px;line-height:1.6;margin:5px 0;color:#c6dcf0}.rv-col b{color:#fff}.report-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.report-stats div{padding:12px 6px;border-radius:10px;background:#081323b3;text-align:center}.report-stats b{display:block;font-size:22px;color:var(--cyan)}.report-stats span{font-size:10.5px;color:var(--muted)}@media (max-width: 1400px){.lab-main{grid-template-columns:238px minmax(0,1fr) 286px}.brand{min-width:260px}.brand h1{font-size:14.5px}.mode-tab{padding:8px 9px;font-size:11.5px}.console{gap:10px}.console-readout{gap:9px;padding:0 9px}}@media (max-width: 1120px){body{overflow:auto}.app{height:auto;min-height:100vh}.topbar{flex-wrap:wrap}.top-right{margin-left:0}.lab-main{grid-template-columns:1fr 1fr;grid-template-areas:"scene scene" "left right"}.scene-col{grid-area:scene;height:56vh;min-height:380px}.side-left{grid-area:left}.side-right{grid-area:right}.side{overflow:visible}.console{flex-wrap:wrap}.console-boundary{flex-basis:100%}.summary-grid{grid-template-columns:1fr}}@media (max-width: 680px){.topbar{padding:9px 10px;gap:9px}.brand{min-width:0}.brand h1{font-size:13px;white-space:normal}.brand p{display:none}.mode-tabs{width:100%;overflow-x:auto}.mode-tab{flex:1;justify-content:center}.top-right{width:100%;justify-content:space-between;gap:6px}.lab-main{grid-template-columns:1fr;grid-template-areas:"scene" "left" "right";padding:8px;gap:8px}.scene-col{height:52vh;min-height:320px}.minimap{width:160px;right:8px;bottom:8px}.scene-legend{gap:6px;font-size:9px;left:8px;bottom:8px}.scene-virtual-tip,.scene-notice,.scene-mask-note,.scene-edge{white-space:normal;width:86%;text-align:center;font-size:10.5px}.console{padding:8px;gap:8px}.console-readout{width:100%;justify-content:space-between;border:0;padding:0}.console-play{width:100%;flex-wrap:wrap}.summary-hero{flex-direction:column;align-items:flex-start}.bt-head,.bt-row{grid-template-columns:1fr 1.2fr;gap:4px}.bt-note,.bt-go{display:none}.report-stats{grid-template-columns:repeat(2,1fr)}.rv-cols{grid-template-columns:1fr}}
