:root{--navy:#07111f;--navy2:#0b1e33;--panel:rgba(10,31,52,.78);--panel2:rgba(16,46,74,.8);--blue:#3db7ff;--cyan:#59e4dc;--yellow:#ffd45a;--green:#53e19a;--amber:#ffb95a;--red:#ff6f73;--text:#f4fbff;--muted:#9eb5c8;--line:rgba(139,204,241,.18);--shadow:0 24px 70px rgba(0,0,0,.35);--r:22px;--r2:14px}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--navy);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text)}body{user-select:none}.sm-root{position:fixed;inset:0;z-index:2147483000;background:radial-gradient(circle at 74% 10%,rgba(61,183,255,.16),transparent 30%),linear-gradient(145deg,#06101d,#081c30 55%,#06121e);overflow:hidden}.sm-root:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,black,transparent 82%);pointer-events:none}.orb{position:absolute;border-radius:50%;filter:blur(24px);opacity:.22;pointer-events:none;animation:floatOrb 10s ease-in-out infinite}.orb.o1{width:340px;height:340px;background:#1f8fff;right:-90px;top:-90px}.orb.o2{width:260px;height:260px;background:#17cda7;left:-100px;bottom:-120px;animation-delay:-3s}@keyframes floatOrb{50%{transform:translateY(28px) scale(1.06)}}
.shell{position:absolute;inset:0;display:flex;flex-direction:column}.topbar{height:68px;display:flex;align-items:center;gap:16px;padding:0 24px;border-bottom:1px solid var(--line);background:rgba(5,16,29,.78);backdrop-filter:blur(16px);z-index:10}.brand{display:flex;align-items:center;gap:12px;min-width:250px}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--yellow),#ff9d3f);box-shadow:0 8px 28px rgba(255,192,70,.24);position:relative}.brand-mark:before{content:"";position:absolute;width:18px;height:12px;background:#0a4c74;left:10px;top:14px;transform:skew(-11deg);box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}.brand-title{font-weight:800;letter-spacing:.4px}.brand-sub{font-size:11px;color:var(--muted)}.stepper{flex:1;display:flex;justify-content:center;gap:7px;overflow:hidden}.stepdot{width:8px;height:8px;border-radius:50%;background:#28465f;transition:.25s}.stepdot.active{width:26px;border-radius:8px;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 18px rgba(61,183,255,.45)}.stepdot.done{background:var(--green)}.top-actions{display:flex;gap:8px}.icon-btn,.mini-btn{border:1px solid var(--line);background:rgba(16,45,69,.66);color:var(--text);border-radius:12px;min-width:40px;height:40px;padding:0 12px;cursor:pointer;transition:.18s;font-weight:700}.icon-btn:hover,.mini-btn:hover{transform:translateY(-2px);border-color:rgba(89,228,220,.55);background:rgba(24,67,97,.84)}
.content{flex:1;min-height:0;padding:22px 24px 20px;position:relative}.scene{height:100%;display:none;opacity:1;transform:none}.scene.active{display:block;opacity:1;transform:none;animation:none}@keyframes sceneIn{to{opacity:1;transform:none}}.grid{display:grid;gap:18px;height:100%}.grid.two{grid-template-columns:1.25fr .75fr}.grid.lab3{grid-template-columns:260px 1fr 320px}.glass{background:linear-gradient(160deg,rgba(15,43,69,.84),rgba(7,24,42,.76));border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);backdrop-filter:blur(14px)}.card{padding:22px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:1.8px;color:var(--cyan);font-weight:800}.h1{font-size:clamp(38px,5vw,72px);line-height:.98;margin:12px 0 14px;font-weight:900;letter-spacing:-2.2px}.h2{font-size:clamp(24px,2.6vw,38px);margin:4px 0 10px;line-height:1.1}.lead{font-size:16px;line-height:1.65;color:#c9d9e6;max-width:720px}.muted{color:var(--muted)}.yellow{color:var(--yellow)}.cyan{color:var(--cyan)}
.btn{border:0;border-radius:14px;padding:13px 17px;font-weight:800;letter-spacing:.2px;cursor:pointer;transition:.18s;display:inline-flex;gap:9px;align-items:center;justify-content:center;color:#03131f;background:linear-gradient(135deg,var(--cyan),#7af5ff);box-shadow:0 12px 30px rgba(64,216,226,.18)}.btn:hover{transform:translateY(-2px) scale(1.015)}.btn:active{transform:scale(.98)}.btn.secondary{background:rgba(25,64,92,.82);color:var(--text);border:1px solid var(--line);box-shadow:none}.btn.yellow{background:linear-gradient(135deg,var(--yellow),#ffae48);color:#251600}.btn.danger{background:linear-gradient(135deg,#ff7a7e,#ff9c6b);color:#260b0c}.btn[disabled]{opacity:.36;cursor:not-allowed;transform:none;filter:saturate(.5)}.btnrow{display:flex;gap:10px;flex-wrap:wrap}.nav-card{border:1px solid var(--line);background:rgba(14,43,68,.72);border-radius:18px;padding:17px;cursor:pointer;transition:.2s;text-align:left;color:var(--text);min-height:94px}.nav-card:hover{transform:translateY(-4px);border-color:rgba(89,228,220,.5);background:rgba(21,58,87,.88)}.nav-card strong{display:block;font-size:16px;margin-bottom:5px}.nav-card span{font-size:12px;color:var(--muted);line-height:1.45}
.hero{display:grid;grid-template-columns:.92fr 1.08fr;height:100%;gap:22px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:12px 4vw}.hero-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.prompt{border-left:3px solid var(--yellow);padding:10px 0 10px 14px;color:#e7f3fa;font-weight:650;max-width:590px}.lab-visual{position:relative;min-height:430px;overflow:hidden;background:linear-gradient(#0a2440 0 56%,#142536 56% 62%,#0b1823 62%);border-radius:28px;border:1px solid var(--line);box-shadow:var(--shadow)}.window{position:absolute;right:8%;top:9%;width:34%;height:30%;border:8px solid #183a55;background:linear-gradient(#72d1ff,#bceaff 55%,#8bc86a 56%);box-shadow:inset 0 0 30px rgba(255,255,255,.34)}.window:before,.window:after{content:"";position:absolute;background:#1a4d70}.window:before{width:6px;height:100%;left:50%}.window:after{height:6px;width:100%;top:50%}.bench{position:absolute;left:6%;right:5%;bottom:12%;height:24%;border-radius:8px 8px 14px 14px;background:linear-gradient(#7d6956 0 12%,#293a48 12%);box-shadow:0 22px 35px rgba(0,0,0,.42)}.solar{position:absolute;width:170px;height:110px;background:linear-gradient(145deg,#0e71a7,#083e6e);border:9px solid #a6bac8;transform:skewY(-6deg) rotate(-4deg);box-shadow:0 18px 26px rgba(0,0,0,.34)}.solar:before{content:"";position:absolute;inset:5px;background-image:linear-gradient(rgba(255,255,255,.28) 2px,transparent 2px),linear-gradient(90deg,rgba(255,255,255,.28) 2px,transparent 2px);background-size:32px 24px}.solar:after{content:"";position:absolute;width:12px;height:65px;background:#879eaa;left:45%;top:100%;transform:skewY(6deg)}.hero .solar{left:11%;bottom:30%}.meter{position:absolute;width:125px;height:160px;border-radius:15px;background:linear-gradient(150deg,#30363a,#121719);border:4px solid #495157;box-shadow:0 20px 32px rgba(0,0,0,.45)}.meter .display{height:42px;margin:13px;border-radius:7px;background:#b8d69b;color:#17301a;font-family:Consolas,monospace;font-weight:900;font-size:21px;display:flex;align-items:center;justify-content:flex-end;padding:0 8px;box-shadow:inset 0 0 0 3px #232a26}.meter .knob{width:53px;height:53px;border-radius:50%;background:radial-gradient(circle,#565e63 0 50%,#1a1e21 52%);position:absolute;left:34px;top:80px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.meter .knob:before{content:"";position:absolute;width:5px;height:20px;border-radius:4px;background:#d8e0e4;left:24px;top:4px}.meter .ports{position:absolute;bottom:10px;left:17px;right:17px;display:flex;justify-content:space-between}.port{width:19px;height:19px;border-radius:50%;background:#101416;border:4px solid #57616a}.port.red{border-color:#b33d44}.hero .meter{right:16%;bottom:21%}.lamp{position:absolute;width:80px;height:110px}.lamp .bulb{width:64px;height:64px;border-radius:50% 50% 44% 44%;background:#eff6dd;border:3px solid #b8c6bb;box-shadow:0 0 25px rgba(255,229,124,.18);transition:.4s}.lamp .base{width:38px;height:34px;margin:-1px auto 0;background:repeating-linear-gradient(#6d7478 0 5px,#9ba2a6 5px 9px);border-radius:2px 2px 8px 8px}.hero .lamp{right:4%;bottom:23%}.cable-line{position:absolute;height:5px;border-radius:4px;transform-origin:left center;opacity:.9}.cable-line.red{background:#f54b55}.cable-line.black{background:#14191d;border:1px solid #3f4a51}.hero .cable-line.red{width:190px;left:39%;bottom:27%;transform:rotate(15deg)}.hero .cable-line.black{width:170px;left:38%;bottom:22%;transform:rotate(8deg)}
.case-visual{position:relative;height:100%;min-height:430px;overflow:hidden;background:linear-gradient(#5db7dd 0 52%,#adc879 52% 68%,#60794f 68%);border-radius:24px}.sun{position:absolute;width:86px;height:86px;right:16%;top:10%;border-radius:50%;background:var(--yellow);box-shadow:0 0 55px rgba(255,218,90,.55)}.cloud{position:absolute;width:170px;height:60px;right:10%;top:17%;background:#dbe7ee;border-radius:50px;filter:drop-shadow(0 10px 12px rgba(0,0,0,.12));animation:cloudMove 8s ease-in-out infinite}.cloud:before,.cloud:after{content:"";position:absolute;border-radius:50%;background:#e9f2f6}.cloud:before{width:75px;height:75px;left:30px;top:-32px}.cloud:after{width:90px;height:85px;right:24px;top:-39px}@keyframes cloudMove{50%{transform:translateX(-45px)}}.pole{position:absolute;left:28%;bottom:8%;width:12px;height:57%;background:#384a54}.case-panel{position:absolute;left:16%;top:18%;width:150px;height:90px;transform:rotate(-12deg);background:#0d6594;border:7px solid #7e939d}.case-panel:before{content:"";position:absolute;inset:4px;background-image:linear-gradient(rgba(255,255,255,.25) 2px,transparent 2px),linear-gradient(90deg,rgba(255,255,255,.25) 2px,transparent 2px);background-size:32px 22px}.case-lamp{position:absolute;left:25.3%;bottom:60%;width:56px;height:32px;border-radius:50%;background:#ffe291;box-shadow:0 0 18px rgba(255,221,117,.3)}
.choice-grid{display:grid;gap:10px;margin-top:14px}.choice{border:1px solid var(--line);background:rgba(12,40,64,.7);color:var(--text);padding:14px;border-radius:14px;cursor:pointer;text-align:left;transition:.18s}.choice:hover{transform:translateX(4px);border-color:rgba(89,228,220,.55)}.choice.selected{border-color:var(--yellow);background:rgba(255,212,90,.11);box-shadow:0 0 0 2px rgba(255,212,90,.08)}.choice.correct{border-color:var(--green);background:rgba(83,225,154,.1)}.choice.wrong{border-color:var(--amber);background:rgba(255,185,90,.1)}
.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tool{min-height:132px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(17,55,82,.84),rgba(9,29,47,.84));border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:.18s;position:relative}.tool:hover{transform:translateY(-5px);border-color:rgba(89,228,220,.48)}.tool.inspected:after{content:"✓";position:absolute;right:9px;top:8px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#072216;font-weight:900}.tool-icon{font-size:40px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.2))}.tool span{font-weight:800;font-size:13px}.progressbar{height:8px;background:#1b3a50;border-radius:10px;overflow:hidden}.progressbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:.3s}
.modal-wrap{position:absolute;inset:0;background:rgba(2,9,16,.76);backdrop-filter:blur(7px);display:none;align-items:center;justify-content:center;z-index:80;padding:24px}.modal-wrap.open{display:flex;animation:fade .2s}.modal{max-width:780px;width:100%;border-radius:24px;background:linear-gradient(155deg,#102e48,#071a2b);border:1px solid rgba(126,205,244,.24);box-shadow:0 30px 100px rgba(0,0,0,.5);padding:26px;position:relative}.modal .close{position:absolute;right:16px;top:14px}.modal-grid{display:grid;grid-template-columns:210px 1fr;gap:24px;align-items:center}.tool-focus{height:200px;border-radius:20px;background:radial-gradient(circle,rgba(61,183,255,.16),transparent 68%),rgba(8,27,45,.7);display:grid;place-items:center;font-size:90px}.info-block{margin:11px 0;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.035);border-left:3px solid var(--blue)}.info-block.k3{border-color:var(--yellow)}.info-block strong{display:block;font-size:11px;letter-spacing:1.4px;color:var(--muted);margin-bottom:4px}
.control-stack{display:grid;gap:16px}.control{padding:15px;border-radius:15px;background:rgba(9,30,49,.68);border:1px solid var(--line)}.control-head{display:flex;justify-content:space-between;margin-bottom:10px}.value{font-family:Consolas,monospace;color:var(--yellow);font-weight:900}.range{width:100%;accent-color:#4fd4e2}.seg{display:flex;gap:7px}.seg button{flex:1;padding:9px;border-radius:10px;border:1px solid var(--line);background:#102f49;color:var(--text);cursor:pointer}.seg button.active{background:#1d6980;border-color:var(--cyan)}.preview-lab{position:relative;height:100%;min-height:420px;border-radius:22px;overflow:hidden;background:linear-gradient(#0b3552 0 60%,#172d3c 60%);transition:filter .25s}.preview-lab .solar{left:38%;top:36%;transform-origin:50% 110%;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.preview-lab .sunbeam{position:absolute;right:10%;top:3%;width:250px;height:250px;background:radial-gradient(circle at top right,rgba(255,221,90,.5),transparent 67%);transition:opacity .25s}.preview-lab .load-mini{position:absolute;right:14%;bottom:18%;font-size:72px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.25))}.status-list{display:grid;gap:8px}.status-row{display:flex;justify-content:space-between;padding:10px 11px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:11px}.status-row b{color:var(--cyan)}
.wiring-area{position:relative;height:100%;min-height:430px;border-radius:22px;background:linear-gradient(#0d263b 0 67%,#263746 67%);overflow:hidden;border:1px solid var(--line)}.device{position:absolute}.wire-panel{left:8%;top:25%;width:190px;height:125px}.wire-panel .solar{left:0;top:0;transform:scale(.82) rotate(-3deg)}.wire-meter{left:43%;top:22%;width:125px;height:160px}.wire-meter .meter{left:0;top:0}.wire-lamp{right:9%;top:28%;width:80px;height:110px}.terminal{position:absolute;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:3px solid #5f788a;background:#0b1218;font-weight:900;z-index:4;transition:.2s}.terminal.goodhint{box-shadow:0 0 0 6px rgba(89,228,220,.12),0 0 25px rgba(89,228,220,.4);border-color:var(--cyan)}.terminal.connected{border-color:var(--green);box-shadow:0 0 18px rgba(83,225,154,.45)}.terminal.tplus{left:28%;top:38%;color:#ff6f73}.terminal.tcom{left:59%;top:55%;color:#d8e4eb}.cable-tray{position:absolute;left:8%;right:8%;bottom:5%;height:82px;border-radius:14px;background:rgba(4,16,26,.7);border:1px solid var(--line);display:flex;align-items:center;gap:22px;padding:14px}.plug{height:42px;min-width:150px;border-radius:12px;padding:0 14px;display:flex;align-items:center;gap:10px;font-weight:900;cursor:grab;touch-action:none;position:relative;z-index:8;transition:transform .18s,box-shadow .18s}.plug.red{background:#9f2731;border:2px solid #f07178}.plug.black{background:#161b20;border:2px solid #48545d}.plug.dragging{position:fixed;z-index:2147483600;pointer-events:none;transform:scale(1.06);box-shadow:0 20px 38px rgba(0,0,0,.45)}.plug.connected{opacity:.35;cursor:default}.shake{animation:shake .28s}@keyframes shake{25%{transform:translateX(-6px)}50%{transform:translateX(6px)}75%{transform:translateX(-3px)}}
.meter-stage{display:flex;align-items:center;justify-content:center;position:relative;min-height:430px}.meter-big{position:relative;width:300px;height:390px;border-radius:28px;background:linear-gradient(145deg,#394146,#14191c);border:7px solid #515b61;box-shadow:0 34px 65px rgba(0,0,0,.42)}.meter-big .display{height:90px;margin:28px 24px 0;border-radius:12px;background:#b9d69c;box-shadow:inset 0 0 0 6px #252d29;color:#17311c;display:flex;align-items:center;justify-content:flex-end;padding:0 18px;font:900 42px Consolas,monospace;letter-spacing:1px}.meter-big .knob{position:absolute;left:105px;top:157px;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle,#5a646a 0 52%,#191e21 54%);transition:transform .4s cubic-bezier(.2,.8,.2,1);box-shadow:0 12px 25px rgba(0,0,0,.36)}.meter-big .knob:before{content:"";position:absolute;width:8px;height:34px;border-radius:6px;background:#e0e6e8;left:42px;top:7px}.mode-labels{position:absolute;left:36px;right:36px;top:142px;height:138px}.mode-pick{position:absolute;border:1px solid var(--line);background:#18364c;color:var(--text);border-radius:10px;padding:7px 10px;font-weight:900;cursor:pointer}.mode-pick.dcv{left:0;top:78px}.mode-pick.dca{right:0;top:78px}.mode-pick.active{border-color:var(--yellow);color:var(--yellow)}.meter-big .ports{position:absolute;left:42px;right:42px;bottom:35px;display:flex;justify-content:space-between}.meter-big .port{width:38px;height:38px}.meter-stage .lamp{right:5%;bottom:20%}.lamp.glow .bulb{background:#fff1a5;box-shadow:0 0 45px rgba(255,223,103,.62)}
.data-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.metric{padding:16px;border-radius:14px;background:rgba(12,40,64,.72);border:1px solid var(--line)}.metric small{display:block;color:var(--muted);font-weight:700;margin-bottom:8px}.metric strong{font-size:24px;color:var(--yellow);font-family:Consolas,monospace}.formula{font-family:Consolas,monospace;font-size:30px;font-weight:900;padding:22px;text-align:center;border-radius:18px;background:rgba(7,26,43,.78);border:1px solid var(--line);margin:14px 0}.formula.flash{animation:formulaFlash .75s}@keyframes formulaFlash{50%{border-color:var(--cyan);box-shadow:0 0 28px rgba(89,228,220,.22)}}.result-big{display:grid;grid-template-columns:1fr 1fr;gap:12px}.result-big .metric strong{font-size:30px}
.table-wrap{overflow:auto;max-height:280px;border-radius:14px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:10px 9px;border-bottom:1px solid rgba(255,255,255,.07);text-align:left;white-space:nowrap}th{position:sticky;top:0;background:#11314b;color:#b7d3e6}tr:hover td{background:rgba(89,228,220,.04)}.chart{height:260px;border-left:1px solid #49677b;border-bottom:1px solid #49677b;display:flex;align-items:flex-end;gap:18px;padding:16px 18px 0;margin:18px 6px 0;position:relative}.bar-wrap{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;min-width:46px}.bar{width:min(54px,72%);height:0;background:linear-gradient(#5be4dd,#218dd1);border-radius:10px 10px 3px 3px;box-shadow:0 0 24px rgba(61,183,255,.16);transition:height .8s cubic-bezier(.2,.8,.2,1);position:relative}.bar:hover{filter:brightness(1.2)}.bar span{position:absolute;top:-24px;width:100px;left:50%;transform:translateX(-50%);text-align:center;font-size:11px;color:var(--yellow);font-weight:800}.bar-label{font-size:11px;color:var(--muted);margin:7px 0 4px}
.quiz-card{max-width:820px;margin:auto;height:100%;display:flex;flex-direction:column;justify-content:center}.quiz-progress{font-size:12px;color:var(--cyan);font-weight:800;letter-spacing:1px}.question{font-size:24px;font-weight:850;line-height:1.35;margin:12px 0 18px}.answers{display:grid;gap:10px}.answer{border:1px solid var(--line);background:rgba(14,43,68,.74);padding:14px 16px;border-radius:14px;cursor:pointer;transition:.18s;text-align:left;color:var(--text)}.answer:hover{transform:translateX(4px);border-color:rgba(89,228,220,.48)}.answer.selected{border-color:var(--yellow);background:rgba(255,212,90,.08)}.feedback{min-height:46px;margin-top:12px;padding:10px 13px;border-radius:12px;display:none}.feedback.show{display:block}.feedback.good{background:rgba(83,225,154,.1);border:1px solid rgba(83,225,154,.35)}.feedback.warn{background:rgba(255,185,90,.1);border:1px solid rgba(255,185,90,.35)}.score-ring{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;margin:10px auto;background:conic-gradient(var(--cyan) calc(var(--score)*1%),#19384d 0);position:relative}.score-ring:after{content:"";position:absolute;inset:13px;border-radius:50%;background:#0a2134}.score-ring strong{z-index:1;font-size:34px}.textarea{width:100%;min-height:110px;border-radius:14px;border:1px solid var(--line);background:#081d30;color:var(--text);padding:13px;font:14px/1.55 Segoe UI,Arial,sans-serif;resize:none;user-select:text}.select{width:100%;padding:11px;border-radius:11px;background:#0b2940;color:var(--text);border:1px solid var(--line)}
.bottom-actions{position:absolute;left:24px;right:24px;bottom:18px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;z-index:20}.bottom-actions>*{pointer-events:auto}.toast{position:absolute;right:28px;top:82px;max-width:380px;padding:13px 16px;border-radius:13px;background:#123b55;border:1px solid rgba(89,228,220,.32);box-shadow:0 14px 45px rgba(0,0,0,.3);transform:translateX(120%);transition:.3s;z-index:100}.toast.show{transform:none}.toast.warn{border-color:rgba(255,185,90,.42);background:#49331e}.toast.good{border-color:rgba(83,225,154,.42);background:#164332}.pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);font-size:12px;color:#c6d8e4}.fadeout{animation:fadeout .25s forwards}@keyframes fadeout{to{opacity:0;transform:translateX(-10px)}}@keyframes fade{from{opacity:0}to{opacity:1}}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* B0 engine-core additions */
.stage-badge{margin-left:8px;padding:5px 9px;border-radius:999px;border:1px solid var(--line);background:rgba(89,228,220,.07);color:var(--cyan);font-size:10px;font-weight:900;letter-spacing:1px;white-space:nowrap}
.btn.success{background:linear-gradient(135deg,var(--green),#9af4bd);color:#082016}
.btn.warning{background:linear-gradient(135deg,var(--amber),#ffd17d);color:#2b1904}
.confirm-modal{max-width:620px}

/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   B1 — PROFESSIONAL VISUAL LAB OVERRIDES
   ========================================================= */
:root{
 --navy:#050c14;--navy2:#091727;--panel:rgba(9,24,38,.82);--panel2:rgba(15,41,62,.86);
 --blue:#30a9e8;--cyan:#63e2dc;--yellow:#f5c650;--green:#62d79c;--amber:#e9ad55;--red:#ef6a70;
 --text:#f3f8fb;--muted:#9bb0bf;--line:rgba(159,202,226,.16);--line2:rgba(159,202,226,.28);
 --shadow:0 28px 70px rgba(0,0,0,.42),0 1px 0 rgba(255,255,255,.03) inset;
 --shadow-soft:0 16px 38px rgba(0,0,0,.24);--r:20px;--r2:13px;
}
html,body{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;background:#050c14}
.sm-root{background:radial-gradient(ellipse at 78% 8%,rgba(37,143,201,.18),transparent 34%),radial-gradient(ellipse at 16% 90%,rgba(42,177,155,.08),transparent 38%),linear-gradient(145deg,#050c14,#071624 58%,#050e17)}
.sm-root:before{background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 86%)}
.ambient-mesh{position:absolute;inset:0;pointer-events:none;opacity:.42;background:radial-gradient(circle at 50% 50%,transparent 0 52%,rgba(0,0,0,.18) 88%,rgba(0,0,0,.38) 100%)}
.orb{filter:blur(45px);opacity:.12}.orb.o1{width:460px;height:460px;background:#2a9ed2;right:-130px;top:-150px}.orb.o2{width:330px;height:330px;background:#1c967f;left:-150px;bottom:-170px}.orb.o3{width:220px;height:220px;background:#d7a83c;right:25%;bottom:-170px;animation-delay:-6s}
.topbar{height:72px;padding:0 26px;background:linear-gradient(180deg,rgba(6,17,28,.94),rgba(6,17,28,.76));border-bottom:1px solid rgba(159,202,226,.13);box-shadow:0 10px 30px rgba(0,0,0,.2);backdrop-filter:blur(22px)}
.brand{min-width:290px}.brand-mark{width:40px;height:40px;border-radius:11px;background:linear-gradient(145deg,#f7cf61,#e9a62f);box-shadow:0 10px 32px rgba(235,174,48,.17),inset 0 1px 0 rgba(255,255,255,.4);overflow:hidden}.brand-mark:before{width:20px;height:13px;left:9px;top:14px;background:linear-gradient(145deg,#12648b,#0a3f62);box-shadow:inset 0 0 0 1px rgba(255,255,255,.34)}.brand-mark:after{content:"";position:absolute;width:10px;height:3px;border-radius:3px;background:#183346;left:15px;bottom:6px}.brand-mark span{position:absolute;width:4px;height:4px;border-radius:50%;background:#fff6b9;right:5px;top:5px;box-shadow:0 0 10px rgba(255,243,161,.8)}.brand-mark.large{width:56px;height:56px;border-radius:15px}.brand-title{font-size:15px;letter-spacing:.7px}.brand-sub{font-size:10px;letter-spacing:.4px;color:#8fa8b8}.stepper-wrap{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.stepper{width:min(520px,100%);gap:6px}.stepdot{height:5px;flex:1;max-width:44px;width:auto;border-radius:999px;background:#183247}.stepdot.active{width:auto;max-width:54px;box-shadow:0 0 14px rgba(60,192,212,.25)}.step-caption{font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:#7190a4;font-weight:700}.top-actions{gap:7px}.icon-btn,.mini-btn{width:40px;min-width:40px;padding:0;border-radius:11px;background:rgba(14,40,58,.7);border-color:rgba(159,202,226,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.icon-btn:hover,.mini-btn:hover{transform:translateY(-1px);background:rgba(23,60,83,.86);border-color:rgba(99,226,220,.35)}
.ui-svg{width:19px;height:19px;display:inline-block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.content{padding:22px 26px 22px}.scene{transform:translateX(12px);filter:saturate(.92)}.scene.active{animation:sceneInB1 .45s cubic-bezier(.22,.8,.22,1) forwards}@keyframes sceneInB1{0%{opacity:0;transform:translateX(13px) scale(.996);filter:saturate(.8)}100%{opacity:1;transform:none;filter:none}}
.fadeout{animation:fadeoutB1 .25s ease forwards}@keyframes fadeoutB1{to{opacity:0;transform:translateX(-14px);filter:blur(1px)}}
.glass{background:linear-gradient(155deg,rgba(13,35,52,.9),rgba(7,20,32,.83));border-color:rgba(159,202,226,.15);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.card{padding:23px}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#65d5d1}.eyebrow-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px rgba(245,198,80,.5);margin-right:5px}.h1{font-weight:800;letter-spacing:-2.8px}.h2{font-weight:730;letter-spacing:-.6px}.lead{color:#b8cbd6;font-size:15px;line-height:1.62}.muted{color:#8fa8b8}
.btn{min-height:44px;border-radius:12px;padding:11px 15px;background:linear-gradient(135deg,#5bded5,#3abfc9);font-size:13px;box-shadow:0 12px 26px rgba(43,188,196,.12),inset 0 1px 0 rgba(255,255,255,.25);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.13),transparent 70%);transform:translateX(-120%);transition:.35s}.btn:hover:before{transform:translateX(120%)}.btn:hover{transform:translateY(-2px) scale(1.012);box-shadow:0 17px 34px rgba(43,188,196,.16)}.btn.secondary{background:linear-gradient(145deg,rgba(20,53,75,.82),rgba(10,31,48,.82));border:1px solid rgba(159,202,226,.16);color:#e7f3f7}.btn.yellow{background:linear-gradient(135deg,#f6cf61,#efa943);box-shadow:0 12px 26px rgba(229,165,56,.13)}.btn.warning{background:linear-gradient(135deg,#e5a64f,#d77945);color:#241305}.btn .ui-svg{width:17px;height:17px}.action-cluster{display:flex;align-items:center;gap:8px}.bottom-actions{left:26px;right:26px;bottom:18px;padding-top:9px}.bottom-actions:before{content:"";position:absolute;left:0;right:0;bottom:-18px;height:82px;background:linear-gradient(transparent,rgba(5,12,20,.82));z-index:-1;pointer-events:none}
.pill{font-size:9px;letter-spacing:.75px;color:#9bb6c4;background:rgba(255,255,255,.025);border-color:rgba(159,202,226,.13);padding:6px 9px}
/* Home */
.hero{grid-template-columns:.91fr 1.09fr;gap:25px}.hero-copy{padding:10px 2vw 10px 3vw}.hero-copy .lead{max-width:620px}.prompt{display:flex;align-items:center;gap:13px;border:1px solid rgba(245,198,80,.18);background:linear-gradient(135deg,rgba(245,198,80,.08),rgba(245,198,80,.025));padding:12px 14px;border-radius:13px;margin-top:5px}.prompt small{display:block;font-size:8px;letter-spacing:1.4px;color:#cfab4c;margin-bottom:3px}.prompt-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:rgba(245,198,80,.1);color:#f5ce62}.hero-actions{grid-template-columns:1fr;gap:8px;margin-top:18px;max-width:640px}.nav-card{min-height:72px;border-radius:14px;padding:13px 14px;display:grid;grid-template-columns:42px 1fr 20px;align-items:center;gap:10px;background:linear-gradient(145deg,rgba(16,42,60,.76),rgba(8,26,41,.76));box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.nav-card:hover{transform:translateX(4px);background:linear-gradient(145deg,rgba(23,59,80,.88),rgba(10,35,52,.88));border-color:rgba(99,226,220,.28)}.nav-card.featured{border-color:rgba(245,198,80,.24);background:linear-gradient(145deg,rgba(74,58,22,.32),rgba(20,37,47,.76))}.nav-index{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:10px;font-weight:800;letter-spacing:.6px;color:#80e2df;background:rgba(80,205,202,.08);border:1px solid rgba(80,205,202,.12)}.featured .nav-index{color:#f5d16d;background:rgba(245,198,80,.09);border-color:rgba(245,198,80,.14)}.nav-copy strong{font-size:14px;margin:0 0 2px}.nav-copy>span{font-size:11px}.nav-card>.ui-svg{width:15px;color:#6a899d;transition:.18s}.nav-card:hover>.ui-svg{transform:translateX(2px);color:#8fe7e3}.hero-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}
.lab-visual{min-height:470px;border-radius:24px;background:linear-gradient(#091e30 0 58%,#102330 58% 63%,#07131d 63%);border-color:rgba(159,202,226,.14);box-shadow:0 38px 80px rgba(0,0,0,.43),inset 0 1px 0 rgba(255,255,255,.03)}.lab-ceiling{position:absolute;left:0;right:0;top:0;height:13%;background:linear-gradient(#07131e,#0b1c2a);border-bottom:1px solid rgba(173,214,234,.08)}.lab-ceiling:before,.lab-ceiling:after{content:"";position:absolute;top:45%;height:3px;width:25%;background:linear-gradient(90deg,transparent,#c8edf7,transparent);opacity:.25;filter:blur(.3px)}.lab-ceiling:before{left:12%}.lab-ceiling:after{right:12%}.lab-wall-grid{position:absolute;left:0;right:0;top:13%;bottom:39%;opacity:.08;background-image:linear-gradient(rgba(155,203,228,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(155,203,228,.4) 1px,transparent 1px);background-size:58px 58px}.window{right:5%;top:16%;width:31%;height:28%;border:6px solid #18374d;background:linear-gradient(#7ec8e7,#d4edf6 56%,#7fae69 57%);box-shadow:0 12px 36px rgba(0,0,0,.28),inset 0 0 35px rgba(255,255,255,.25)}.lab-screen{position:absolute;left:5%;top:17%;width:29%;height:18%;border-radius:9px;background:linear-gradient(145deg,#0a3148,#061d2e);border:1px solid rgba(98,210,208,.2);box-shadow:0 12px 28px rgba(0,0,0,.3),inset 0 0 25px rgba(29,125,155,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.lab-screen b{font-size:10px;letter-spacing:1.2px;color:#7adfd9}.lab-screen span{font:700 18px Consolas,monospace;color:#a9cfb6;text-shadow:0 0 12px rgba(96,209,151,.18)}.shelf{position:absolute;left:4%;top:43%;width:31%;height:4px;background:#28404d;box-shadow:0 5px 15px rgba(0,0,0,.3)}.shelf i{position:absolute;bottom:4px;width:23px;height:31px;border-radius:5px 5px 2px 2px;background:linear-gradient(#355d70,#183446);border:1px solid rgba(255,255,255,.07)}.shelf i:nth-child(1){left:12px}.shelf i:nth-child(2){left:48px;height:23px}.shelf i:nth-child(3){left:80px;width:40px;height:18px}.bench{left:4%;right:4%;bottom:10%;height:26%;background:linear-gradient(#88715c 0 10%,#31414c 10% 22%,#15232c 22%);border-radius:8px 8px 15px 15px;box-shadow:0 27px 38px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.17)}.bench-edge{position:absolute;left:5%;right:5%;bottom:29%;height:3px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent)}.hero .solar{left:10%;bottom:29%;transform:skewY(-5deg) rotate(-5deg) scale(.95);filter:drop-shadow(0 18px 14px rgba(0,0,0,.25))}.solar{background:linear-gradient(145deg,#0c608d,#062c50);border:7px solid #9aaeb9;border-bottom-color:#728893}.solar:before{background-size:28px 22px;opacity:.75}.solar-glint{position:absolute;left:-20%;top:10%;width:22%;height:70%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-15deg);animation:solarGlint 7s ease-in-out infinite}@keyframes solarGlint{0%,65%{left:-25%;opacity:0}72%{opacity:.5}88%{left:110%;opacity:0}100%{left:110%;opacity:0}}.hero .meter{right:18%;bottom:20%;transform:scale(.96)}.meter{border-radius:13px;background:linear-gradient(145deg,#343b3f,#111719);border:3px solid #4f575c;box-shadow:0 20px 34px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.08)}.meter-label{position:absolute;top:62px;left:13px;right:13px;text-align:center;font-size:5px;letter-spacing:.7px;color:#8d969c}.hero .lamp{right:5%;bottom:22%;transform:scale(.88)}.sensor-mini{position:absolute;right:36%;bottom:22%;width:55px;height:74px;border-radius:8px;background:linear-gradient(145deg,#d8b64c,#a28224);border:3px solid #313638;box-shadow:0 16px 24px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#202710;font-family:Consolas,monospace}.sensor-mini span{background:#b5d5a1;padding:4px;border-radius:3px;font-weight:800}.sensor-mini small{font-size:6px;margin-top:4px;color:#342d14}.ambient-light{position:absolute;border-radius:50%;filter:blur(26px);opacity:.13;animation:ambientPulse 6s ease-in-out infinite}.ambient-light.a1{width:150px;height:150px;background:#58cde0;right:2%;top:18%}.ambient-light.a2{width:100px;height:100px;background:#f2c254;left:4%;top:22%;animation-delay:-2s}@keyframes ambientPulse{50%{opacity:.2;transform:scale(1.06)}}.floor-shadow{position:absolute;left:12%;right:11%;bottom:3%;height:7%;border-radius:50%;background:rgba(0,0,0,.25);filter:blur(11px)}
/* Case */
.case-visual{border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);background:linear-gradient(#5dadd0 0 49%,#aac67d 49% 66%,#637952 66%);isolation:isolate}.case-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,37,56,.04),rgba(4,18,25,.12));pointer-events:none;z-index:20}.school-skyline{position:absolute;inset:36% 0 auto;height:18%;opacity:.12;background:linear-gradient(90deg,#38566b 0 14%,transparent 14% 18%,#38566b 18% 35%,transparent 35% 41%,#38566b 41% 64%,transparent 64% 69%,#38566b 69% 100%)}.school-building{position:absolute;right:3%;bottom:26%;width:35%;height:28%;background:linear-gradient(#d8d7cf,#bbbcb7);border-top:10px solid #6a7880;box-shadow:0 16px 26px rgba(0,0,0,.18)}.school-building span{position:absolute;width:14%;height:24%;background:#507b90;top:26%;box-shadow:inset 0 0 0 3px rgba(220,237,242,.42)}.school-building span:nth-child(1){left:8%}.school-building span:nth-child(2){left:30%}.school-building span:nth-child(3){left:52%}.school-building span:nth-child(4){left:74%}.ground-path{position:absolute;left:0;right:0;bottom:0;height:27%;background:linear-gradient(165deg,#829372 0 25%,#a2a593 26% 45%,#697c59 46%);clip-path:polygon(0 30%,100% 0,100% 100%,0 100%)}.sun{right:18%;top:8%;background:#f5cf64;box-shadow:0 0 70px rgba(246,202,79,.42)}.sun-rays{position:absolute;width:180px;height:180px;right:11.5%;top:1%;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(246,212,112,.13) 0 5deg,transparent 5deg 20deg);animation:slowSpin 28s linear infinite}@keyframes slowSpin{to{transform:rotate(360deg)}}.cloud{right:9%;top:16%;opacity:.92;animation-duration:10s}.cloud.c2{right:50%;top:8%;transform:scale(.68);opacity:.44;animation-delay:-4s}.pole{left:26%;bottom:7%;height:58%;background:linear-gradient(90deg,#263945,#51616a,#263945);box-shadow:8px 8px 16px rgba(0,0,0,.2)}.case-panel{left:13%;top:19%;width:155px;height:90px;border:6px solid #728993;box-shadow:0 15px 22px rgba(0,0,0,.22)}.case-lamp{left:23.5%;bottom:60%;background:#ffe2a2;box-shadow:0 0 18px rgba(255,226,162,.2),0 8px 12px rgba(0,0,0,.18)}.case-callout{position:absolute;left:35%;bottom:49%;font-size:10px;letter-spacing:.4px;font-weight:700;background:rgba(7,25,36,.78);padding:7px 10px;border-radius:9px;color:#e3eef2;border:1px solid rgba(255,255,255,.1);z-index:21}.pulse-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e9ad55;margin-right:6px;box-shadow:0 0 0 0 rgba(233,173,85,.4);animation:pulseDot 2s infinite}@keyframes pulseDot{70%{box-shadow:0 0 0 8px rgba(233,173,85,0)}}.side-panel{position:relative}.choice{display:grid;grid-template-columns:34px 1fr 18px;align-items:center;gap:9px;padding:12px 13px;border-radius:12px;background:linear-gradient(145deg,rgba(15,42,60,.75),rgba(8,27,41,.75))}.choice:hover{transform:translateX(3px)}.choice-index{font:700 10px Consolas,monospace;color:#6edbd6}.choice.selected{border-color:rgba(245,198,80,.45);background:linear-gradient(145deg,rgba(68,53,20,.42),rgba(14,37,49,.76))}.choice .ui-svg{width:15px;color:#f4ce65}.hypothesis-card{display:flex;flex-direction:column;gap:3px}.hypothesis-card small{color:#809bab}
/* Equipment */
.equipment-board{padding-bottom:25px}.tool-grid{grid-template-columns:repeat(3,1fr);gap:10px}.tool{min-height:148px;border-radius:14px;background:linear-gradient(145deg,rgba(17,45,63,.82),rgba(7,25,38,.82));border-color:rgba(159,202,226,.13);padding:11px;gap:7px;overflow:hidden}.tool:before{content:"";position:absolute;inset:auto 12px 38px;height:14px;border-radius:50%;background:rgba(0,0,0,.2);filter:blur(6px);transition:.2s}.tool:hover{transform:translateY(-4px);border-color:rgba(99,226,220,.3);background:linear-gradient(145deg,rgba(23,60,78,.88),rgba(8,30,43,.88));box-shadow:0 16px 30px rgba(0,0,0,.22)}.tool:hover .equip-visual{transform:translateY(-3px) scale(1.03)}.tool.inspected:after{width:22px;height:22px;font-size:11px;right:7px;top:7px;box-shadow:0 0 0 4px rgba(98,215,156,.06)}.tool-name{font-size:11px!important;z-index:2}.tool small{font-size:7px;letter-spacing:.8px;color:#5f7c8f;z-index:2}.tool.inspected small{color:#72bc9c}.equip-visual{position:relative;width:94px;height:72px;display:grid;place-items:center;transition:.22s;filter:drop-shadow(0 12px 8px rgba(0,0,0,.22));z-index:1}.equip-visual.large{width:190px;height:170px;transform:scale(1.05)}.ev-panel{width:80px;height:48px;background:linear-gradient(145deg,#116a96,#052f51);border:5px solid #91a7b1;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:2px;padding:3px;transform:perspective(130px) rotateX(5deg) rotateZ(-5deg)}.ev-panel i{border:1px solid rgba(220,245,255,.32);background:linear-gradient(145deg,rgba(32,151,196,.28),rgba(0,22,42,.2))}.ev-stand{position:absolute;left:44px;top:51px;width:7px;height:21px;background:#78909c;transform:rotate(4deg)}.ev-stand b{position:absolute;bottom:-5px;left:-16px;width:38px;height:5px;border-radius:4px;background:#5d747e}.ev-meter{width:60px;height:71px;border-radius:8px;background:linear-gradient(145deg,#373e42,#101619);border:3px solid #535d63;position:relative}.ev-screen{position:absolute;left:7px;right:7px;top:7px;height:16px;border-radius:3px;background:#aecb9a;color:#18301b;font:800 8px Consolas,monospace;display:flex;align-items:center;justify-content:flex-end;padding:0 3px}.ev-dial{position:absolute;left:20px;top:32px;width:21px;height:21px;border-radius:50%;background:radial-gradient(circle,#5c656b 0 46%,#181d20 49%);box-shadow:0 2px 5px rgba(0,0,0,.3)}.ev-dial:before{content:"";position:absolute;left:9px;top:2px;width:3px;height:8px;border-radius:2px;background:#e0e7e9}.ev-jacks{position:absolute;left:9px;right:9px;bottom:6px;display:flex;justify-content:space-between}.ev-jacks i{width:8px;height:8px;border-radius:50%;border:2px solid #69767c;background:#0a0e10}.ev-jacks i:nth-child(2),.ev-jacks i:nth-child(3){border-color:#a84449}.ev-lead{position:relative;width:80px;height:50px}.ev-lead:before{content:"";position:absolute;left:8px;top:28px;width:56px;height:4px;border-radius:4px;transform:rotate(-14deg);transform-origin:left;background:#1d2225}.ev-lead.red:before{background:#d8444d}.ev-lead span{position:absolute;left:47px;top:11px;width:33px;height:7px;border-radius:6px;background:#272c2f;transform:rotate(-14deg)}.ev-lead.red span{background:#bf3640}.ev-lead i{position:absolute;right:0;top:4px;width:19px;height:3px;background:#bfc9cd;transform:rotate(-14deg)}.ev-battery{width:55px;height:45px;border-radius:5px;background:linear-gradient(145deg,#315f77,#183744);border:2px solid #647985;position:relative;display:grid;place-items:center;font:800 9px Consolas;color:#cce5eb}.ev-battery:before,.ev-battery:after{content:"";position:absolute;top:-6px;width:11px;height:6px;border-radius:2px 2px 0 0;background:#a5b2b8}.ev-battery:before{left:8px}.ev-battery:after{right:8px;background:#b34e54}.ev-battery b{position:absolute;left:10px;right:10px;bottom:6px;height:2px;background:rgba(255,255,255,.12)}.ev-lamp{position:relative;width:56px;height:65px}.ev-lamp i{position:absolute;left:8px;top:0;width:42px;height:42px;border-radius:50% 50% 44% 44%;background:radial-gradient(circle at 40% 35%,#fff6c9,#e7d899 60%,#87918d 100%);border:2px solid #a9b2ae;box-shadow:0 0 16px rgba(245,205,101,.16)}.ev-lamp b{position:absolute;left:20px;top:40px;width:19px;height:19px;background:repeating-linear-gradient(#737c80 0 3px,#a0a8ab 3px 5px);border-radius:0 0 5px 5px}.ev-sensor{width:47px;height:61px;border-radius:6px;background:linear-gradient(145deg,#e0bd4e,#947120);border:3px solid #313638;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#24321a;font-family:Consolas,monospace}.ev-sensor div{background:#b6d39f;padding:4px 5px;border-radius:2px;font-size:9px;font-weight:800}.ev-sensor span{font-size:6px;margin-top:4px}.ev-shield{width:54px;height:60px;clip-path:polygon(50% 0,90% 14%,86% 67%,50% 100%,14% 67%,10% 14%);background:linear-gradient(145deg,#2f8f79,#185b50);display:grid;place-items:center;color:#d7fff0;box-shadow:inset 0 0 0 2px rgba(255,255,255,.15)}.ev-shield .ui-svg{width:28px;height:28px;stroke-width:2.3}.inspection-summary{display:flex;flex-direction:column}.inspection-count{display:flex;align-items:baseline;gap:7px;margin:3px 0 12px}.inspection-count strong{font:800 40px/1 Consolas,monospace;color:#e9f5f7}.inspection-count span{font-size:12px;color:#7692a3}.safety-grid{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;margin:18px 0;padding:13px;border-radius:13px;background:linear-gradient(135deg,rgba(39,110,91,.12),rgba(9,31,39,.36));border:1px solid rgba(98,215,156,.15)}.safety-icon .equip-visual{width:60px;height:60px}.safety-grid b{font-size:11px;letter-spacing:1px;color:#7fe0b5}.safety-grid p{font-size:11px;line-height:1.5;color:#9fb6c0;margin:5px 0 0}.inspection-legend{margin-top:auto;display:flex;gap:12px;flex-wrap:wrap;padding-top:14px;font-size:9px;color:#708b9d}.legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;background:#415f70}.legend-dot.done{background:#62d79c}.tool-modal .modal-grid{grid-template-columns:260px 1fr}.tool-focus{height:250px;border:1px solid rgba(159,202,226,.1);background:radial-gradient(circle,rgba(54,143,161,.12),transparent 62%),linear-gradient(145deg,rgba(7,26,39,.6),rgba(5,16,26,.8));position:relative;overflow:hidden}.tool-focus .equip-visual{margin:auto;top:30px}.inspection-orbit{position:absolute;inset:30px;border:1px dashed rgba(99,226,220,.12);border-radius:50%;animation:orbitSpin 20s linear infinite}.inspection-orbit i{position:absolute;width:5px;height:5px;border-radius:50%;background:#55cbc7;box-shadow:0 0 8px rgba(85,203,199,.5)}.inspection-orbit i:nth-child(1){top:-3px;left:50%}.inspection-orbit i:nth-child(2){bottom:14%;right:2%}.inspection-orbit i:nth-child(3){bottom:8%;left:10%}@keyframes orbitSpin{to{transform:rotate(360deg)}}
/* Variable control station */
.preview-lab{background:linear-gradient(#0c293d 0 62%,#132832 62%);border-color:rgba(159,202,226,.14);box-shadow:var(--shadow);overflow:hidden}.preview-header{position:absolute;left:18px;top:16px;z-index:5;display:flex;flex-direction:column;gap:2px}.preview-header span{font-size:8px;letter-spacing:1.2px;color:#5ecbc7}.preview-header b{font-size:12px;color:#dcebf0}.preview-grid{position:absolute;inset:0;opacity:.06;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);background-size:46px 46px}.sun-source{position:absolute;right:10%;top:13%;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#f5cb5b;background:rgba(245,198,80,.08);border:1px solid rgba(245,198,80,.15);box-shadow:0 0 45px rgba(245,198,80,.08)}.sun-source .ui-svg{width:29px;height:29px}.preview-lab .solar{left:28%;bottom:27%;transform-origin:50% 116%;transition:transform .42s cubic-bezier(.22,.8,.22,1),filter .3s}.angle-arc{position:absolute;left:21%;bottom:16%;width:180px;height:75px;border:1px dashed rgba(99,226,220,.18);border-bottom:0;border-radius:180px 180px 0 0;color:#75d8d3;font:700 10px Consolas}.angle-arc span{position:absolute;right:7px;top:18px}.angle-arc i{position:absolute;left:50%;bottom:0;width:2px;height:48px;background:linear-gradient(#70ddd8,transparent);transform-origin:bottom}.load-mini{position:absolute;right:20%;bottom:27%;width:64px;height:82px}.load-mini i{position:absolute;left:5px;top:0;width:54px;height:54px;border-radius:50% 50% 44% 44%;background:radial-gradient(circle at 40% 30%,#fff6c8,#c3bd8c 55%,#46545b);border:3px solid #788990;box-shadow:0 0 18px rgba(245,198,80,.1)}.load-mini b{position:absolute;left:20px;top:53px;width:26px;height:22px;background:repeating-linear-gradient(#69757b 0 4px,#929ca0 4px 7px);border-radius:0 0 6px 6px}.preview-floor{position:absolute;left:13%;right:12%;bottom:12%;height:10%;border-radius:50%;background:rgba(0,0,0,.2);filter:blur(10px)}.sunbeam{clip-path:polygon(65% 0,100% 0,71% 100%,0 100%);background:linear-gradient(110deg,rgba(248,219,120,0),rgba(248,219,120,.22),rgba(248,219,120,0));filter:blur(1px)}.control{background:linear-gradient(145deg,rgba(13,40,57,.64),rgba(8,25,38,.58));border-color:rgba(159,202,226,.12)}.control-head b{font-size:11px}.value{font-family:Consolas,monospace;color:#75ded9}.seg button{border-radius:9px;font-size:10px}.seg button.active{background:rgba(74,206,199,.13);border-color:rgba(99,226,220,.3);color:#86ebe7}.range{accent-color:#62dcd6}
/* Wiring */
.wiring-area{background:linear-gradient(#0b2435 0 60%,#202e35 60%);border:1px solid rgba(159,202,226,.12);box-shadow:var(--shadow);isolation:isolate}.wiring-area:before{content:"";position:absolute;inset:0 0 40%;opacity:.05;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);background-size:48px 48px}.device{filter:drop-shadow(0 16px 12px rgba(0,0,0,.25))}.terminal{border-width:3px;box-shadow:0 0 0 6px rgba(255,255,255,.015),0 10px 18px rgba(0,0,0,.22)}.terminal.goodhint{animation:terminalPulse 1.4s ease-in-out infinite}@keyframes terminalPulse{50%{box-shadow:0 0 0 8px rgba(99,226,220,.08),0 0 20px rgba(99,226,220,.16)}}.cable-tray{background:linear-gradient(145deg,rgba(5,17,27,.88),rgba(11,32,45,.88));border-color:rgba(159,202,226,.14);box-shadow:0 12px 25px rgba(0,0,0,.3)}.plug{display:flex;align-items:center;gap:8px;border-radius:10px;font-size:11px;font-weight:700}.cable-swatch{width:13px;height:13px;border-radius:50%;background:#e04b55;box-shadow:inset 0 0 0 3px rgba(0,0,0,.25)}.plug.black .cable-swatch{background:#171d21;border:1px solid #52606a}.plug.connected{opacity:.5}.plug.dragging{box-shadow:0 18px 34px rgba(0,0,0,.35);transform:scale(1.03)}
/* Meter hero */
.meter-stage{background:radial-gradient(circle at 45% 50%,rgba(41,116,139,.13),transparent 34%),linear-gradient(145deg,rgba(8,27,41,.92),rgba(4,16,25,.92));border-color:rgba(159,202,226,.13)}.meter-stage:before{content:"DIGITAL MEASUREMENT STATION";position:absolute;left:18px;top:16px;font-size:8px;letter-spacing:1.4px;color:#55778b}.meter-big{box-shadow:0 32px 55px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.06);background:linear-gradient(145deg,#353d42,#0e1417)}.meter-big:before{content:"SOLARMETER · TRAINING METER";position:absolute;top:86px;left:18px;right:18px;text-align:center;font-size:6px;letter-spacing:.7px;color:#7d888e}.meter-big .display{background:linear-gradient(#b7d39d,#a6c58d);box-shadow:inset 0 0 0 4px #1c2421,0 6px 12px rgba(0,0,0,.2);text-shadow:0 1px 0 rgba(255,255,255,.25)}.mode-pick{box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.mode-pick.active{box-shadow:0 0 0 2px rgba(99,226,220,.09),0 8px 18px rgba(0,0,0,.2)}
/* Analysis / dashboard */
.metric{background:linear-gradient(145deg,rgba(15,46,64,.72),rgba(8,27,40,.72));border-color:rgba(159,202,226,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.metric small{letter-spacing:1.2px;color:#6f91a3}.metric strong{font-family:Consolas,"Segoe UI",monospace}.formula{background:linear-gradient(145deg,rgba(6,22,34,.82),rgba(11,36,50,.72));border:1px solid rgba(99,226,220,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.formula.flash{animation:formulaFlash .7s ease}@keyframes formulaFlash{50%{border-color:rgba(245,198,80,.5);box-shadow:0 0 30px rgba(245,198,80,.08),inset 0 1px 0 rgba(255,255,255,.03)}}.table-wrap{border:1px solid rgba(159,202,226,.1);border-radius:12px;overflow:auto;background:rgba(5,17,27,.38)}table th{font-size:8px;letter-spacing:.7px;color:#6dd7d2;background:rgba(15,44,60,.78)}table td{font-size:10px}.chart{border:1px solid rgba(159,202,226,.1);border-radius:13px;background:linear-gradient(180deg,rgba(14,39,54,.38),rgba(4,16,25,.4));padding:18px 15px 10px}.bar{background:linear-gradient(180deg,#61dbd4,#2d8fab);box-shadow:0 0 20px rgba(72,196,205,.12);border-radius:6px 6px 2px 2px}.bar:hover{filter:brightness(1.1)}
/* Quiz / closing */
.quiz-card{max-width:800px;background:linear-gradient(155deg,rgba(13,39,58,.92),rgba(6,20,31,.9))}.answer{border-radius:12px;background:linear-gradient(145deg,rgba(15,43,60,.72),rgba(7,26,39,.72))}.answer:hover{transform:translateX(3px)}.answer.correct{border-color:rgba(98,215,156,.48);background:rgba(34,105,75,.2)}.answer.wrong{border-color:rgba(233,173,85,.42);background:rgba(110,72,26,.2)}.score-ring{box-shadow:0 20px 40px rgba(0,0,0,.28)}.textarea,.select{background:linear-gradient(145deg,#071a29,#0a2437);border-color:rgba(159,202,226,.14)}.closing-lab{height:100%;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 50% 25%,rgba(53,149,177,.11),transparent 38%),linear-gradient(145deg,rgba(5,16,25,.45),rgba(8,25,37,.35));border-radius:22px;overflow:hidden}.closing-lab:before{content:"";position:absolute;inset:0;opacity:.05;background-image:linear-gradient(rgba(255,255,255,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.4) 1px,transparent 1px);background-size:48px 48px}.closing-glow{position:absolute;width:360px;height:360px;border-radius:50%;background:#2a8da8;filter:blur(80px);opacity:.08}.closing-card{max-width:900px;width:calc(100% - 80px);text-align:center;padding:34px;position:relative}.closing-grid{gap:12px}
.info-block{background:linear-gradient(145deg,rgba(14,43,60,.5),rgba(7,25,38,.46));border-color:rgba(159,202,226,.11);border-radius:12px}.info-block.k3{background:linear-gradient(145deg,rgba(87,61,23,.24),rgba(31,35,32,.35));border-color:rgba(233,173,85,.16)}.status-row{border-bottom-color:rgba(159,202,226,.08)}.status-row b{font-size:11px;color:#dbeaf0}.progressbar{height:6px;background:#142f40}.progressbar i{background:linear-gradient(90deg,#279eb4,#62d7c9);box-shadow:0 0 10px rgba(69,203,196,.16)}.toast{top:86px;right:28px;border-radius:12px;background:linear-gradient(145deg,#12364d,#0a2738);border-color:rgba(99,226,220,.22);box-shadow:0 18px 50px rgba(0,0,0,.36);font-size:12px}.modal-wrap{background:rgba(2,8,13,.78);backdrop-filter:blur(10px)}.modal{border-radius:20px;background:linear-gradient(155deg,#0e2b40,#061924);border-color:rgba(159,202,226,.16);box-shadow:0 40px 110px rgba(0,0,0,.58)}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   B2 — CINEMATIC OPENING EXPERIENCE
   Scene 01 Beranda + Scene 02 Studi Kasus
   ========================================================= */
.scene.fadeout-next{display:block;animation:b2ExitNext .26s cubic-bezier(.4,0,.6,1) forwards}.scene.fadeout-back{display:block;animation:b2ExitBack .26s cubic-bezier(.4,0,.6,1) forwards}.scene.enter-next{animation:b2EnterNext .42s cubic-bezier(.2,.8,.2,1) forwards}.scene.enter-back{animation:b2EnterBack .42s cubic-bezier(.2,.8,.2,1) forwards}@keyframes b2ExitNext{to{opacity:0;transform:translateX(-24px) scale(.992)}}@keyframes b2ExitBack{to{opacity:0;transform:translateX(24px) scale(.992)}}@keyframes b2EnterNext{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}@keyframes b2EnterBack{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
.scene-home{isolation:isolate}.cinematic-hero{position:relative}.hero-short{max-width:620px;font-size:14px;line-height:1.55}.cinematic-curtain{position:absolute;inset:0;background:#020911;z-index:80;pointer-events:none;opacity:0}.scene-home.intro-active .cinematic-curtain{animation:b2Curtain .62s ease-out forwards}.scene-home.intro-active .intro-seq{opacity:0}.scene-home.intro-active .seq-lab{animation:b2LabReveal .58s .22s cubic-bezier(.2,.8,.2,1) forwards}.scene-home.intro-active .seq-1{animation:b2Rise .36s .72s forwards}.scene-home.intro-active .seq-2{animation:b2Title .44s .88s cubic-bezier(.2,.8,.2,1) forwards}.scene-home.intro-active .seq-3{animation:b2Rise .36s 1.05s forwards}.scene-home.intro-active .seq-4{animation:b2Rise .36s 1.18s forwards}.scene-home.intro-active .seq-5{animation:b2Rise .36s 1.34s forwards}.scene-home.intro-active .seq-6{animation:b2Rise .42s 1.52s forwards}.scene-home.intro-active .seq-7{animation:b2Rise .35s 1.78s forwards}.scene-home.intro-active .hero-actions,.scene-home.intro-active .hero-meta{pointer-events:none}.scene-home.intro-complete .intro-seq{opacity:1}.scene-home.intro-complete .hero-actions,.scene-home.intro-complete .hero-meta{pointer-events:auto}@keyframes b2Curtain{0%{opacity:1}100%{opacity:0}}@keyframes b2Rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes b2Title{from{opacity:0;transform:translateY(18px) scale(.985);filter:drop-shadow(0 0 0 transparent)}to{opacity:1;transform:none;filter:drop-shadow(0 0 12px rgba(245,198,80,.11))}}@keyframes b2LabReveal{from{opacity:0;transform:translateY(18px) scale(.985);filter:brightness(.75)}to{opacity:1;transform:none;filter:brightness(1)}}
.intro-lab{perspective:900px}.intro-lab .window-light{position:absolute;inset:-12%;background:linear-gradient(125deg,rgba(255,244,190,.18),transparent 48%);animation:b2WindowLight 7s ease-in-out infinite}.meter-led{position:absolute;width:5px;height:5px;border-radius:50%;background:#5fe1a0;right:12px;top:61px;box-shadow:0 0 8px rgba(95,225,160,.7);animation:b2Led 2.8s ease-in-out infinite}.meter-idle{animation:b2MeterIdle 4.5s ease-in-out infinite}.panel-tag{position:absolute;right:5px;bottom:4px;font:700 6px Consolas,monospace;letter-spacing:.8px;color:rgba(220,244,251,.72)}.lab-depth-label{position:absolute;left:5%;bottom:3%;display:flex;flex-direction:column;gap:1px;z-index:8}.lab-depth-label b{font-size:7px;letter-spacing:1.4px;color:#80d9d6}.lab-depth-label small{font-size:6px;color:#6d8798}.hero .sensor-mini{animation:b2SensorFloat 5.5s ease-in-out infinite}@keyframes b2WindowLight{50%{opacity:.58;transform:translateX(-4px)}}@keyframes b2Led{50%{opacity:.34}}@keyframes b2MeterIdle{45%,55%{filter:brightness(1.07)}}@keyframes b2SensorFloat{50%{transform:translateY(-2px)}}
.scene-home .nav-card{position:relative;overflow:hidden}.scene-home .nav-card:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.045),transparent 68%);transform:translateX(-120%);transition:transform .52s}.scene-home .nav-card:hover:before{transform:translateX(120%)}.scene-home .nav-card:hover{transform:translateX(5px) translateY(-1px) scale(1.018)}.scene-home .nav-card:active{transform:translateX(2px) scale(.99)}
/* Study case cinematic */
.case-grid{grid-template-columns:1.28fr .72fr}.case-cinematic{background:linear-gradient(#72bad5 0 48%,#a9c27b 48% 66%,#5f7851 66%);box-shadow:0 36px 75px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.12)}.case-vignette{position:absolute;inset:0;background:radial-gradient(circle at 27% 36%,transparent 0 26%,rgba(13,28,34,.02) 48%,rgba(6,20,28,.24) 100%);z-index:18;pointer-events:none}.school-building b{position:absolute;left:8%;bottom:8%;font-size:7px;letter-spacing:1px;color:#64767f}.school-fence{position:absolute;right:0;left:44%;bottom:21%;height:30px;background:repeating-linear-gradient(90deg,rgba(65,85,91,.55) 0 3px,transparent 3px 25px);border-top:3px solid rgba(65,85,91,.5);z-index:4}.case-tree{position:absolute;width:44px;height:80px;bottom:19%;z-index:5}.case-tree:before{content:"";position:absolute;left:19px;bottom:0;width:7px;height:45px;background:#66503d}.case-tree:after{content:"";position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;background:#5b8a55;box-shadow:12px 8px 0 #69955c,-8px 11px 0 #4f7d4d}.case-tree.t1{right:36%}.case-tree.t2{right:7%;transform:scale(.72);opacity:.8}.pole .lamp-arm{position:absolute;left:5px;top:3px;width:72px;height:7px;background:#435660;transform:rotate(-9deg);transform-origin:left center;border-radius:4px}.light-falloff{position:absolute;width:145px;height:110px;left:18%;top:10%;background:radial-gradient(circle,rgba(245,204,99,.15),transparent 68%);filter:blur(8px);animation:b2LightDip 8s ease-in-out infinite}.case-lamp i{position:absolute;inset:-12px -18px;border-radius:50%;background:radial-gradient(circle,rgba(255,231,163,.22),transparent 70%);animation:b2LampDim 2.8s ease-in-out infinite}.case-observe-tag{position:absolute;left:34%;bottom:48%;z-index:23;display:flex;align-items:center;gap:8px;background:rgba(5,24,34,.82);border:1px solid rgba(255,255,255,.12);padding:8px 11px;border-radius:11px;box-shadow:0 12px 30px rgba(0,0,0,.22)}.case-observe-tag small{display:block;font-size:7px;letter-spacing:1.3px;color:#d6a854}.case-observe-tag b{display:block;font-size:10px;color:#e6eef2}.case-scene-caption{position:absolute;left:4%;bottom:4%;z-index:24;display:flex;gap:9px;align-items:center;color:#e5eff3}.case-scene-caption>span{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:rgba(5,23,34,.72);border:1px solid rgba(255,255,255,.11);font:800 9px Consolas,monospace}.case-scene-caption small{display:block;font-size:6px;letter-spacing:1.1px;color:#b9ccd6}.case-scene-caption b{font-size:8px}@keyframes b2LightDip{50%{opacity:.45}}@keyframes b2LampDim{50%{opacity:.52;transform:scale(.94)}}
.case-intro-active .case-cinematic{opacity:0;animation:b2CaseVisual .5s .12s forwards}.case-intro-active .cloud-main{animation:b2CloudCover 1.2s .55s cubic-bezier(.2,.7,.3,1) both}.case-intro-active .light-falloff{opacity:0;animation:b2LightAppear .45s 1.02s forwards}.case-intro-active .case-lamp{opacity:.35;animation:b2LampReveal .46s 1.15s forwards}.case-intro-active .case-observe-tag{opacity:0;transform:scale(.95);animation:b2Rise .35s 1.48s forwards}.case-intro-active .case-seq{opacity:0}.case-intro-active .cseq-1{animation:b2Rise .32s 1.67s forwards}.case-intro-active .cseq-2{animation:b2Rise .32s 1.82s forwards}.case-intro-active .cseq-3{animation:b2Rise .32s 1.95s forwards}.case-intro-active .cseq-4{animation:b2Rise .36s 2.10s forwards}.case-intro-active .cseq-5{animation:b2Rise .32s 2.22s forwards}.case-intro-active .choice-grid{pointer-events:none}.case-intro-complete .case-seq{opacity:1}.case-intro-complete .choice-grid{pointer-events:auto}@keyframes b2CaseVisual{from{opacity:0;transform:translateX(-14px);filter:brightness(1.12)}to{opacity:1;transform:none;filter:brightness(.96)}}@keyframes b2CloudCover{from{transform:translateX(70px);opacity:.35}to{transform:translateX(-24px);opacity:.94}}@keyframes b2LightAppear{to{opacity:.6}}@keyframes b2LampReveal{to{opacity:1;filter:brightness(.82)}}
.case-panel-ui{padding:20px}.case-problem{font-size:16px;line-height:1.45;font-weight:800;color:#edf7fa;margin:8px 0}.case-copy .muted{font-size:12px;line-height:1.5}.case-panel-ui .choice-grid{gap:7px}.case-panel-ui .choice{min-height:46px;padding:9px 11px;font-size:11px}.choice.locked{cursor:default}.choice.locked:hover{transform:none}.hypothesis-actions{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hypothesis-actions small{font-size:9px;color:#8ea7b7;max-width:260px;line-height:1.35}.confirmed-hyp{border-left-color:#5ce3aa!important;background:linear-gradient(145deg,rgba(30,93,70,.12),rgba(10,33,45,.58))}.confirmed-hyp .compact{margin-top:8px;padding:8px 11px;font-size:10px;align-self:flex-start}.help-modal{max-width:560px;display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start}.help-icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:rgba(80,205,202,.1);border:1px solid rgba(80,205,202,.2);color:#75ded9}.help-icon .ui-svg{width:28px;height:28px}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.scene-home.intro-active .intro-seq,.case-intro-active .case-cinematic,.case-intro-active .case-seq{opacity:1!important;animation:none!important;transform:none!important}.scene-home.intro-active .hero-actions,.scene-home.intro-active .hero-meta,.case-intro-active .choice-grid{pointer-events:auto}.cinematic-curtain{display:none}.cloud,.sun-rays,.solar-glint,.ambient-light,.meter-led,.light-falloff,.case-lamp i{animation:none!important}}


/* =========================================================
   B3 — PROFESSIONAL EQUIPMENT INSPECTION & K3
   ========================================================= */
.b3-tools{padding-bottom:70px}.equipment-layout{height:100%;display:grid;grid-template-columns:minmax(0,1fr) 316px;gap:16px}.equipment-station{padding:18px 18px 16px;overflow:hidden;min-width:0}.station-head{height:84px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.station-head .h2{font-size:28px;margin:2px 0 5px}.station-head .muted{font-size:11px;line-height:1.4;max-width:680px;margin:0}.station-status{min-width:154px;display:flex;gap:8px;align-items:center;padding:9px 11px;border-radius:11px;background:rgba(8,28,41,.64);border:1px solid rgba(103,213,211,.12)}.station-status small{display:block;font-size:6px;letter-spacing:1.2px;color:#6d97aa}.station-status b{display:block;font-size:8px;margin-top:2px;color:#b8d7dd}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#5fd9d4;box-shadow:0 0 0 0 rgba(95,217,212,.35);animation:b3Pulse 1.8s infinite}@keyframes b3Pulse{55%{box-shadow:0 0 0 7px rgba(95,217,212,0)}}
.inspection-workbench{height:calc(100% - 84px);min-height:360px;border-radius:15px;position:relative;overflow:hidden;background:linear-gradient(#0c2839 0 18%,#0a2130 18% 69%,#6b5b4e 69% 73%,#26353d 73%);border:1px solid rgba(159,202,226,.11);box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 20px 45px rgba(0,0,0,.25)}.inspection-workbench:before{content:"";position:absolute;inset:0 0 31%;opacity:.06;background-image:linear-gradient(rgba(192,229,242,.45) 1px,transparent 1px),linear-gradient(90deg,rgba(192,229,242,.45) 1px,transparent 1px);background-size:46px 46px}.inspection-workbench:after{content:"";position:absolute;left:4%;right:4%;bottom:21%;height:9%;border-radius:50%;background:rgba(0,0,0,.22);filter:blur(12px)}.bench-backline{position:absolute;left:3%;right:3%;top:18%;height:1px;background:linear-gradient(90deg,transparent,rgba(108,204,211,.22),transparent)}.zone-labels{position:absolute;left:3%;right:3%;top:7%;display:grid;grid-template-columns:repeat(5,1fr);font-size:6px;letter-spacing:1px;color:#547589;text-align:center}.bench-front{position:absolute;left:3%;right:3%;bottom:3%;height:18%;border-radius:8px 8px 13px 13px;background:linear-gradient(#30414a,#15242c);border-top:2px solid rgba(255,255,255,.08);box-shadow:0 15px 25px rgba(0,0,0,.32)}.bench-front i{position:absolute;top:13px;width:5px;height:60%;background:#0c171d;border-left:1px solid rgba(255,255,255,.06)}.bench-front i:nth-child(1){left:10%}.bench-front i:nth-child(2){left:50%}.bench-front i:nth-child(3){right:10%}
.b3-tool-grid{position:absolute;left:2.5%;right:2.5%;top:17%;bottom:23%;z-index:4;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px}.b3-tool{min-height:0!important;padding:7px 6px!important;border-radius:11px!important;display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:3px!important;background:linear-gradient(145deg,rgba(13,42,57,.82),rgba(6,24,35,.85))!important;animation:b3ToolEnter .34s calc(var(--tool-i)*.045s) both}.b3-tool:before{inset:auto 13% 28px!important;height:9px!important}.b3-tool:hover{transform:translateY(-4px) scale(1.018)!important;z-index:7}.b3-tool .equip-visual{width:76px;height:58px;transform:scale(.92)}.b3-tool:hover .equip-visual{transform:translateY(-3px) scale(.98)!important}.b3-tool .tool-name{font-size:9px!important;line-height:1.1;text-align:center;max-width:100%;white-space:normal}.b3-tool small{font-size:5.5px!important;letter-spacing:.6px}.tool-zone{position:absolute;left:6px;top:5px;width:17px;height:17px;border-radius:5px;display:grid;place-items:center;background:rgba(69,175,185,.08);border:1px solid rgba(82,201,203,.12);font:800 6px Consolas;color:#68c8c7}.b3-tool.required:not(.inspected){border-bottom-color:rgba(245,198,80,.22)!important}.b3-tool.required:not(.inspected) .tool-zone{color:#ddb85d;border-color:rgba(245,198,80,.16);background:rgba(245,198,80,.06)}.tool-check{position:absolute;right:6px;top:5px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#23705b;border:1px solid rgba(116,236,181,.28);color:#bff7da;box-shadow:0 0 0 4px rgba(56,182,132,.05)}.tool-check .ui-svg{width:11px;height:11px}.b3-tool.inspected{background:linear-gradient(145deg,rgba(22,67,61,.74),rgba(7,31,38,.88))!important;border-color:rgba(92,213,160,.2)!important}.b3-tool.attention,.safety-hub.attention{animation:b3Attention .58s ease-in-out 2!important}@keyframes b3ToolEnter{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes b3Attention{50%{box-shadow:0 0 0 3px rgba(245,198,80,.24),0 0 28px rgba(245,198,80,.12);border-color:rgba(245,198,80,.5)!important}}
.b3-summary{padding:18px;overflow:auto}.b3-summary .inspection-count strong{font-size:34px}.summary-caption{display:flex;align-items:baseline;gap:6px;margin:6px 0 12px;color:#7794a5}.summary-caption span{font:800 12px Consolas;color:#70d9d3}.summary-caption small{font-size:8px}.safety-hub{width:100%;display:grid;grid-template-columns:56px 1fr 18px;gap:9px;align-items:center;text-align:left;border:1px solid rgba(103,220,174,.16);border-radius:13px;padding:9px;background:linear-gradient(135deg,rgba(31,92,72,.16),rgba(7,30,39,.66));color:#d8ebee;cursor:pointer;transition:.2s}.safety-hub:hover{transform:translateY(-2px);border-color:rgba(103,220,174,.34);background:linear-gradient(135deg,rgba(38,117,88,.2),rgba(8,37,45,.72))}.safety-hub.complete{border-color:rgba(94,217,159,.28)}.safety-hub-icon .equip-visual{width:48px;height:48px;transform:scale(.7)}.safety-hub small{display:block;font-size:6px;letter-spacing:1.1px;color:#6db695}.safety-hub b{display:block;font-size:9px;margin:2px 0;color:#caeee0}.safety-hub em{display:block;font-style:normal;font-size:6px;color:#71909f}.safety-hub>.ui-svg{width:13px;color:#65caa2}.required-panel{margin-top:12px;padding:11px;border-radius:12px;background:rgba(5,20,30,.42);border:1px solid rgba(159,202,226,.08)}.required-title{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:7px}.required-title span{font-size:7px;letter-spacing:1.1px;color:#a3b9c4;font-weight:800}.required-title small{font-size:6px;color:#657e8d}.req-row{height:22px;display:grid;grid-template-columns:20px 1fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.045);color:#6e899a}.req-row:last-child{border-bottom:0}.req-row span{width:14px;height:14px;border-radius:50%;border:1px solid #385769;display:grid;place-items:center}.req-row span .ui-svg{width:9px;height:9px}.req-row b{font-size:7.5px;font-weight:650}.req-row.done{color:#b7d9c8}.req-row.done span{background:#1e6a55;border-color:#3c9d78;color:#bff8db}.hypothesis-mini{margin-top:10px!important;padding:9px 10px!important;font-size:8px}.hypothesis-mini strong{font-size:6px!important}.b3-summary .inspection-legend{font-size:7px;gap:8px;padding-top:9px;margin-top:4px}.legend-dot.required{background:#d8ad4e}.btn.guided{background:linear-gradient(145deg,rgba(44,57,63,.92),rgba(24,39,48,.92));color:#9fb1ba;border:1px solid rgba(245,198,80,.15);box-shadow:none}
/* B3 equipment silhouettes */
.ev-panel-assembly{position:relative;width:88px;height:66px;transform-origin:50% 72%;transition:transform .42s cubic-bezier(.2,.8,.2,1)}.ev-panel-assembly .ev-panel{position:absolute;left:4px;top:2px}.ev-panel-assembly .ev-stand{left:47px;top:50px}.equip-stand .ev-stand-only{position:relative;width:70px;height:61px}.ev-stand-only .pivot{position:absolute;left:31px;top:17px;width:12px;height:12px;border-radius:50%;background:#859ba5;border:3px solid #506871;box-shadow:0 4px 8px rgba(0,0,0,.25)}.ev-stand-only .arm{position:absolute;left:34px;top:3px;width:7px;height:43px;border-radius:4px;background:linear-gradient(90deg,#5f7782,#9babb2,#526b76);transform:rotate(24deg);transform-origin:50% 20px}.ev-stand-only .base{position:absolute;left:11px;bottom:3px;width:50px;height:7px;border-radius:50%;background:#526a74;box-shadow:0 7px 8px rgba(0,0,0,.25)}.ev-stand-only .angle-mark{position:absolute;right:0;top:8px;font:700 7px Consolas;color:#76d4d1;font-style:normal}.ev-meter-brand{position:absolute;left:0;right:0;top:25px;text-align:center;font-size:4px;letter-spacing:.6px;color:#89969b}.ev-jack-labels{position:absolute;left:6px;right:6px;bottom:-4px;display:flex;justify-content:space-around;font:700 3.5px Consolas;color:#7d8a90}.ev-probe{width:82px;height:50px;position:relative;transform:rotate(-12deg)}.ev-probe .metal{position:absolute;right:2px;top:18px;width:28px;height:3px;background:linear-gradient(90deg,#838f94,#e0e7e9);border-radius:0 3px 3px 0}.ev-probe .handle{position:absolute;left:23px;top:12px;width:39px;height:14px;border-radius:9px 4px 4px 9px;background:linear-gradient(#2f3538,#171c1f);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.ev-probe.red .handle{background:linear-gradient(#d34a53,#8e2830)}.ev-probe .guard{position:absolute;left:19px;top:10px;width:7px;height:18px;border-radius:3px;background:#30383b}.ev-probe.red .guard{background:#b53b44}.ev-probe .cord{position:absolute;left:0;top:18px;width:27px;height:4px;border-radius:4px;background:#161d20;font-style:normal}.ev-probe.red .cord{background:#b8313a}.ev-lead .plug-head{position:absolute;left:3px;top:24px;width:12px;height:11px;border-radius:3px;background:#20272a}.ev-lead.red .plug-head{background:#a72d35}.ev-lamp .lamp-halo{position:absolute;left:-2px;top:-10px;width:62px;height:62px;border-radius:50%;background:radial-gradient(circle,rgba(248,215,118,.16),transparent 67%);filter:blur(3px);opacity:.4;transition:.35s}.ev-sensor{position:relative}.sensor-eye{position:absolute;top:-7px;left:17px;width:9px;height:7px;border-radius:5px 5px 1px 1px;background:#eef4ee;border:2px solid #39454a}
/* B3 inspection modal */
.b3-tool-modal{max-width:900px;width:min(900px,calc(100vw - 70px));padding:18px}.b3-modal-grid{grid-template-columns:340px minmax(0,1fr)!important;gap:18px}.b3-tool-focus{height:430px!important;border-radius:16px}.focus-grid{position:absolute;inset:0;opacity:.08;background-image:linear-gradient(rgba(137,211,219,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(137,211,219,.5) 1px,transparent 1px);background-size:32px 32px}.focus-pedestal{position:absolute;left:18%;right:18%;bottom:11%;height:13%;border-radius:50%;background:radial-gradient(ellipse,rgba(79,160,169,.22),rgba(0,0,0,.28) 68%,transparent 71%);filter:blur(1px)}.focus-equip{position:absolute;inset:0;display:grid;place-items:center;z-index:4}.focus-equip .equip-visual.large{width:260px;height:250px;transform:scale(1.25);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.focus-equip.angle-demo .ev-panel-assembly,.focus-equip.angle-demo .ev-stand-only .arm{transform:rotate(var(--demo-angle,0deg));transition:transform .45s cubic-bezier(.2,.8,.2,1)}.focus-id{position:absolute;left:14px;bottom:12px;z-index:8;display:flex;flex-direction:column}.focus-id span{font-size:6px;letter-spacing:1.2px;color:#5ec9c5}.focus-id b{font-size:8px;color:#b8d4db;margin-top:2px}.b3-tool-focus .inspection-orbit{inset:72px;opacity:.55}.tool-info-pane{display:flex;flex-direction:column;min-width:0;max-height:430px;overflow:auto;padding-right:4px}.tool-info-pane .h2{font-size:29px;margin:3px 0 9px}.tool-info-pane .info-block{padding:11px;margin:5px 0;font-size:10px;line-height:1.45}.tool-info-pane .info-block strong{font-size:7px;letter-spacing:1.1px}.inspection-state{align-self:flex-start;height:24px;border-radius:999px;padding:0 8px;display:flex;gap:5px;align-items:center;background:rgba(54,136,153,.09);border:1px solid rgba(83,190,196,.13);font-size:6px;letter-spacing:.9px;color:#7ad7d2}.inspection-state.done{color:#90e4ba;background:rgba(44,128,88,.1);border-color:rgba(91,216,150,.16)}.inspection-state .ui-svg{width:10px}.inspection-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:auto;padding-top:9px}.inspection-actions .compact,.demo-block .compact{min-height:34px;padding:7px 10px;font-size:8px}.demo-block{margin:7px 0;padding:9px 10px;border-radius:11px;border:1px solid rgba(104,209,210,.09);background:rgba(7,25,36,.42)}.demo-block>small{display:block;font-size:6px;letter-spacing:1.1px;color:#6ca5b0;margin-bottom:7px}.demo-seg{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.demo-seg button{height:31px;border-radius:8px;border:1px solid rgba(132,194,211,.12);background:rgba(17,48,64,.7);color:#a9c3cd;font:700 8px Consolas;cursor:pointer;transition:.15s}.demo-seg button:hover,.demo-seg button.active{border-color:rgba(87,213,205,.35);color:#74dcd5;background:rgba(42,120,125,.13)}.meter-hotspots{position:absolute;inset:0;z-index:10;pointer-events:none}.meter-hotspots button{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;border:1px solid rgba(245,198,80,.45);background:rgba(245,198,80,.08);box-shadow:0 0 0 5px rgba(245,198,80,.04);color:#f4cf6a;cursor:pointer;pointer-events:auto}.meter-hotspots button:after{content:"";position:absolute;inset:-5px;border:1px dashed rgba(245,198,80,.24);border-radius:50%;animation:b3Hotspot 2s infinite}.meter-hotspots button span{position:absolute;left:50%;top:24px;transform:translateX(-50%);font-size:5px;letter-spacing:.6px;white-space:nowrap;background:rgba(5,20,28,.82);padding:3px 4px;border-radius:4px;color:#d7c27c}@keyframes b3Hotspot{50%{transform:scale(1.12);opacity:.5}}.ev-dial.demo-knob{animation:b3KnobDemo 1.05s ease-in-out}@keyframes b3KnobDemo{0%{transform:rotate(0)}32%{transform:rotate(-55deg)}66%{transform:rotate(55deg)}100%{transform:rotate(0)}}.b3-tool-focus.demo-dim .ev-lamp i{filter:brightness(.65);box-shadow:0 0 12px rgba(245,205,101,.14)}.b3-tool-focus.demo-normal .ev-lamp i{filter:brightness(1.02);box-shadow:0 0 26px rgba(245,205,101,.32)}.b3-tool-focus.demo-bright .ev-lamp i{filter:brightness(1.3);box-shadow:0 0 42px rgba(245,205,101,.48)}.b3-tool-focus.demo-bright .lamp-halo{opacity:1;transform:scale(1.3)}.ev-lead.demo-cable-snap{animation:b3CableSnap .9s cubic-bezier(.2,.8,.2,1)}@keyframes b3CableSnap{0%{transform:translateX(-18px) rotate(-3deg)}48%{transform:translateX(18px) rotate(2deg)}58%{transform:translateX(13px) rotate(-1deg)}72%{transform:translateX(18px)}100%{transform:none}}
/* B3 Safety Hub */
.safety-modal{max-width:880px;width:min(880px,calc(100vw - 70px));padding:21px}.safety-modal-head{display:grid;grid-template-columns:92px 1fr;gap:16px;align-items:center}.safety-emblem{height:86px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,rgba(35,111,85,.18),rgba(7,30,39,.45));border:1px solid rgba(94,217,159,.15)}.safety-emblem .equip-visual.large{width:80px;height:80px;transform:scale(.74)}.safety-modal-head .h2{font-size:30px;margin:3px 0 5px}.safety-modal-head .lead{font-size:11px;line-height:1.45;margin:0}.safety-modal-progress{display:flex;justify-content:space-between;margin:14px 0 8px;padding:8px 10px;border-radius:9px;background:rgba(5,22,31,.45);border:1px solid rgba(159,202,226,.07)}.safety-modal-progress span{font-size:6px;letter-spacing:1.1px;color:#6c8d9d}.safety-modal-progress b{font:800 9px Consolas;color:#79dcb2}.safety-card-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.safety-card{min-height:72px;display:grid;grid-template-columns:28px 1fr 22px;gap:8px;align-items:center;text-align:left;border-radius:11px;border:1px solid rgba(159,202,226,.09);background:linear-gradient(145deg,rgba(14,43,56,.68),rgba(6,26,35,.72));color:#d9e8eb;padding:9px;cursor:pointer;transition:.18s}.safety-card:hover{transform:translateY(-2px);border-color:rgba(98,215,156,.24)}.safety-card.visited{border-color:rgba(98,215,156,.2);background:linear-gradient(145deg,rgba(25,79,61,.22),rgba(6,31,36,.72))}.safety-number{font:800 8px Consolas;color:#6ba99a}.safety-copy b{display:block;font-size:8px;color:#cae5de}.safety-copy small{display:block;font-size:7px;line-height:1.35;color:#819ca5;margin-top:3px}.safety-state{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(91,195,164,.14);color:#6fc6a8}.safety-state .ui-svg{width:10px}.safety-foot{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:12px}.safety-note{max-width:450px;font-size:7px;line-height:1.4;color:#708a95}.safety-foot .btn{min-height:36px;padding:8px 11px;font-size:9px}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b3-tool,.pulse-dot,.meter-hotspots button:after,.inspection-orbit{animation:none!important}.b3-tool:hover{transform:none!important}.ev-dial.demo-knob,.ev-lead.demo-cable-snap{animation:none!important}}

.modal-wrap.inspection-open{background:rgba(2,8,13,.32);backdrop-filter:blur(8px) brightness(.78)}


/* =========================================================
   B4 — PROFESSIONAL EXPERIMENT VARIABLE SYSTEM
   Scene 04 · Solar Test Control Station
   ========================================================= */
.scene-vars{padding-bottom:62px;overflow:hidden}
.b4-head{height:72px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:1px 3px 9px}
.b4-head .h2{font-size:28px;margin:2px 0 2px}.b4-head p{margin:0;color:#8ea8b6;font-size:10px;line-height:1.35}
.b4-head-meta{display:flex;gap:7px;padding-top:5px}.b4-head-meta .pill{font-size:8px;padding:6px 8px;background:rgba(18,49,65,.68)}
.b4-grid{height:calc(100% - 72px);display:grid;grid-template-columns:305px minmax(410px,1fr) 286px;gap:13px;min-height:0}
.b4-control-panel,.b4-summary{padding:15px!important;min-height:0;overflow:hidden}
.b4-control-panel{display:flex;flex-direction:column;background:linear-gradient(155deg,rgba(12,35,49,.93),rgba(5,20,30,.9))}
.b4-hypothesis{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:start;padding:8px 9px;border:1px solid rgba(100,211,210,.11);border-radius:10px;background:rgba(38,105,109,.08);margin-bottom:8px}
.b4-hypothesis>span{width:23px;height:23px;border-radius:7px;display:grid;place-items:center;background:rgba(86,208,203,.08);color:#6ed9d4}.b4-hypothesis .ui-svg{width:13px}
.b4-hypothesis small,.b4-control-title small{display:block;font-size:6px;letter-spacing:1.1px;color:#6899a6}.b4-hypothesis b{display:block;color:#d9eeee;font-size:9px;margin:1px 0}.b4-hypothesis em{display:block;color:#76919c;font-size:6.5px;line-height:1.35;font-style:normal}
.b4-control-title{height:34px;display:flex;gap:8px;align-items:center;margin:1px 0 7px}.b4-control-title>span{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;color:#6edbd6;background:rgba(69,181,181,.08);border:1px solid rgba(92,203,201,.1)}.b4-control-title .ui-svg{width:15px}.b4-control-title b{display:block;font-size:10px;color:#dcebee;margin-top:1px}
.b4-controls{display:grid;grid-template-rows:auto auto auto 1fr;gap:7px;min-height:0}
.b4-control{position:relative;padding:9px 10px;border-radius:11px;border:1px solid rgba(145,197,216,.09);background:linear-gradient(145deg,rgba(13,42,56,.64),rgba(6,25,35,.65));transition:border-color .2s,box-shadow .2s,transform .2s}
.b4-control:hover{border-color:rgba(101,210,208,.18)}.b4-control.guide{border-color:rgba(245,198,80,.26);box-shadow:0 0 0 1px rgba(245,198,80,.03),0 0 24px rgba(245,198,80,.05)}
.b4-control.guide:before{content:"";position:absolute;inset:-1px;border-radius:11px;border:1px solid rgba(245,198,80,.15);animation:b4GuidePulse 1.9s ease-in-out infinite;pointer-events:none}
@keyframes b4GuidePulse{50%{box-shadow:0 0 18px rgba(245,198,80,.12);opacity:.55}}
.b4-control-head{display:grid;grid-template-columns:29px 1fr auto;gap:8px;align-items:center;margin-bottom:7px}.b4-control-head>div small{display:block;font-size:6px;letter-spacing:.9px;color:#7696a1}.b4-control-head>div b{display:block;margin-top:1px;font:800 10px Consolas;color:#77dfd9}.b4-control-head em{font-style:normal;font-size:6px;letter-spacing:.8px;color:#7995a0;border:1px solid rgba(144,194,210,.08);padding:4px 5px;border-radius:6px;background:rgba(255,255,255,.018)}
.b4-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;border:1px solid rgba(127,197,209,.1);background:rgba(15,56,67,.55);color:#70d9d3}.b4-icon.sun{color:#f2c760;background:rgba(245,198,80,.06)}.b4-icon .ui-svg{width:14px;height:14px}
.b4-range{appearance:none;-webkit-appearance:none;width:100%;height:5px;border-radius:999px;background:linear-gradient(90deg,#235f70,#5ecfca);outline:none;cursor:pointer;touch-action:none}
.b4-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#e8f4f4;border:3px solid #43aaa8;box-shadow:0 3px 10px rgba(0,0,0,.35),0 0 0 3px rgba(81,201,198,.08);transition:.14s}
.b4-range::-webkit-slider-thumb:hover{transform:scale(1.12);box-shadow:0 4px 12px rgba(0,0,0,.4),0 0 0 5px rgba(81,201,198,.09)}
.b4-range::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#e8f4f4;border:3px solid #43aaa8;box-shadow:0 3px 10px rgba(0,0,0,.35)}
.b4-range-scale{display:flex;justify-content:space-between;margin-top:4px;font:600 5.5px Consolas;color:#647f89}
.b4-angle-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:6px}.b4-angle-presets button{height:23px;border-radius:6px;border:1px solid rgba(135,191,205,.09);background:rgba(15,48,61,.56);color:#819fa8;font:700 7px Consolas;cursor:pointer;transition:.15s}.b4-angle-presets button:hover,.b4-angle-presets button.active{border-color:rgba(93,216,208,.26);background:rgba(53,140,139,.12);color:#7fe0da;transform:translateY(-1px)}
.b4-time-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.b4-time-seg button{height:39px;border-radius:8px;border:1px solid rgba(133,193,208,.09);background:rgba(14,45,59,.58);color:#8ca9b1;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:.17s}.b4-time-seg button b{font:800 10px Consolas}.b4-time-seg button span{font-size:5.5px;margin-top:1px}.b4-time-seg button:hover,.b4-time-seg button.active{border-color:rgba(89,217,209,.28);background:rgba(45,130,131,.13);color:#7fe0da;transform:translateY(-1px)}
.b4-control.load-control{min-height:0}.b4-load-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.b4-load-card{min-width:0;height:58px;border-radius:8px;border:1px solid rgba(135,191,205,.09);background:rgba(13,43,56,.6);color:#91acb4;display:grid;grid-template-columns:24px 1fr;gap:5px;align-items:center;text-align:left;padding:5px;cursor:pointer;position:relative;transition:.17s}
.b4-load-card>span:nth-child(2){min-width:0}.b4-load-card b{display:block;font-size:7px;color:#afc5ca}.b4-load-card small{display:block;font-size:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#69838c;margin-top:1px}.b4-load-card>.ui-svg{position:absolute;right:4px;top:4px;width:9px;color:#72ddaa}
.b4-load-card:hover,.b4-load-card.active{border-color:rgba(92,214,207,.27);background:rgba(47,130,130,.13);transform:translateY(-2px)}.b4-load-card.active b{color:#7fe1db}
.load-symbol{width:23px;height:31px;border-radius:7px;display:grid;place-items:center;background:rgba(237,205,112,.05);border:1px solid rgba(237,205,112,.09);color:#d9be71}.load-symbol .ui-svg{width:12px}.load-symbol.light{transform:scale(.88)}.load-symbol.heavy{transform:scale(1.08)}
[data-b4-tip]{position:relative}.b4-control[data-b4-tip]:hover:after{content:attr(data-b4-tip);position:absolute;left:8px;bottom:calc(100% + 5px);z-index:30;max-width:215px;padding:5px 7px;border-radius:6px;background:rgba(3,15,23,.95);border:1px solid rgba(123,192,206,.12);box-shadow:0 8px 24px rgba(0,0,0,.28);font-size:6px;line-height:1.35;color:#a8bdc4;pointer-events:none}
.b4-preview{--b4-light:.5;min-height:0!important;height:100%!important;background:linear-gradient(180deg,rgba(10,37,52,.98) 0 57%,rgba(18,40,47,.98) 57%);transition:filter .25s,box-shadow .35s;box-shadow:0 28px 60px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.03)}
.b4-preview:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 18%,rgba(245,206,105,calc(.03 + var(--b4-light)*.13)),transparent 32%),linear-gradient(90deg,rgba(58,139,162,.025),transparent 45%);pointer-events:none}
.b4-preview.locking{box-shadow:0 0 0 1px rgba(89,220,207,.24),0 0 45px rgba(62,199,190,.10),0 28px 60px rgba(0,0,0,.35)}
.b4-preview-status{position:absolute;left:16px;top:48px;z-index:8;display:grid;grid-template-columns:8px auto;gap:1px 6px;align-items:center;padding:6px 8px;border-radius:8px;background:rgba(4,20,29,.56);border:1px solid rgba(127,190,204,.08);backdrop-filter:blur(8px)}.b4-preview-status .preview-dot{grid-row:1/3;width:7px;height:7px;border-radius:50%;background:#55d7b5;box-shadow:0 0 10px rgba(85,215,181,.35);animation:b4PreviewDot 2s infinite}.b4-preview-status b{font-size:6px;letter-spacing:.8px;color:#8dd8d1}.b4-preview-status small{font-size:5.5px;color:#657f89}
@keyframes b4PreviewDot{50%{opacity:.45;box-shadow:0 0 18px rgba(85,215,181,.45)}}
.b4-rays{position:absolute;right:7%;top:8%;width:310px;height:330px;clip-path:polygon(67% 0,100% 0,72% 100%,1% 100%);background:linear-gradient(112deg,transparent 16%,rgba(246,219,132,.16) 48%,transparent 78%);filter:blur(2px);transform-origin:top right;transition:opacity .28s,transform .35s;pointer-events:none}
.b4-wall-line{position:absolute;left:8%;right:8%;top:56%;height:1px;background:linear-gradient(90deg,transparent,rgba(113,176,192,.12),transparent)}
.b4-solar{left:22%!important;top:auto!important;bottom:26%!important;width:185px;height:112px;transform-origin:50% 115%!important;transition:transform .46s cubic-bezier(.2,.8,.2,1),filter .3s!important;z-index:5;box-shadow:0 22px 28px rgba(0,0,0,.32)}
.b4-panel-glint{position:absolute;inset:0;background:linear-gradient(112deg,transparent 34%,rgba(255,255,255,.18) 48%,transparent 60%);transform:translateX(-100%);animation:b4PanelGlint 6s ease-in-out infinite;pointer-events:none}@keyframes b4PanelGlint{55%,100%{transform:translateX(110%)}}
.b4-stand{position:absolute;left:31%;bottom:15.5%;width:78px;height:112px;z-index:3}.b4-stand i{position:absolute;left:35px;top:4px;width:8px;height:75px;border-radius:4px;background:linear-gradient(#8898a0,#435159);transform-origin:50% 82%;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.b4-stand i:after{content:"";position:absolute;left:-5px;top:55px;width:18px;height:18px;border-radius:50%;background:#50616a;border:3px solid #9aa7ac}.b4-stand b{position:absolute;left:8px;right:8px;bottom:0;height:10px;border-radius:8px 8px 3px 3px;background:linear-gradient(#6f7d83,#354149);box-shadow:0 8px 12px rgba(0,0,0,.25)}.b4-stand em{position:absolute;left:35px;top:68px;width:2px;height:37px;background:#596a71;transform:rotate(25deg);transform-origin:top}
.b4-preview .angle-arc{left:16%;bottom:12%;width:175px;height:68px}.b4-preview .angle-arc small{position:absolute;left:4px;bottom:-2px;font-size:5px;letter-spacing:.9px;color:#597e87}.b4-preview .angle-arc i{transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.b4-preview .load-mini{right:10%!important;bottom:24%!important;transform:scale(var(--load-scale,1));transform-origin:bottom center;transition:transform .32s}.b4-preview .load-mini span{position:absolute;left:50%;top:82px;transform:translateX(-50%);font-size:6px;letter-spacing:.7px;color:#8da9b0;white-space:nowrap}.b4-preview .load-mini[data-load*="Ringan"] i{filter:brightness(.86)}.b4-preview .load-mini[data-load*="Berat"] i{filter:brightness(1.06)}
.b4-meter-idle{position:absolute;right:30%;bottom:23%;width:86px;height:115px;border-radius:10px;background:linear-gradient(145deg,#333a3e,#171d20);border:3px solid #4c565c;box-shadow:0 18px 22px rgba(0,0,0,.3);z-index:4}.b4-meter-idle>div{position:absolute;left:9px;right:9px;top:10px;height:28px;border-radius:4px;background:#99ae8b;border:3px solid #232b27;color:#203120;display:flex;align-items:center;justify-content:flex-end;padding:0 5px;font:800 11px Consolas}.b4-meter-idle div small{position:absolute;left:4px;bottom:2px;font-size:4px;color:#354733}.b4-meter-idle>i{position:absolute;left:30px;top:51px;width:29px;height:29px;border-radius:50%;background:radial-gradient(circle,#586168 0 50%,#1c2226 53%)}.b4-meter-idle>span{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:4px;letter-spacing:.6px;color:#7a888d}
.b4-sensor{position:absolute;right:9%;top:28%;width:64px;height:42px;border-radius:7px;background:linear-gradient(#27383f,#111b20);border:2px solid #4b5e65;box-shadow:0 8px 14px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;gap:2px;z-index:4}.b4-sensor b{font:800 9px Consolas;color:#b5d296}.b4-sensor span{font-size:4px;color:#7e9096}
.b4-light-level{position:absolute;left:16px;bottom:15px;z-index:8;display:flex;gap:7px;align-items:center}.b4-light-level>span{font-size:5px;letter-spacing:1px;color:#668792}.b4-light-level i{width:100px;height:4px;border-radius:999px;background:#153744;overflow:hidden}.b4-light-level b{display:block;height:100%;width:50%;background:linear-gradient(90deg,#4aa3bc,#f1cb66);border-radius:999px;transition:width .25s}
.b4-preview-note{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:8;width:min(330px,62%);display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:center;padding:6px 8px;border-radius:8px;background:rgba(4,17,25,.72);border:1px solid rgba(111,184,198,.08);backdrop-filter:blur(8px)}.b4-preview-note>span{width:23px;height:23px;border-radius:6px;display:grid;place-items:center;color:#6ccfc9;background:rgba(74,180,177,.06)}.b4-preview-note .ui-svg{width:12px}.b4-preview-note b{display:block;font-size:5.5px;letter-spacing:.7px;color:#89cbc6}.b4-preview-note small{display:block;font-size:5px;line-height:1.25;color:#6f8992;margin-top:1px}
.b4-summary{display:flex;flex-direction:column;background:linear-gradient(155deg,rgba(11,33,47,.94),rgba(5,19,29,.91))}
.b4-exp-row{display:flex;justify-content:space-between;align-items:center;margin:7px 0 8px;padding:6px 7px;border-radius:7px;background:rgba(255,255,255,.018);border:1px solid rgba(139,193,208,.06)}.b4-exp-row span{font-size:5.5px;letter-spacing:.9px;color:#698995}.b4-exp-row b{font:800 8px Consolas;color:#7dd8d3}
.b4-status{display:grid;grid-template-columns:10px 1fr;gap:8px;align-items:center;padding:9px 10px;border-radius:10px;border:1px solid rgba(116,182,198,.08);background:rgba(14,43,57,.55);margin-bottom:9px}.b4-status>span{width:9px;height:9px;border-radius:50%;background:#71848c}.b4-status b{display:block;font-size:8px;letter-spacing:.5px}.b4-status small{display:block;font-size:5.5px;color:#738e98;margin-top:2px}
.b4-status.editing>span{background:#629ac0}.b4-status.dirty>span{background:#dda84f;box-shadow:0 0 12px rgba(221,168,79,.22)}.b4-status.applying>span{background:#61d3cc;animation:b4PreviewDot 1s infinite}.b4-status.ready>span{background:#5fd59b;box-shadow:0 0 12px rgba(95,213,155,.22)}.b4-status.ready b{color:#80dfaf}.b4-status.dirty b{color:#e7bd72}
.b4-status-list{gap:5px}.b4-status-list .status-row{padding:7px 8px;font-size:7px;border-radius:8px}.b4-status-list .status-row b{font:800 7px Consolas;color:#7fd8d3}
.b4-instruction{display:grid;grid-template-columns:23px 1fr;gap:7px;align-items:center;margin:9px 0;padding:8px;border-radius:9px;background:rgba(40,114,119,.06);border:1px solid rgba(89,195,194,.08)}.b4-instruction>span{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;color:#72d3ce;background:rgba(73,183,180,.06)}.b4-instruction .ui-svg{width:11px}.b4-instruction p{font-size:6.5px;line-height:1.35;color:#93adb4;margin:0}
.b4-dirty{display:none;gap:6px;align-items:center;font-size:6px;color:#d9b36d;margin:-2px 0 7px}.b4-dirty.show{display:flex}.b4-dirty span{width:6px;height:6px;border-radius:50%;background:#dda84f}
.b4-summary #b4Apply{width:100%;min-height:40px;font-size:9px;margin-top:auto}.b4-summary #b4Apply .ui-svg{width:14px}.b4-spinner{width:13px;height:13px;border-radius:50%;border:2px solid rgba(3,19,31,.28);border-top-color:#062029;animation:b4Spin .7s linear infinite}@keyframes b4Spin{to{transform:rotate(360deg)}}
.b4-control-panel.applying .b4-control{opacity:.72;pointer-events:none}.b4-control-panel.applying{box-shadow:0 0 0 1px rgba(85,213,204,.16),0 24px 55px rgba(0,0,0,.35)}
.b4-model-note{margin-top:8px;padding:7px 8px;border-top:1px solid rgba(142,194,208,.06);display:flex;flex-direction:column;gap:2px}.b4-model-note b{font-size:5.5px;letter-spacing:.7px;color:#6ba6a8}.b4-model-note span{font-size:5.2px;line-height:1.3;color:#617b85}
.b4-bottom{bottom:10px}.b4-bottom .btn{min-height:38px;padding:9px 12px;font-size:9px}
.b4-bottom .btn[disabled]{pointer-events:auto}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){
 .b4-control.guide:before,.b4-preview-status .preview-dot,.b4-panel-glint{animation:none!important}.b4-range::-webkit-slider-thumb{transition:none}.b4-solar,.b4-stand i,.b4-rays{transition:none!important}
}

/* B4 baseline 1280x720 compacting pass */

/* responsive media removed by fixed-16:9 v2.8 */


/* =========================================================
   B5 — PROFESSIONAL CIRCUIT ASSEMBLY SYSTEM
   Scene 05 · Solar Wiring Bay
   ========================================================= */
.scene-circuit{padding-bottom:62px;overflow:hidden}
.b5-head{height:70px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0 3px 8px}.b5-head .h2{font-size:28px;margin:2px 0}.b5-head p{font-size:10px;line-height:1.35;color:#8da7b5;margin:0;max-width:680px}
.b5-config-strip{display:flex;gap:6px;padding-top:3px}.b5-config-strip>span{min-width:72px;height:43px;padding:6px 8px;border:1px solid rgba(134,199,215,.09);border-radius:9px;background:rgba(12,39,52,.62);display:flex;flex-direction:column;justify-content:center}.b5-config-strip small{font-size:5.5px;letter-spacing:.85px;color:#648491}.b5-config-strip b{font:800 8px Consolas;color:#86ded9;margin-top:2px;white-space:nowrap}
.b5-grid{height:calc(100% - 70px);display:grid;grid-template-columns:minmax(0,1fr) 294px;gap:13px;min-height:0}
.b5-workbench{position:relative;overflow:hidden;min-height:0;background:linear-gradient(180deg,rgba(10,38,55,.96) 0 59%,rgba(20,40,48,.97) 59% 64%,rgba(8,24,31,.97) 64%);border-color:rgba(145,204,221,.13);box-shadow:0 24px 70px rgba(0,0,0,.32);isolation:isolate;filter:brightness(calc(.88 + var(--b5-light)*.16))}
.b5-lab-grid{position:absolute;inset:0 0 38%;opacity:.055;background-image:linear-gradient(rgba(255,255,255,.55) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.55) 1px,transparent 1px);background-size:42px 42px}.b5-workbench:before{content:"";position:absolute;right:4%;top:4%;width:220px;height:160px;background:radial-gradient(circle at 65% 35%,rgba(250,216,115,calc(.04 + var(--b5-light)*.14)),transparent 62%);pointer-events:none}.b5-station-title{position:absolute;left:17px;right:17px;top:13px;height:34px;display:flex;align-items:center;justify-content:space-between;z-index:12;border-bottom:1px solid rgba(145,204,221,.08)}.b5-station-title span{font-size:7px;letter-spacing:1.15px;color:#6ed8d3}.b5-station-title span i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4fd69a;box-shadow:0 0 10px rgba(79,214,154,.5);margin-right:6px}.b5-station-title b{font-size:7px;color:#76949f;letter-spacing:.5px}
.b5-bench-top{position:absolute;left:3.5%;right:3.5%;top:56%;height:8%;border-radius:8px;background:linear-gradient(#8a7661 0 18%,#3e4d54 18% 100%);box-shadow:0 14px 28px rgba(0,0,0,.35);z-index:1}.b5-bench-front{position:absolute;left:5%;right:5%;top:64%;bottom:0;border-radius:0 0 16px 16px;background:linear-gradient(180deg,#24343b,#13242b 38%,#0d1c22);z-index:0}.b5-bench-front:before{content:"";position:absolute;left:8%;right:8%;top:20%;height:2px;background:rgba(255,255,255,.03);box-shadow:0 54px 0 rgba(255,255,255,.025)}
.b5-device{position:absolute;z-index:3;filter:drop-shadow(0 16px 14px rgba(0,0,0,.28))}.b5-device-label{position:absolute;left:50%;bottom:-29px;transform:translateX(-50%);min-width:112px;text-align:center;z-index:10}.b5-device-label small{display:block;font-size:5.5px;letter-spacing:1px;color:#5b8793}.b5-device-label b{display:block;font-size:8px;color:#c9dde2;margin-top:1px;white-space:nowrap}
.b5-panel-device{left:8%;top:24%;width:190px;height:176px}.b5-panel-device .b5-panel-solar{left:11px;top:7px;width:156px;height:98px;transform-origin:50% 120%;transform:perspective(700px) rotateX(56deg) rotateZ(var(--b5-angle)) skewY(-4deg);transition:transform .42s cubic-bezier(.2,.8,.2,1);border-width:7px;box-shadow:0 18px 25px rgba(0,0,0,.34)}.b5-panel-device .b5-panel-solar span{position:absolute;inset:2px;background:linear-gradient(115deg,transparent 18%,rgba(255,255,255,.17) 42%,transparent 65%);mix-blend-mode:screen;opacity:calc(.22 + var(--b5-light)*.28)}.b5-panel-stand{position:absolute;left:78px;top:98px;width:55px;height:52px}.b5-panel-stand i{position:absolute;left:24px;top:0;width:8px;height:42px;border-radius:4px;background:linear-gradient(90deg,#607983,#a0b0b7,#566d78);transform:rotate(calc(var(--b5-angle)*.65));transform-origin:50% 5px}.b5-panel-stand b{position:absolute;left:3px;bottom:0;width:52px;height:8px;border-radius:50%;background:#4f6973;box-shadow:0 8px 10px rgba(0,0,0,.25)}
.b5-meter-device{left:46%;top:19%;width:180px;height:220px;transform:translateX(-50%)}.b5-meter-device .b5-meter{left:25px;top:0;width:130px;height:170px}.b5-meter-device .b5-meter .display{height:44px;font-size:19px}.b5-meter-mode{position:absolute;left:0;right:0;bottom:24px;text-align:center;font:700 5px Consolas;letter-spacing:.7px;color:#8b9ba1}.b5-meter-device .b5-device-label{bottom:-5px}
.b5-load-device{right:8%;top:25%;width:155px;height:178px}.b5-load-device .b5-load-lamp{left:37px;top:7px;transform:scale(.92);transform-origin:top center}.b5-load-device .b5-device-label{bottom:-10px}.b5-fixed-note{position:absolute;left:5px;right:5px;top:126px;text-align:center;font-size:5.5px;color:#617e89;line-height:1.25}
.b5-origin{position:absolute;z-index:9;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:2px solid #506b75;background:#0a151a;box-shadow:0 7px 14px rgba(0,0,0,.25);transition:.18s}.b5-origin i{font-style:normal;font-weight:900;font-size:12px}.b5-origin small{position:absolute;top:36px;left:50%;transform:translateX(-50%);font:700 5px Consolas;color:#6f8e99;white-space:nowrap}.b5-origin.red{right:8px;top:68px;color:#ff747a;border-color:#a4454c}.b5-origin.black{right:8px;top:112px;color:#dde7eb;border-color:#4c6069}
.b5-terminal{position:absolute;z-index:10;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:3px solid #536d78;background:linear-gradient(#111a1f,#071015);color:#d6e4e9;cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;box-shadow:0 0 0 5px rgba(255,255,255,.014),0 8px 15px rgba(0,0,0,.28);padding:0}.b5-terminal span{font:900 9px Consolas}.b5-terminal small{position:absolute;top:44px;font:700 4.5px Consolas;letter-spacing:.4px;color:#688590;white-space:nowrap}.b5-terminal:hover{transform:translateY(-2px);border-color:#78919b}.b5-terminal.available{border-color:#54d9d4;box-shadow:0 0 0 7px rgba(84,217,212,.07),0 0 24px rgba(84,217,212,.28);animation:b5TerminalPulse 1.25s ease-in-out infinite}.b5-terminal.snap-target{transform:scale(1.12);border-color:#7df1e8;box-shadow:0 0 0 10px rgba(84,217,212,.09),0 0 34px rgba(84,217,212,.44)}.b5-terminal.near-invalid{border-color:#d69e53;box-shadow:0 0 0 6px rgba(255,185,90,.05)}.b5-terminal.error{animation:b5TerminalError .3s ease;border-color:#ff7b77;background:#2e1215}.b5-terminal.strong-hint{border-color:#ffd45a!important;box-shadow:0 0 0 9px rgba(255,212,90,.08),0 0 34px rgba(255,212,90,.32)!important;animation:b5StrongHint .8s ease-in-out infinite!important}.b5-terminal.connected{border-color:#4bd692;background:#0b281e;box-shadow:0 0 0 6px rgba(75,214,146,.07),0 0 22px rgba(75,214,146,.26);cursor:default}.b5-terminal.connected small{color:#75d8aa}.meter-com{left:29px;top:144px}.meter-v{left:77px;top:144px;color:#ff7d82}.meter-a{left:125px;top:144px;color:#ff7d82}.load-pos{left:12px;top:86px;color:#ff7d82}.load-neg{right:10px;top:86px}
@keyframes b5TerminalPulse{50%{box-shadow:0 0 0 10px rgba(84,217,212,.04),0 0 30px rgba(84,217,212,.18)}}@keyframes b5TerminalError{25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-2px)}}@keyframes b5StrongHint{50%{transform:scale(1.08)}}
.b5-wire-svg{position:absolute;inset:0;width:100%;height:100%;z-index:6;pointer-events:none;overflow:visible}.b5-wire{fill:none;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .22s;filter:drop-shadow(0 4px 4px rgba(0,0,0,.35))}.b5-wire.visible{opacity:1}.b5-wire.red{stroke:#d9424d}.b5-wire.black{stroke:#151c20;filter:drop-shadow(0 3px 3px rgba(0,0,0,.5))}.b5-wire.drag-wire{stroke-width:7;stroke-dasharray:7 4;opacity:0}.b5-wire.drag-wire.visible{opacity:.94}.b5-wire.current-flow{stroke-dasharray:16 8;animation:b5CurrentPath 1.5s linear infinite}.b5-wire.red.current-flow{filter:drop-shadow(0 0 5px rgba(232,77,88,.3))}.b5-wire.black.current-flow{filter:drop-shadow(0 0 4px rgba(92,180,194,.28))}@keyframes b5CurrentPath{to{stroke-dashoffset:-48}}
.b5-drag-head{position:absolute;width:24px;height:18px;border-radius:4px;background:#21292d;border:2px solid #68777d;z-index:9;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.8);transition:opacity .08s,transform .08s}.b5-drag-head:after{content:"";position:absolute;right:-11px;top:5px;width:11px;height:5px;border-radius:0 3px 3px 0;background:#aab6ba}.b5-drag-head.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.b5-drag-head.red{background:#a92f39;border-color:#e7656e}.b5-drag-head.black{background:#181e22;border-color:#53616a}.b5-motion-layer{position:absolute;inset:0;z-index:11;pointer-events:none}.b5-snap-head{position:absolute;width:24px;height:18px;border-radius:4px;transform:translate(-50%,-50%);transition:left .22s cubic-bezier(.22,.82,.22,1),top .22s cubic-bezier(.22,.82,.22,1),transform .22s;background:#20282c;border:2px solid #65747b;box-shadow:0 8px 15px rgba(0,0,0,.35)}.b5-snap-head:after{content:"";position:absolute;right:-10px;top:5px;width:10px;height:5px;background:#b1bdc0;border-radius:0 3px 3px 0}.b5-snap-head.red{background:#aa3039;border-color:#e56871}.b5-snap-head.black{background:#171e22;border-color:#53616a}.b5-snap-head.moving{transform:translate(-50%,-50%) scale(.92)}
.b5-cable-tray{position:absolute;left:5%;right:5%;bottom:4%;height:88px;z-index:12;border-radius:13px;border:1px solid rgba(132,194,210,.11);background:linear-gradient(145deg,rgba(5,19,27,.92),rgba(9,34,44,.92));box-shadow:0 13px 27px rgba(0,0,0,.32);display:grid;grid-template-columns:128px 1fr 1fr;gap:9px;align-items:center;padding:10px}.b5-tray-head{padding-left:5px}.b5-tray-head span{display:block;font-size:6px;letter-spacing:1.2px;color:#68a4ad}.b5-tray-head small{display:block;font-size:6px;color:#597681;margin-top:3px}.b5-cable-card{height:62px;display:grid;grid-template-columns:42px 1fr 25px;align-items:center;gap:8px;border-radius:10px;border:1px solid rgba(134,195,211,.12);background:linear-gradient(145deg,rgba(18,49,61,.76),rgba(7,25,33,.82));color:#dcebed;text-align:left;padding:8px;cursor:grab;touch-action:none;transition:transform .16s,box-shadow .16s,border-color .16s,opacity .18s}.b5-cable-card:hover,.b5-cable-card.selected{transform:translateY(-3px);border-color:rgba(90,218,210,.3);box-shadow:0 13px 20px rgba(0,0,0,.25)}.b5-cable-card.selected{box-shadow:0 0 0 2px rgba(88,219,211,.05),0 12px 20px rgba(0,0,0,.25)}.b5-cable-card.dragging-source{transform:translateY(-6px) scale(1.02);opacity:.58;box-shadow:0 18px 28px rgba(0,0,0,.34)}.b5-cable-card.snapping{transform:translateY(-5px) scale(.98);border-color:rgba(94,225,214,.38)}.b5-cable-card.invalid{animation:b5CableError .3s ease;border-color:rgba(255,112,110,.38)}.b5-cable-card.returning{animation:b5Return .32s cubic-bezier(.2,.8,.2,1)}.b5-cable-card.connected{cursor:default;opacity:.54;border-color:rgba(75,214,146,.18);background:linear-gradient(145deg,rgba(25,70,56,.35),rgba(7,29,31,.8));transform:none}.b5-cable-connector{width:37px;height:30px;position:relative;display:grid;place-items:center}.b5-cable-connector:before{content:"";width:28px;height:15px;border-radius:4px;background:#20272b;border:2px solid #66757c}.b5-cable-connector:after{content:"";position:absolute;right:-1px;width:10px;height:5px;background:#a9b5b8;border-radius:0 3px 3px 0}.b5-cable-card.red .b5-cable-connector:before{background:#a72d36;border-color:#df5962}.b5-cable-card.black .b5-cable-connector:before{background:#161c20;border-color:#53616a}.b5-cable-copy small{display:block;font:700 5px Consolas;color:#617f8a}.b5-cable-copy b{display:block;font-size:9px;margin:2px 0}.b5-cable-copy em{display:block;font-style:normal;font-size:5.5px;letter-spacing:.6px;color:#659ca5}.b5-cable-state{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;color:#61d79c;background:rgba(73,205,144,.06)}.b5-cable-state .ui-svg{width:12px}.b5-cable-card.red .b5-cable-copy b{color:#f08b91}.b5-cable-card.black .b5-cable-copy b{color:#c5d2d7}@keyframes b5CableError{25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-2px)}}@keyframes b5Return{0%{transform:translateY(-7px) scale(1.03)}100%{transform:none}}
.b5-legend{position:absolute;left:18px;top:51px;z-index:12;display:flex;gap:12px;font-size:5.5px;color:#607f8b}.b5-legend span{display:flex;gap:4px;align-items:center}.b5-legend i{width:7px;height:7px;border-radius:50%;border:1px solid #5d7480;background:#0c171c}.b5-legend i.available{border-color:#5edbd5;box-shadow:0 0 6px rgba(94,219,213,.25)}.b5-legend i.connected{border-color:#4bd692;background:#194c38}
.b5-success-banner{position:absolute;left:50%;top:53px;transform:translateX(-50%) translateY(-8px);min-width:300px;height:44px;z-index:14;display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;padding:6px 12px;border:1px solid rgba(73,214,146,.22);border-radius:10px;background:rgba(9,42,34,.88);box-shadow:0 13px 27px rgba(0,0,0,.3),0 0 26px rgba(73,214,146,.08);animation:b5SuccessIn .55s cubic-bezier(.2,.8,.2,1) forwards}.b5-success-banner>span{width:29px;height:29px;border-radius:9px;background:rgba(75,214,146,.09);display:grid;place-items:center;color:#68dfa4}.b5-success-banner .ui-svg{width:16px}.b5-success-banner small{display:block;font-size:5px;letter-spacing:1px;color:#61aa89}.b5-success-banner b{display:block;font-size:8px;color:#b9ead0;margin-top:2px}@keyframes b5SuccessIn{to{transform:translateX(-50%) translateY(0)}}
.b5-status-panel{padding:15px!important;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:linear-gradient(160deg,rgba(12,37,51,.94),rgba(6,23,31,.9))}.b5-status-chip{height:48px;border-radius:10px;border:1px solid rgba(128,192,208,.09);background:rgba(8,29,39,.62);display:grid;grid-template-columns:10px 1fr;gap:8px;align-items:center;padding:8px 10px;margin:7px 0 9px}.b5-status-chip>span{width:8px;height:8px;border-radius:50%;background:#526c78}.b5-status-chip.working>span{background:#f0b451;box-shadow:0 0 10px rgba(240,180,81,.3)}.b5-status-chip.ready>span{background:#4bd692;box-shadow:0 0 12px rgba(75,214,146,.38)}.b5-status-chip small{display:block;font-size:5.5px;letter-spacing:.9px;color:#6c8b96}.b5-status-chip b{display:block;font-size:9px;margin-top:1px;color:#d8e9eb}.b5-connection-list{display:grid;gap:7px}.b5-connection-row{min-height:51px;border:1px solid rgba(128,190,204,.08);border-radius:10px;background:rgba(8,29,38,.5);display:grid;grid-template-columns:14px 1fr 22px;gap:8px;align-items:center;padding:8px}.b5-connection-row.done{border-color:rgba(75,214,146,.14);background:rgba(23,74,54,.13)}.wire-dot{width:10px;height:10px;border-radius:50%;background:#1a2227;border:2px solid #53636a}.wire-dot.red{background:#a3323b;border-color:#e06169}.wire-dot.black{background:#171e22;border-color:#53616a}.b5-connection-row small{display:block;font-size:5.5px;color:#688894;letter-spacing:.7px}.b5-connection-row b{display:block;font-size:8px;color:#bdd3d8;margin-top:2px}.b5-connection-row em{font-style:normal;font:800 7px Consolas;color:#64808b}.b5-connection-row.done em{color:#59da9a}.b5-connection-row em .ui-svg{width:13px}
.b5-instruction{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;padding:9px;margin:9px 0 7px;border:1px solid rgba(91,205,204,.1);border-radius:10px;background:rgba(39,105,109,.07)}.b5-instruction>span{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;color:#6adbd5;background:rgba(80,204,199,.07)}.b5-instruction .ui-svg{width:14px}.b5-instruction p{margin:1px 0 0;font-size:7.5px;line-height:1.45;color:#a8c0c7}.b5-hint{min-height:33px;padding:7px 10px;font-size:8px;align-self:flex-start}.b5-hint .ui-svg{width:12px}.b5-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:8px}.b5-metrics span{height:39px;border-radius:8px;border:1px solid rgba(133,193,207,.07);background:rgba(7,27,36,.55);display:flex;flex-direction:column;align-items:center;justify-content:center}.b5-metrics small{font-size:4.8px;color:#607e89;letter-spacing:.45px}.b5-metrics b{font:800 9px Consolas;color:#8dc8cc;margin-top:2px}.b5-procedure-note{margin-top:auto;padding:9px;border-radius:9px;border-left:2px solid rgba(245,198,80,.5);background:rgba(245,198,80,.035)}.b5-procedure-note b{display:block;font-size:5.5px;letter-spacing:.9px;color:#c6a84e}.b5-procedure-note p{margin:4px 0 0;font-size:6.4px;line-height:1.42;color:#748e97}
.b5-bottom{position:absolute;left:24px;right:24px;bottom:16px}.b5-bottom .btn.guided{background:rgba(22,54,69,.72);color:#91aab4;border:1px solid rgba(132,192,207,.11);box-shadow:none}.b5-bottom .btn.success{background:linear-gradient(135deg,#55dfa0,#68e8d1);color:#072418}.b5-workbench.resetting .b5-wire{opacity:.2;stroke-dasharray:5 6;animation:b5WireReset .4s ease}.b5-workbench.resetting .b5-terminal.connected{transform:scale(.88);opacity:.65}@keyframes b5WireReset{to{stroke-dashoffset:30;opacity:0}}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b5-terminal.available,.b5-terminal.strong-hint,.b5-wire.current-flow,.b5-success-banner,.b5-cable-card.invalid,.b5-cable-card.returning{animation:none!important}.b5-snap-head{transition:none!important}}

/* =========================================================
   B6 — PROFESSIONAL MULTIMETER & MEASUREMENT SYSTEM
   Scene 06 Tegangan + Scene 07 Arus
   ========================================================= */
.b6-scene{padding-bottom:62px}.b6-head{height:74px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0 2px 10px}.b6-head .h2{font-size:27px;margin:2px 0 3px}.b6-head p{margin:0;color:#8fa9b5;font-size:8px;line-height:1.4;max-width:660px}.b6-config-strip{display:flex;gap:6px;align-items:center}.b6-config-strip>span{min-width:75px;height:43px;border-radius:9px;border:1px solid rgba(126,192,209,.1);background:rgba(8,28,39,.62);display:flex;flex-direction:column;justify-content:center;padding:6px 9px}.b6-config-strip small{font-size:4.8px;letter-spacing:.75px;color:#63828f}.b6-config-strip b{font:800 7.5px Consolas,monospace;color:#b9d9dd;margin-top:2px;white-space:nowrap}.b6-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:13px;height:calc(100% - 74px)}
.b6-stage-card{position:relative;min-width:0;overflow:hidden;border-radius:18px;background:linear-gradient(160deg,rgba(8,28,39,.96),rgba(5,19,29,.94));box-shadow:0 25px 55px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.025);isolation:isolate}.b6-stage-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(91,169,187,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(91,169,187,.025) 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(to bottom,black,transparent 92%)}.b6-focus-glow{position:absolute;width:520px;height:390px;left:49%;top:48%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(52,178,194,.11),rgba(19,97,117,.04) 44%,transparent 70%);filter:blur(6px);pointer-events:none}.b6-stage-card.measuring .b6-focus-glow{animation:b6FocusPulse 1.05s ease-in-out infinite}@keyframes b6FocusPulse{50%{opacity:.5;transform:translate(-50%,-50%) scale(1.04)}}
.b6-context-panel{position:absolute;left:4%;top:10%;width:170px;height:120px;z-index:4;border:1px solid rgba(126,190,203,.08);border-radius:13px;background:linear-gradient(145deg,rgba(9,35,45,.78),rgba(7,25,34,.58));box-shadow:0 13px 24px rgba(0,0,0,.2)}.b6-sun-mini{position:absolute;right:12px;top:10px;color:#eac45d;opacity:calc(.35 + var(--b6-light) * .55)}.b6-sun-mini .ui-svg{width:20px;height:20px}.b6-panel-mini{width:92px!important;height:57px!important;left:15px!important;top:25px!important;transform:skewY(-5deg) rotate(var(--b6-panel-angle)) scale(.7)!important;transform-origin:50% 85%;border-width:5px!important}.b6-context-copy{position:absolute;left:12px;bottom:8px}.b6-context-copy small{display:block;font-size:4.8px;letter-spacing:.75px;color:#63808b}.b6-context-copy b{display:block;font:700 6.5px Consolas;color:#8fc2c9;margin-top:2px}.b6-cable-continuity{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}.b6-cable-continuity path{fill:none;stroke-width:5;stroke-linecap:round;opacity:.62;filter:drop-shadow(0 3px 3px rgba(0,0,0,.38))}.b6-cable-continuity .red{stroke:#b9434b}.b6-cable-continuity .black{stroke:#33424a}.b6-cable-continuity .load{stroke:#416875;stroke-dasharray:5 8;opacity:.38}.b6-stage-card.measuring .b6-cable-continuity path{stroke-dasharray:7 8;animation:b6CurrentPath .9s linear infinite}@keyframes b6CurrentPath{to{stroke-dashoffset:-30}}
.b6-meter-shell{position:absolute;left:51%;top:47%;transform:translate(-50%,-50%);width:280px;height:355px;z-index:8;border-radius:20px 20px 27px 27px;background:linear-gradient(150deg,#3a4449 0,#20292e 26%,#11181c 72%,#080d10);border:4px solid #58666b;box-shadow:0 35px 48px rgba(0,0,0,.48),inset 1px 1px 0 rgba(255,255,255,.08),inset -8px -12px 30px rgba(0,0,0,.27)}.b6-meter-shell:after{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.025);border-radius:14px 14px 22px 22px;pointer-events:none}.b6-meter-top{height:31px;display:flex;justify-content:space-between;align-items:center;padding:0 14px;color:#98a9ad;font:800 7px Consolas;letter-spacing:1px}.b6-led{width:7px;height:7px;border-radius:50%;background:#3c6155;box-shadow:0 0 6px rgba(82,215,158,.08)}.b6-led.pulse{background:#59dca0;box-shadow:0 0 12px rgba(82,215,158,.5);animation:b6LedPulse .42s ease-in-out infinite alternate}@keyframes b6LedPulse{to{opacity:.4}}
.b6-display-wrap{position:relative;height:76px;margin:1px 18px 0;border-radius:9px;background:linear-gradient(155deg,#b9d6a3,#96b482);border:5px solid #171e20;box-shadow:inset 0 0 0 2px #75876e,inset 0 4px 12px rgba(20,48,25,.12);overflow:hidden}.b6-display{height:49px;display:flex;align-items:end;justify-content:flex-end;padding:4px 9px 0;font:900 28px/1 Consolas,monospace;letter-spacing:-1px;color:#1b321e;text-shadow:0 1px rgba(255,255,255,.18)}.b6-display-meta{height:16px;padding:0 8px 3px;display:flex;justify-content:space-between;align-items:center;font:800 6px Consolas;color:#3f5b42;letter-spacing:.65px}.b6-display-meta b{font-size:8px}.b6-scanline{position:absolute;left:0;right:0;top:-5px;height:7px;background:linear-gradient(transparent,rgba(255,255,255,.22),transparent);opacity:0}.b6-stage-card.measuring .b6-scanline{opacity:1;animation:b6Scan 1s linear infinite}@keyframes b6Scan{to{transform:translateY(82px)}}
.b6-meter-face{position:relative;height:147px}.b6-mode-ring{position:absolute;left:50%;top:62px;transform:translate(-50%,-50%);width:142px;height:116px;border-radius:50%;border:1px dashed rgba(194,207,210,.16)}.b6-mode-ring span{position:absolute;font:800 6px Consolas;letter-spacing:.7px;color:#8f9ca0}.b6-mode-ring .dcv-label{left:4px;top:25px;color:#62d8d5}.b6-mode-ring .dca-label{right:4px;top:25px;color:#f0b15f}.b6-mode-ring .neutral-label{left:50%;transform:translateX(-50%);bottom:4px;color:#738086}.b6-knob{position:absolute;left:50%;top:66px;margin:-40px;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 38% 32%,#778187 0 9%,#50595e 10% 48%,#222a2e 51% 68%,#111619 70%);border:3px solid #626d72;box-shadow:0 12px 22px rgba(0,0,0,.42),inset 0 2px 2px rgba(255,255,255,.12);transition:transform .46s cubic-bezier(.2,.8,.2,1)}.b6-knob i{position:absolute;left:36px;top:4px;width:8px;height:27px;border-radius:4px;background:linear-gradient(#f0f2ee,#b9c1c2);box-shadow:0 2px 5px rgba(0,0,0,.35)}.b6-stage-card.mode-turning .b6-knob{filter:brightness(1.1)}
.b6-port-row{position:absolute;left:25px;right:25px;bottom:17px;display:flex;justify-content:space-between}.b6-port-row span{width:62px;text-align:center;display:flex;flex-direction:column;align-items:center}.b6-port-row i{display:block;width:27px;height:27px;border-radius:50%;background:#111617;border:5px solid #69767b;box-shadow:inset 0 0 0 3px #06090a}.b6-port-row .volt i,.b6-port-row .amp i{border-color:#a9454d}.b6-port-row b{font:800 7px Consolas;color:#c1cdcf;margin-top:4px}.b6-port-row small{font:700 4.5px Consolas;color:#6c7b80;margin-top:1px}.b6-stage-card.measuring .b6-port-row .com i,.b6-stage-card.measuring .b6-port-row .volt i{box-shadow:inset 0 0 0 3px #06090a,0 0 13px rgba(69,205,199,.22)}
.b6-mode-controls{position:absolute;left:4%;top:42%;z-index:10;display:grid;gap:8px;width:155px}.b6-mode-btn{height:62px;border-radius:11px;border:1px solid rgba(111,181,197,.12);background:linear-gradient(145deg,rgba(13,46,58,.82),rgba(7,27,36,.88));color:#b9cfd5;text-align:left;padding:9px 11px;cursor:pointer;transition:.18s;box-shadow:0 9px 18px rgba(0,0,0,.18)}.b6-mode-btn:hover:not(:disabled){transform:translateX(4px);border-color:rgba(88,211,207,.3)}.b6-mode-btn small{display:block;font-size:4.5px;letter-spacing:.8px;color:#627f89}.b6-mode-btn b{display:block;font:900 13px Consolas;margin:1px 0}.b6-mode-btn span{display:block;font-size:5.5px;color:#76929b}.b6-mode-btn.active{border-color:rgba(82,216,209,.42);background:linear-gradient(145deg,rgba(31,103,105,.34),rgba(7,35,42,.92));box-shadow:0 0 0 2px rgba(80,211,205,.05),0 10px 20px rgba(0,0,0,.22)}.b6-mode-btn.dca.active{border-color:rgba(239,177,92,.42);background:linear-gradient(145deg,rgba(116,78,31,.28),rgba(32,28,19,.9))}.b6-mode-btn.pending{transform:translateX(4px);filter:brightness(1.12)}.b6-mode-btn:disabled{cursor:not-allowed;opacity:.58}.b6-probe-tags{position:absolute;left:4%;bottom:9%;z-index:9;display:grid;gap:5px}.b6-probe-tags span{display:flex;align-items:center;gap:5px;font:700 5.5px Consolas;color:#75929b}.b6-probe-tags i{width:8px;height:8px;border-radius:50%}.b6-probe-tags .red i{background:#b9434b}.b6-probe-tags .black i{background:#29363c;border:1px solid #5b6870}
.b6-measure-progress{position:absolute;left:24%;right:24%;bottom:20px;height:3px;border-radius:5px;background:rgba(108,178,194,.08);overflow:hidden;z-index:12}.b6-measure-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#45bbb7,#f0c75b);box-shadow:0 0 10px rgba(75,206,199,.32);transition:width .18s ease}.b6-stage-caption{position:absolute;right:3%;top:7%;z-index:8;height:47px;border-radius:10px;border:1px solid rgba(75,214,146,.1);background:rgba(11,49,39,.4);display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:center;padding:7px 9px}.b6-stage-caption>span{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;color:#57d89a;background:rgba(74,209,142,.08)}.b6-stage-caption .ui-svg{width:13px}.b6-stage-caption small{display:block;font-size:4.5px;letter-spacing:.75px;color:#639d83}.b6-stage-caption b{display:block;font-size:6.5px;color:#9fcbb8;margin-top:2px}
.b6-side{padding:15px!important;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(160deg,rgba(12,37,51,.95),rgba(6,22,31,.93))}.b6-step-chip{height:50px;border:1px solid rgba(125,190,205,.08);border-radius:10px;background:rgba(8,30,39,.55);display:grid;grid-template-columns:38px 1fr;gap:8px;align-items:center;padding:6px 9px;margin:6px 0}.b6-step-chip>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:rgba(77,197,194,.08);font:900 10px Consolas;color:#6cdad4}.b6-step-chip small{display:block;font-size:4.8px;letter-spacing:.8px;color:#65828d}.b6-step-chip b{display:block;font-size:7.5px;color:#bed2d7;margin-top:2px}.b6-prereq{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:4px 0}.b6-prereq span{height:41px;border-radius:8px;border:1px solid rgba(74,210,143,.1);background:rgba(26,76,57,.08);display:grid;grid-template-columns:18px 1fr;grid-template-rows:1fr 1fr;column-gap:6px;align-items:center;padding:5px 7px}.b6-prereq .ui-svg{grid-row:1/3;width:14px;color:#59d99c}.b6-prereq b{font-size:5.5px;align-self:end;color:#8ab7a1}.b6-prereq small{font-size:4.8px;color:#5f8a77;align-self:start}.b6-instruction{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:9px;margin:6px 0;border-radius:9px;border:1px solid rgba(77,196,196,.1);background:rgba(36,103,105,.07)}.b6-instruction>span{width:25px;height:25px;border-radius:7px;display:grid;place-items:center;background:rgba(80,205,200,.07);color:#62d9d5}.b6-instruction .ui-svg{width:13px}.b6-instruction p{margin:0;font-size:6.8px;line-height:1.45;color:#92acb4}.b6-result-card{min-height:58px;border:1px solid rgba(127,191,206,.08);border-radius:10px;background:rgba(7,27,36,.52);display:grid;grid-template-columns:35px 1fr;gap:8px;align-items:center;padding:7px 9px;margin:4px 0}.b6-result-card>span{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#6b9aa7;background:rgba(90,154,171,.05)}.b6-result-card .ui-svg{width:15px}.b6-result-card small{display:block;font-size:4.8px;color:#66828d;letter-spacing:.8px}.b6-result-card b{display:block;font:900 12px Consolas;color:#9cb8c0;margin:2px 0}.b6-result-card em{display:block;font-style:normal;font-size:4.8px;color:#607883}.b6-result-card.done{border-color:rgba(70,215,145,.15);background:linear-gradient(145deg,rgba(24,81,57,.13),rgba(7,31,36,.6))}.b6-result-card.done>span{color:#5ddda0;background:rgba(70,215,145,.07)}.b6-result-card.done b{color:#bce7ce}.b6-measure-btn{width:100%;margin-top:7px;min-height:38px;font-size:8.5px}.b6-measure-btn .ui-svg{width:14px}.b6-metrics{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:7px}.b6-metrics span{height:39px;border-radius:8px;border:1px solid rgba(128,190,205,.07);background:rgba(7,27,36,.5);display:flex;flex-direction:column;align-items:center;justify-content:center}.b6-metrics small{font-size:4.6px;color:#5f7d88}.b6-metrics b{font:900 9px Consolas;color:#89c0c6;margin-top:2px}.b6-safety-note{margin-top:auto;padding:8px 9px;border-left:2px solid rgba(237,184,83,.48);border-radius:6px;background:rgba(238,183,80,.035)}.b6-safety-note b{display:block;font-size:5.3px;letter-spacing:.8px;color:#c6a54c}.b6-safety-note span{display:block;font-size:5.8px;line-height:1.4;color:#718a94;margin-top:3px}.b6-bottom{position:absolute;left:24px;right:24px;bottom:14px}.b6-bottom .btn.success{background:linear-gradient(135deg,#53dda0,#64e4d0);color:#06251a}.b6-bottom .btn.guided{background:rgba(20,52,67,.75);color:#8ca6af;border:1px solid rgba(124,186,201,.1);box-shadow:none}
.b6-lamp-rig{position:absolute;right:4%;bottom:10%;z-index:9;width:165px;height:145px;border:1px solid rgba(128,190,204,.08);border-radius:13px;background:rgba(7,28,36,.56);display:flex;align-items:center;padding:13px}.b6-lamp-rig .b6-lamp{position:relative!important;width:62px!important;height:86px!important;flex:0 0 62px}.b6-lamp-rig .b6-lamp .bulb{width:50px;height:50px;transition:background .55s,box-shadow .55s,filter .55s}.b6-lamp-halo{position:absolute;left:31px;top:45px;width:85px;height:85px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,221,115,.28),transparent 68%);filter:blur(4px);opacity:0;transition:opacity .55s,transform .55s}.b6-lamp-copy{margin-left:5px;position:relative;z-index:2}.b6-lamp-copy small{display:block;font-size:4.5px;letter-spacing:.7px;color:#657f88}.b6-lamp-copy b{display:block;font:900 9px Consolas;color:#859da3;margin:2px 0}.b6-lamp-copy span{display:block;font-size:5px;line-height:1.35;color:#617983}.b6-lamp-rig.state-dim .b6-lamp .bulb{background:#e8dfbd;box-shadow:0 0 20px rgba(255,217,105,.18);filter:brightness(.82)}.b6-lamp-rig.state-dim .b6-lamp-halo{opacity:.18}.b6-lamp-rig.state-dim .b6-lamp-copy b{color:#c3b277}.b6-lamp-rig.state-normal .b6-lamp .bulb{background:#fff0a8;box-shadow:0 0 34px rgba(255,218,94,.42);filter:brightness(1.08)}.b6-lamp-rig.state-normal .b6-lamp-halo{opacity:.48;transform:translate(-50%,-50%) scale(1.05)}.b6-lamp-rig.state-normal .b6-lamp-copy b{color:#efd27a}.b6-lamp-rig.state-bright .b6-lamp .bulb{background:#fff7c8;box-shadow:0 0 50px rgba(255,224,109,.63);filter:brightness(1.25)}.b6-lamp-rig.state-bright .b6-lamp-halo{opacity:.76;transform:translate(-50%,-50%) scale(1.18)}.b6-lamp-rig.state-bright .b6-lamp-copy b{color:#ffe58e}.b6-stage-card.warning{box-shadow:0 25px 55px rgba(0,0,0,.32),inset 0 0 0 1px rgba(236,171,76,.18)}.b6-stage-card.warning .b6-display-wrap{background:linear-gradient(155deg,#e1c98c,#b49b68)}.meter-shake .b6-meter-shell{animation:b6MeterShake .36s ease}@keyframes b6MeterShake{25%{transform:translate(-52%,-50%)}50%{transform:translate(-48%,-50%)}75%{transform:translate(-51%,-50%)}}.b6-stage-card.resetting .b6-display{opacity:.15;transform:translateY(-3px);transition:.22s}.b6-stage-card.resetting .b6-measure-progress i{width:0!important}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b6-stage-card.measuring .b6-focus-glow,.b6-stage-card.measuring .b6-cable-continuity path,.b6-stage-card.measuring .b6-scanline,.b6-led.pulse,.meter-shake .b6-meter-shell{animation:none!important}.b6-knob,.b6-lamp-rig .b6-lamp .bulb,.b6-lamp-halo{transition:none!important}}


/* =========================================================
   B7 — PROFESSIONAL DATA ANALYSIS & SCENARIO COMPARISON
   Scene 08 / 09
   ========================================================= */
.b7-scene{padding-bottom:62px;overflow:hidden}.b7-head{height:68px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0 2px 8px}.b7-head .h2{font-size:27px;margin:2px 0}.b7-head p{margin:0;color:#8ba7b5;font-size:9px;line-height:1.35;max-width:690px}.b7-head-strip{display:flex;gap:6px;padding-top:2px;align-items:stretch}.b7-head-strip>span{min-width:78px;height:46px;border-radius:9px;border:1px solid rgba(130,194,209,.08);background:rgba(7,27,37,.58);padding:6px 8px;display:flex;flex-direction:column;justify-content:center}.b7-head-strip small{font-size:4.4px;letter-spacing:.75px;color:#617f8a}.b7-head-strip b{font:800 7px Consolas;color:#aac6ce;margin-top:2px;white-space:nowrap}.b7-analysis-grid{height:calc(100% - 68px);display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:12px;min-height:0}.b7-workstation{position:relative;overflow:hidden;padding:13px 14px 12px;background:linear-gradient(158deg,rgba(10,34,48,.94),rgba(5,20,29,.94));border-color:rgba(117,203,210,.11)}.b7-workstation:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(118,202,211,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(118,202,211,.025) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.b7-station-bar{position:relative;z-index:2;height:29px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(117,190,205,.08);font-size:5.4px;letter-spacing:.75px;color:#64838d}.b7-station-bar span{display:flex;align-items:center;gap:6px;color:#77aab1;font-weight:800}.b7-station-bar i{width:6px;height:6px;border-radius:50%;background:#50d5cf;box-shadow:0 0 10px rgba(77,213,207,.45)}.b7-station-bar b{font-size:5px;color:#536f79}.b7-inputs{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:9px 0}.b7-input-card{min-height:66px;border:1px solid rgba(132,195,208,.08);border-radius:11px;background:linear-gradient(145deg,rgba(14,46,59,.7),rgba(6,26,35,.74));display:grid;grid-template-columns:32px 1fr 4px;gap:8px;align-items:center;padding:8px 9px;transition:.28s}.b7-input-card.measured{border-color:rgba(83,215,154,.13)}.b7-input-card.feeding{transform:translateY(-3px);border-color:rgba(245,198,80,.32);box-shadow:0 0 24px rgba(245,198,80,.06)}.b7-input-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:#61d7d1;background:rgba(69,185,184,.08)}.b7-input-icon .ui-svg{width:14px}.b7-input-card small{display:block;font-size:4.8px;letter-spacing:.8px;color:#607f89}.b7-input-card b{display:block;font:900 12px Consolas;color:#c5e1e4;margin:2px 0}.b7-input-card em{display:block;font-style:normal;font-size:4.5px;color:#61ad8e}.b7-input-card>i{width:3px;height:38px;border-radius:3px;background:linear-gradient(#45c4be,#4cdc99);opacity:.32}.b7-formula-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:9px}.b7-formula-card{min-height:254px;border-radius:13px;border:1px solid rgba(113,194,203,.1);background:linear-gradient(155deg,rgba(7,28,38,.86),rgba(9,38,48,.72));padding:10px;display:flex;flex-direction:column;transition:.3s;overflow:hidden;position:relative}.b7-formula-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#46c9c3;opacity:.18}.b7-formula-card.done{border-color:rgba(77,211,147,.16);background:linear-gradient(155deg,rgba(9,42,37,.44),rgba(7,30,39,.82))}.b7-formula-card.done:before{background:#55d99c;opacity:.5}.b7-formula-card.locked{opacity:.58}.b7-formula-card.calculating{border-color:rgba(246,199,84,.35);box-shadow:0 0 34px rgba(238,187,66,.06)}.b7-formula-card.operator-pulse .b7-equation i{color:#ffd862;text-shadow:0 0 10px rgba(255,207,77,.35)}.b7-formula-head{display:grid;grid-template-columns:29px 1fr 25px;gap:7px;align-items:center}.b7-formula-head>span{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:rgba(72,201,197,.07);font:900 8px Consolas;color:#5ed6d0}.b7-formula-head small{display:block;font-size:4.4px;letter-spacing:.8px;color:#607d87}.b7-formula-head b{display:block;font:900 10px Consolas;color:#c3dce0;margin-top:2px}.b7-formula-head>.ui-svg{width:15px;color:#62d3cd;justify-self:end}.b7-formula-card.done .b7-formula-head>.ui-svg{color:#62dca4}.b7-equation{height:61px;border-radius:10px;border:1px solid rgba(107,194,202,.08);background:rgba(3,17,24,.62);display:flex;align-items:center;justify-content:center;gap:9px;margin:9px 0 6px;font:900 19px Consolas;color:#9bb7bd}.b7-equation .symbol{color:#f2cf68}.b7-equation .slot{min-width:34px;text-align:center;padding:5px 7px;border-radius:7px;background:rgba(73,186,184,.07);color:#71d7d1}.b7-equation i{font-style:normal;color:#55757e;transition:.25s}.b7-substitution{height:30px;display:grid;place-items:center;text-align:center;font:700 6.2px Consolas;color:#7798a1;letter-spacing:.15px}.b7-formula-result{height:52px;border-radius:9px;background:rgba(5,22,29,.7);border:1px solid rgba(122,192,203,.06);display:flex;align-items:center;justify-content:space-between;padding:7px 9px;margin-bottom:7px;transition:.25s}.b7-formula-result small{font-size:4.6px;letter-spacing:.8px;color:#5e7a84}.b7-formula-result strong{font:900 14px Consolas;color:#8daab0}.b7-formula-card.done .b7-formula-result strong{color:#f0d26f}.b7-formula-result.calculating strong{animation:b7CalcBlink .28s steps(2) infinite}@keyframes b7CalcBlink{50%{opacity:.35}}.b7-calc-btn{margin-top:auto;width:100%;min-height:35px;padding:7px 10px;font-size:7.5px}.b7-calc-btn .ui-svg{width:12px}.b7-unit-note{position:relative;z-index:2;margin-top:8px;height:43px;border-radius:9px;border:1px solid rgba(87,178,188,.07);background:rgba(12,42,51,.32);display:grid;grid-template-columns:29px 1fr;gap:7px;align-items:center;padding:6px 8px}.b7-unit-note>span{width:27px;height:27px;border-radius:7px;display:grid;place-items:center;color:#66cbc6;background:rgba(70,185,184,.05)}.b7-unit-note .ui-svg{width:13px}.b7-unit-note b{display:block;font-size:5px;letter-spacing:.8px;color:#7ca8ad}.b7-unit-note small{display:block;font-size:5.4px;line-height:1.3;color:#647e87;margin-top:2px}.b7-prereq-block{position:relative;z-index:3;min-height:260px;border:1px dashed rgba(241,180,74,.22);border-radius:14px;background:rgba(86,57,24,.08);display:grid;grid-template-columns:55px 1fr auto;gap:12px;align-items:center;padding:20px}.b7-prereq-block>span{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;color:#e9bc62;background:rgba(222,164,65,.08)}.b7-prereq-block .ui-svg{width:26px}.b7-prereq-block small{font-size:5px;letter-spacing:1px;color:#b7914c}.b7-prereq-block b{display:block;font-size:10px;color:#d6c196;margin:4px 0}.b7-prereq-block p{font-size:6px;line-height:1.45;color:#8d8068;margin:0}.b7-analysis-side{padding:13px;display:flex;flex-direction:column;min-height:0;background:linear-gradient(160deg,rgba(11,37,49,.95),rgba(5,22,31,.94))}.b7-analysis-status{min-height:58px;border:1px solid rgba(112,190,203,.08);border-radius:10px;background:rgba(7,27,36,.55);display:grid;grid-template-columns:9px 1fr;gap:8px;align-items:center;padding:8px 9px;margin:6px 0}.b7-analysis-status>span{width:7px;height:34px;border-radius:5px;background:#58727b}.b7-analysis-status small{display:block;font-size:4.5px;color:#5f7982;letter-spacing:.8px}.b7-analysis-status b{display:block;font-size:7.5px;color:#a9c0c6;margin:2px 0}.b7-analysis-status em{display:block;font-style:normal;font-size:4.8px;color:#6a858d}.b7-analysis-status.ready>span,.b7-analysis-status.power>span{background:#49c8c1}.b7-analysis-status.complete>span,.b7-analysis-status.saved>span{background:#52d998}.b7-analysis-status.working>span{background:#f0c35d;animation:b7StatusPulse .7s infinite alternate}@keyframes b7StatusPulse{to{box-shadow:0 0 14px rgba(239,193,82,.35)}}.b7-hypothesis{padding:8px 9px;border-left:2px solid rgba(238,190,78,.44);background:rgba(238,190,78,.035);border-radius:5px;margin:4px 0 7px}.b7-hypothesis small{display:block;font-size:4.5px;color:#9f854b;letter-spacing:.65px}.b7-hypothesis b{display:block;font-size:6.4px;color:#baa66d;margin-top:3px;text-transform:capitalize}.b7-observation-list{display:grid;grid-template-columns:1fr 1fr;gap:4px}.b7-observation-list>div{height:35px;border-radius:7px;border:1px solid rgba(121,186,200,.06);background:rgba(6,25,34,.52);padding:5px 7px;display:flex;flex-direction:column;justify-content:center}.b7-observation-list span{font-size:4.3px;color:#5b7680}.b7-observation-list b{font:800 6.4px Consolas;color:#96afb5;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.b7-observation-list .accent{border-color:rgba(238,190,74,.1);background:rgba(91,66,23,.08)}.b7-observation-list .accent b{color:#d3b85e}.b7-save-btn,.b7-repeat-btn{width:100%;min-height:36px;margin-top:7px;font-size:7.3px}.b7-save-btn.guided{background:rgba(20,52,66,.75);color:#7e9aa3;border:1px solid rgba(124,186,201,.1);box-shadow:none}.b7-save-btn.success{background:linear-gradient(135deg,#52d99c,#62dfcc);color:#052218}.b7-history-tray{margin-top:7px;border:1px solid rgba(113,190,202,.07);border-radius:9px;background:rgba(6,25,33,.52);padding:7px}.b7-history-tray>div:first-child small{display:block;font-size:4.3px;letter-spacing:.75px;color:#56737d}.b7-history-tray>div:first-child b{display:block;font-size:5.7px;color:#809ba2;margin-top:2px}.b7-history-empty{display:grid;grid-template-columns:22px 1fr;gap:6px;align-items:center;margin-top:5px}.b7-history-empty>span{width:21px;height:21px;border-radius:6px;display:grid;place-items:center;background:rgba(69,175,180,.05);color:#5e9fa6}.b7-history-empty .ui-svg{width:10px}.b7-history-empty b{display:block;font-size:5px;color:#78949b}.b7-history-empty small{display:block;font-size:4.4px;color:#536e77}.b7-history-mini{display:flex;gap:4px;margin-top:6px}.b7-history-mini span{flex:1;min-width:0;border-radius:6px;background:rgba(27,71,77,.17);padding:4px 5px}.b7-history-mini i{font-style:normal;font:800 4.8px Consolas;color:#5ebdb6}.b7-history-mini b{display:block;font:800 5.2px Consolas;color:#aabfba;margin-top:1px}.b7-bottom{bottom:13px}.b7-save-fly{position:fixed;z-index:2147483647;width:48px;height:36px;border-radius:10px;background:linear-gradient(135deg,#f1ca5d,#54d9bc);color:#09261f;display:flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 14px 35px rgba(0,0,0,.32);transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .5s;pointer-events:none}.b7-save-fly .ui-svg{width:13px}.b7-save-fly b{font:900 8px Consolas}
/* Scene 09 analytics */
.b7-compare-grid{height:calc(100% - 68px);display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px;min-height:0}.b7-analytics-main{padding:12px 13px 10px;min-width:0;overflow:hidden;background:linear-gradient(160deg,rgba(10,35,48,.94),rgba(5,21,30,.94))}.b7-analytics-top{height:35px;display:flex;justify-content:space-between;align-items:center}.b7-analytics-top small{display:block;font-size:4.5px;letter-spacing:.8px;color:#5c7c86}.b7-analytics-top b{display:block;font-size:6.5px;color:#90adb3;margin-top:2px}.b7-metric-selector{display:flex;gap:4px}.b7-metric-selector button{height:29px;border-radius:7px;border:1px solid rgba(120,189,201,.08);background:rgba(9,31,40,.74);color:#708d94;display:flex;align-items:center;gap:4px;padding:0 7px;font-size:5px;font-weight:800;cursor:pointer;transition:.17s}.b7-metric-selector .ui-svg{width:10px}.b7-metric-selector button.active{color:#62d6d0;border-color:rgba(89,211,205,.26);background:rgba(44,121,121,.13)}.b7-scenario-strip{height:72px;display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;padding:4px 1px 5px}.b7-scenario-strip::-webkit-scrollbar{height:3px}.b7-scenario-strip::-webkit-scrollbar-thumb{background:#285565;border-radius:5px}.b7-scenario-card{position:relative;flex:0 0 150px;height:61px;border-radius:10px;border:1px solid rgba(121,190,202,.08);background:linear-gradient(145deg,rgba(13,43,54,.7),rgba(6,25,33,.7));color:#a8bec4;display:grid;grid-template-columns:29px 1fr;gap:7px;align-items:center;text-align:left;padding:6px 7px;cursor:pointer;transition:.18s}.b7-scenario-card:hover{transform:translateY(-2px);border-color:rgba(85,204,199,.22)}.b7-scenario-card.selected{border-color:rgba(82,214,205,.37);background:linear-gradient(145deg,rgba(31,96,98,.25),rgba(6,32,38,.8));box-shadow:0 0 0 2px rgba(78,207,201,.035)}.b7-scenario-card.best{box-shadow:inset 0 -2px 0 rgba(239,193,80,.35)}.b7-scenario-no{width:28px;height:37px;border-radius:8px;display:grid;place-items:center;background:rgba(64,177,177,.08);font:900 8px Consolas;color:#62cfc9}.b7-scenario-card small{display:block;font-size:4.3px;color:#627d85}.b7-scenario-card b{display:block;font:900 8px Consolas;color:#d1dfe0;margin:2px 0}.b7-scenario-card em{display:block;font-style:normal;font-size:4.5px;color:#657e85}.b7-scenario-card>i{position:absolute;right:5px;top:4px;font-style:normal;font-size:3.5px;letter-spacing:.5px;color:#c6a54d}.b7-empty-scenarios{height:72px;display:flex;align-items:center;gap:10px;border:1px dashed rgba(117,187,199,.09);border-radius:10px;padding:10px;color:#65838c}.b7-empty-scenarios>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:rgba(67,175,178,.06)}.b7-empty-scenarios .ui-svg{width:16px}.b7-empty-scenarios b{font-size:7px;color:#89a3a9}.b7-empty-scenarios small{font-size:5px}.b7-chart-holder{height:260px;border:1px solid rgba(122,190,202,.08);border-radius:12px;background:linear-gradient(180deg,rgba(8,28,37,.56),rgba(4,18,25,.68));overflow:hidden;position:relative}.b7-chart-gate,.b7-chart-empty{height:100%;display:grid;grid-template-columns:70px 1fr;gap:14px;align-items:center;padding:25px 38px}.b7-chart-gate>span,.b7-chart-empty>span{width:66px;height:66px;border-radius:17px;display:grid;place-items:center;color:#61b9bd;background:rgba(58,161,169,.06);border:1px solid rgba(92,188,193,.08)}.b7-chart-gate .ui-svg,.b7-chart-empty .ui-svg{width:28px}.b7-chart-gate small,.b7-chart-empty small{display:block;font-size:5px;letter-spacing:1px;color:#5e7c85}.b7-chart-gate b,.b7-chart-empty b{display:block;font-size:11px;color:#9fb8bd;margin:4px 0}.b7-chart-gate p,.b7-chart-empty small{font-size:6px;line-height:1.5;color:#647f87;margin:0}.b7-chart-shell{position:absolute;inset:0;padding:13px 15px 11px 51px}.b7-y-title{position:absolute;left:7px;top:50%;transform:rotate(-90deg) translateY(-50%);transform-origin:center;font-size:4.5px;letter-spacing:.8px;color:#5c7b84}.b7-chart-plot{position:relative;height:218px;border-left:1px solid rgba(112,163,176,.22);border-bottom:1px solid rgba(112,163,176,.22)}.b7-grid-line{position:absolute;left:0;right:0;top:var(--y);height:1px;background:rgba(107,163,176,.08)}.b7-grid-line i{position:absolute;right:calc(100% + 5px);top:-4px;width:45px;text-align:right;font-style:normal;font:600 4.1px Consolas;color:#4f6b74}.b7-bars{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-around;gap:7px;padding:0 8px}.b7-bar-wrap{height:100%;flex:1;max-width:115px;min-width:42px;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;position:relative;padding-top:17px}.b7-bar{width:min(49px,64%);height:0;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#5bdbd3,#267f9d);box-shadow:0 0 18px rgba(67,187,195,.09);position:relative;transition:height .78s cubic-bezier(.2,.8,.2,1) var(--delay);z-index:2}.b7-bar span{position:absolute;left:50%;top:-15px;transform:translateX(-50%);font:800 4.8px Consolas;color:#a8c3c7;white-space:nowrap}.b7-bar-wrap.selected .b7-bar{background:linear-gradient(180deg,#f1d065,#50d4c7);box-shadow:0 0 22px rgba(238,195,79,.12)}.b7-bar-wrap>b{height:17px;display:grid;place-items:center;font:800 5px Consolas;color:#66848c}.b7-bar-hit{position:absolute;inset:7px 0 16px;border:0;background:transparent;cursor:pointer;z-index:4}.b7-bar-tooltip{position:absolute;left:50%;bottom:38%;transform:translate(-50%,8px);width:170px;border-radius:8px;border:1px solid rgba(98,196,196,.18);background:rgba(5,23,31,.96);box-shadow:0 13px 32px rgba(0,0,0,.34);padding:7px 8px;opacity:0;pointer-events:none;transition:.16s;z-index:8}.b7-bar-wrap:hover .b7-bar-tooltip,.b7-bar-wrap:focus-within .b7-bar-tooltip{opacity:1;transform:translate(-50%,0)}.b7-bar-tooltip strong{display:block;font-size:6px;color:#b8d3d5}.b7-bar-tooltip small{display:block;font-size:4.5px;color:#6c9299;margin:2px 0}.b7-bar-tooltip em{display:block;font-style:normal;font:600 4.3px Consolas;line-height:1.4;color:#7c979d}.b7-x-title{height:15px;display:grid;place-items:center;font-size:4.3px;letter-spacing:.8px;color:#536f77}.b7-table{height:92px;max-height:92px!important;margin-top:7px}.b7-table table{font-size:8px}.b7-table th,.b7-table td{padding:5px 7px}.b7-table tbody tr{cursor:pointer}.b7-table tbody tr.selected td{background:rgba(76,192,190,.08);color:#a8d0cd}.b7-compare-side{padding:13px;display:flex;flex-direction:column;min-height:0;overflow:auto;background:linear-gradient(160deg,rgba(11,37,49,.96),rgba(5,22,31,.95))}.b7-compare-side::-webkit-scrollbar{width:3px}.b7-compare-side::-webkit-scrollbar-thumb{background:#274f5e;border-radius:4px}.b7-compare-status{height:52px;border-radius:9px;border:1px solid rgba(120,191,202,.08);background:rgba(7,27,36,.54);display:grid;grid-template-columns:31px 1fr;gap:7px;align-items:center;padding:7px 8px;margin:6px 0}.b7-compare-status>span{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:rgba(59,163,169,.06);color:#61aeb4}.b7-compare-status .ui-svg{width:14px}.b7-compare-status.done{border-color:rgba(77,212,148,.14);background:rgba(24,76,54,.08)}.b7-compare-status.done>span{color:#59dc9d;background:rgba(65,205,136,.07)}.b7-compare-status small{display:block;font-size:4.4px;color:#5c7780;letter-spacing:.8px}.b7-compare-status b{display:block;font-size:6.6px;color:#93abb0;margin-top:2px}.b7-compare-btn,.b7-newexp-btn{width:100%;min-height:35px;margin-top:5px;font-size:7.2px}.b7-best{min-height:63px;border-radius:9px;border:1px solid rgba(236,190,75,.14);background:linear-gradient(145deg,rgba(91,68,21,.13),rgba(10,33,37,.52));display:grid;grid-template-columns:31px 1fr;gap:7px;align-items:center;padding:8px;margin-top:7px}.b7-best>span{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:rgba(236,190,75,.08);color:#e0bd5a}.b7-best .ui-svg{width:15px}.b7-best small{display:block;font-size:4px;line-height:1.2;letter-spacing:.5px;color:#9a8146}.b7-best b{display:block;font:900 7px Consolas;color:#d3b75e;margin:2px 0}.b7-best em{display:block;font-style:normal;font-size:4.4px;color:#77775f}.b7-question-box{padding:8px 9px;border-radius:9px;background:rgba(9,31,40,.55);border:1px solid rgba(117,190,202,.06);margin-top:7px}.b7-question-box small{display:block;font-size:4.2px;letter-spacing:.8px;color:#5e7d86}.b7-question-box b{display:block;font-size:6.2px;color:#99b4ba;margin:3px 0}.b7-question-box p{font-size:5px;line-height:1.4;color:#667f87;margin:0}.b7-pair-wrap{margin-top:7px}.b7-pair-wrap>small{display:block;font-size:4.2px;letter-spacing:.8px;color:#5c7c85;margin-bottom:4px}.b7-pair-empty{min-height:45px;border-radius:8px;border:1px dashed rgba(111,184,196,.08);display:grid;grid-template-columns:23px 1fr;gap:6px;align-items:center;padding:6px;color:#617d85}.b7-pair-empty>span{width:21px;height:21px;display:grid;place-items:center}.b7-pair-empty .ui-svg{width:11px}.b7-pair-empty p{font-size:4.8px;line-height:1.35;margin:0}.b7-pair{border-radius:8px;border:1px solid rgba(112,188,199,.08);background:rgba(6,25,33,.5);overflow:hidden}.b7-pair-head{height:25px;display:grid;grid-template-columns:1fr 27px 1fr;align-items:center;text-align:center;font-size:5px;color:#85a5ab;background:rgba(22,59,68,.25)}.b7-pair-head i{font-style:normal;font:900 5px Consolas;color:#e1bd59}.b7-pair-row{height:20px;display:grid;grid-template-columns:1fr 65px 1fr;align-items:center;text-align:center;border-top:1px solid rgba(111,179,191,.04)}.b7-pair-row span{font-size:4px;color:#536f77}.b7-pair-row b{font:700 4.7px Consolas;color:#879fa5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px}.b7-delta{height:29px;border-top:1px solid rgba(233,187,72,.09);display:flex;justify-content:space-between;align-items:center;padding:5px 7px;background:rgba(88,65,19,.06)}.b7-delta small{font-size:3.9px;color:#7c6b41}.b7-delta b{font:900 6px Consolas;color:#d2b356}.b7-note-label{display:flex;justify-content:space-between;font-size:4.2px;letter-spacing:.7px;color:#5c7881;margin-top:7px}.b7-note-label span{letter-spacing:0;color:#4c6870}.b7-note{min-height:52px;resize:none;border-radius:8px;border:1px solid rgba(115,187,198,.08);background:rgba(5,22,30,.65);color:#9db5ba;padding:7px;font:500 5.5px/1.4 Segoe UI,Arial;margin-top:4px;outline:none}.b7-note:focus{border-color:rgba(84,202,197,.23)}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b7-input-card,.b7-formula-card,.b7-bar,.b7-scenario-card,.b7-save-fly{transition:none!important}.b7-formula-result.calculating strong,.b7-analysis-status.working>span{animation:none!important}}

/* =========================================================
   B8 — PROFESSIONAL EVALUATION, REFLECTION & FINAL REPORT
   Scene 10
   ========================================================= */
.b8-eval{padding-bottom:64px;overflow:hidden;position:relative}
.b8-eval-head{height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:8px;padding:0 2px}
.b8-eval-head .h2{font-size:24px;margin:1px 0 3px}.b8-eval-head p{margin:0;color:#79949f;font-size:8px}.b8-eval-badge,.b8-lock-badge{min-width:205px;height:46px;border-radius:10px;border:1px solid rgba(91,202,199,.11);background:rgba(10,38,49,.66);display:grid;grid-template-columns:34px 1fr;gap:7px;align-items:center;padding:6px 9px}.b8-eval-badge>span,.b8-lock-badge>.ui-svg{width:30px;height:30px;border-radius:8px;background:rgba(88,204,198,.07);display:grid;place-items:center;color:#64d9d2}.b8-eval-badge .ui-svg{width:15px}.b8-eval-badge small,.b8-lock-badge span{display:block;font-size:4.7px;letter-spacing:.8px;color:#60818b}.b8-eval-badge b{display:block;font-size:7px;color:#9ac4c3;margin-top:2px}.b8-eval-badge.complete{border-color:rgba(80,215,145,.18);background:rgba(25,76,57,.16)}.b8-eval-badge.complete>span{color:#5add9d;background:rgba(80,215,145,.08)}
.b8-lab-progress{height:36px;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin-bottom:9px}.b8-progress-step{position:relative;display:grid;grid-template-columns:20px 1fr;gap:4px;align-items:center;padding:4px 6px;border:1px solid rgba(113,174,188,.06);border-radius:7px;background:rgba(7,26,36,.45);min-width:0}.b8-progress-step span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:900 5.6px Consolas;color:#68828b;background:#102d39}.b8-progress-step .ui-svg{width:9px}.b8-progress-step b{font-size:5.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#68838c}.b8-progress-step.done span{color:#56d79a;background:rgba(63,192,129,.08)}.b8-progress-step.done b{color:#779d8d}.b8-progress-step.active{border-color:rgba(91,218,210,.16);background:linear-gradient(145deg,rgba(32,101,101,.12),rgba(7,29,38,.52))}.b8-progress-step.active span{background:#3dbdb8;color:#032129;box-shadow:0 0 12px rgba(61,189,184,.18)}.b8-progress-step.active b{color:#a8d8d5}
.b8-quiz-layout{height:calc(100% - 111px);display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;min-height:0}.b8-quiz-main,.b8-eval-side{min-height:0}.b8-question-card{height:100%;padding:16px 18px!important;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(155deg,rgba(12,38,55,.97),rgba(5,20,30,.95));border-color:rgba(102,204,206,.11);overflow:auto}.b8-question-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.b8-topic{display:inline-flex;padding:4px 7px;border-radius:6px;background:rgba(67,194,190,.07);border:1px solid rgba(67,194,190,.1);font-size:5.4px;letter-spacing:.9px;color:#72cbc8;font-weight:800}.b8-question-top .quiz-progress{margin-top:6px;font-size:6.2px;letter-spacing:1px}.b8-question-count{font:900 28px/1 Consolas;color:rgba(104,218,211,.11)}.b8-quiz-progress{margin:7px 0 9px;height:5px}.b8-question-card .question{font-size:17px;line-height:1.35;margin:8px 0 12px;max-width:760px}.b8-answers{gap:7px}.b8-answers .answer{min-height:46px;padding:8px 10px;display:grid;grid-template-columns:26px 1fr auto;gap:8px;align-items:center;border-radius:10px;font-size:8px;line-height:1.25;transform:none}.b8-answers .answer:hover{transform:translateX(3px)}.b8-answer-letter{width:24px;height:24px;border-radius:7px;background:rgba(77,154,174,.08);display:grid;place-items:center;font:900 8px Consolas;color:#80aab3}.b8-answer-state{font-size:5px;letter-spacing:.6px;white-space:nowrap;color:#72dca4}.b8-answers .answer.wrong .b8-answer-state{color:#e7b462}.b8-answers .answer.correct:after{content:"";position:absolute;inset:auto 8px 5px 8px;height:1px;background:linear-gradient(90deg,transparent,rgba(92,222,151,.28),transparent)}.b8-question-card .feedback{min-height:42px;padding:8px 10px;margin-top:8px;border-radius:9px;display:none;grid-template-columns:105px 1fr;gap:8px;align-items:center;font-size:7px;line-height:1.35}.b8-question-card .feedback.show{display:grid}.b8-question-card .feedback b{font-size:6.5px;letter-spacing:.5px}.b8-question-card .feedback span{color:#9eb6bd}.b8-quiz-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.b8-quiz-actions .btn{min-height:36px;padding:8px 11px;font-size:7.5px}.b8-eval-side{overflow:hidden}.b8-side-card{height:100%;padding:13px!important;overflow:auto;background:linear-gradient(155deg,rgba(10,34,48,.94),rgba(5,20,29,.92))}
.b8-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.b8-summary-grid>div{min-height:59px;border-radius:9px;padding:7px 8px;background:rgba(7,28,38,.6);border:1px solid rgba(113,178,192,.07);display:flex;flex-direction:column;justify-content:center;min-width:0}.b8-summary-grid small{font-size:4.6px;letter-spacing:.7px;color:#66838d}.b8-summary-grid strong{font:900 11px Consolas;color:#a7d5d2;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.b8-summary-grid strong.textual{font:800 6.5px/1.3 Segoe UI,Arial;color:#b5cad0;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.b8-summary-grid em{font-size:4.8px;font-style:normal;color:#607a84;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.b8-summary-grid.compact>div{min-height:53px}.b8-summary-grid.compact strong{font-size:9px}
.b8-mini-chart{height:115px;border:1px solid rgba(110,181,194,.07);border-radius:9px;background:linear-gradient(180deg,rgba(10,38,47,.32),rgba(4,18,25,.44));padding:8px 8px 5px;display:flex;flex-direction:column}.b8-mini-bars{flex:1;display:flex;align-items:flex-end;justify-content:center;gap:7px;min-height:0;border-bottom:1px solid rgba(105,164,177,.08);padding:3px 4px 0}.b8-mini-bar{width:min(34px,16%);height:100%;border:0;background:transparent;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;cursor:pointer;color:#6f939c;padding:0}.b8-mini-bar i{display:block;width:18px;min-height:4px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#5ed9d1,#27869e);box-shadow:0 0 12px rgba(70,194,197,.08);transition:.2s}.b8-mini-bar:hover i{filter:brightness(1.14);transform:scaleX(1.08)}.b8-mini-bar span{font:700 5px Consolas}.b8-mini-chart>small{font-size:4.5px;color:#5d7882;text-align:center;padding-top:4px}.b8-mini-empty{font-size:6px;color:#68838c;padding:12px;text-align:center}.b8-hyp-card{margin-top:7px;padding:8px 9px;border-left:2px solid #ddac4c;border-radius:7px;background:rgba(218,165,70,.04)}.b8-hyp-card small{display:block;font-size:4.5px;letter-spacing:.8px;color:#a98342}.b8-hyp-card b{display:block;font-size:6.6px;color:#c9bd9e;margin:3px 0}.b8-hyp-card span{font-size:4.6px;color:#7d7056}.b8-quiz-note{display:grid;grid-template-columns:20px 1fr;gap:6px;align-items:start;margin-top:7px;padding:7px;border-radius:7px;background:rgba(59,143,150,.04);border:1px solid rgba(72,167,170,.06)}.b8-quiz-note .ui-svg{width:13px;color:#61bab8}.b8-quiz-note p{margin:0;font-size:5.4px;line-height:1.4;color:#6d8a93}
.b8-result-grid{height:calc(100% - 111px);display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;min-height:0;overflow:hidden}.b8-result-left,.b8-result-right{min-height:0;overflow:auto;padding-right:2px;display:flex;flex-direction:column;gap:10px}.b8-score-card,.b8-reflection-card,.b8-summary-card,.b8-procedure-card,.b8-completion-card{padding:13px!important;background:linear-gradient(155deg,rgba(10,34,48,.95),rgba(5,20,29,.94));border-color:rgba(107,183,195,.09)}.b8-score-card{flex:0 0 auto}.b8-score-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.b8-score-head .h2{font-size:18px}.b8-score-ring{--score:0;width:90px;height:90px;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(#57d7d1 calc(var(--score)*1%),#183947 0);box-shadow:0 13px 30px rgba(0,0,0,.28)}.b8-score-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#071e2d;border:1px solid rgba(120,186,198,.08)}.b8-score-ring strong{font:900 24px Consolas;color:#d8f4ef;z-index:2;transform:translateY(-4px)}.b8-score-ring small{position:absolute;z-index:2;top:57px;font-size:5px;color:#67858d}.b8-score-ring.revealing{animation:b8ScorePulse .85s ease}.b8-score-ring.settled{box-shadow:0 0 0 1px rgba(72,211,171,.12),0 14px 34px rgba(0,0,0,.3)}@keyframes b8ScorePulse{45%{transform:scale(1.045);filter:brightness(1.12)}}.b8-score-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:8px 0}.b8-score-stats>div{border-radius:8px;padding:6px 8px;background:rgba(6,26,36,.55);border:1px solid rgba(104,167,180,.06);display:flex;justify-content:space-between;align-items:center}.b8-score-stats small{font-size:5px;letter-spacing:.7px;color:#627f89}.b8-score-stats b{font:900 9px Consolas;color:#9ad2ce}.b8-score-feedback{font-size:6.8px;line-height:1.45;color:#8fa9b0;margin:6px 0 9px}.b8-score-card .btn{min-height:34px;font-size:7px;padding:7px 10px}
.b8-reflection-card{flex:1;min-height:300px}.b8-hypothesis-line{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:center;margin:6px 0 8px;padding:7px 9px;border-radius:8px;background:rgba(227,174,76,.04);border-left:2px solid rgba(227,174,76,.48)}.b8-hypothesis-line small{font-size:5px;letter-spacing:.7px;color:#9b7d4a}.b8-hypothesis-line b{font-size:6.8px;color:#c3b898}.b8-section-label{display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:center}.b8-section-label>span{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:rgba(72,186,182,.06);color:#5dc8c3}.b8-section-label .ui-svg{width:13px}.b8-section-label small{display:block;font-size:4.6px;letter-spacing:.7px;color:#62838c}.b8-section-label b{display:block;font-size:6.6px;color:#9eb8be;margin-top:2px}.b8-reflection-options{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:7px 0 10px}.b8-reflect-btn{min-height:43px;border-radius:8px;border:1px solid rgba(108,172,185,.08);background:rgba(7,28,38,.55);color:#869fa6;padding:5px;display:grid;grid-template-columns:18px 1fr;gap:4px;align-items:center;text-align:left;cursor:pointer;transition:.18s}.b8-reflect-btn>span{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;background:rgba(74,158,164,.05)}.b8-reflect-btn .ui-svg{width:9px}.b8-reflect-btn b{font-size:4.8px;line-height:1.25}.b8-reflect-btn:hover{border-color:rgba(83,204,199,.23);transform:translateY(-1px)}.b8-reflect-btn.selected{border-color:rgba(245,194,77,.3);background:rgba(213,157,54,.08);color:#ddca9a;box-shadow:inset 0 0 0 1px rgba(245,194,77,.05)}
.b8-conclusion-head{display:grid;grid-template-columns:1fr 34px;gap:8px;align-items:center;margin:4px 0 6px}.b8-conclusion-head small{display:block;font-size:4.5px;letter-spacing:.7px;color:#647f88}.b8-conclusion-head b{display:block;font-size:6.3px;line-height:1.35;color:#a1b9bf;margin-top:2px}.b8-conclusion-head .mini-btn{width:32px;height:32px}.b8-conclusion-head .ui-svg{width:14px}.b8-conclusion{min-height:90px!important;height:90px!important;border-radius:9px!important;padding:8px 9px!important;font-size:7px!important;line-height:1.45!important;resize:none!important}.b8-conclusion:focus{outline:none;border-color:rgba(77,205,199,.32)!important;box-shadow:0 0 0 2px rgba(77,205,199,.04)}.b8-conclusion-meta{display:flex;justify-content:space-between;align-items:center;margin-top:4px;color:#66818a;font-size:5px}.b8-conclusion-meta b{font:800 6px Consolas;color:#7ba9ad}.b8-reflection-prompts{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:6px 0 8px}.b8-reflection-prompts span{font-size:4.8px;color:#6d858d;padding:5px 6px;border-radius:6px;background:rgba(255,255,255,.018)}.b8-finish-btn{width:100%;min-height:36px;font-size:7px}.b8-finish-btn.guided{background:rgba(27,63,74,.72);color:#829da5;border:1px solid rgba(106,169,182,.07);box-shadow:none}
.b8-summary-card{flex:0 0 auto}.b8-summary-card .b8-summary-grid{margin-top:7px}.b8-summary-card .b8-mini-chart{height:105px}.b8-data-btn{width:100%;min-height:33px;font-size:6.5px;margin-top:7px}.b8-procedure-card{flex:0 0 auto}.b8-procedure-row{display:grid;grid-template-columns:18px 1fr;gap:6px;align-items:start;margin-top:6px}.b8-procedure-row>span{width:17px;height:17px;border-radius:5px;background:rgba(87,185,181,.06);display:grid;place-items:center;font:800 5.5px Consolas;color:#66b9b5}.b8-procedure-row p{margin:0;font-size:5.5px;line-height:1.4;color:#708991}.b8-completion-card{flex:1;min-height:145px}.b8-completion-list{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 0}.b8-completion-list span{font-size:5.5px;padding:5px 6px;border-radius:6px;background:rgba(255,255,255,.018);color:#6b858d}.b8-completion-list span.done{color:#80bba0;background:rgba(69,166,112,.04)}.b8-completion-card .btn{width:100%;min-height:33px;font-size:6.5px;margin-top:5px}.b8-completion-card.complete{border-color:rgba(73,209,143,.16);background:linear-gradient(150deg,rgba(16,64,47,.32),rgba(5,22,28,.92))}.b8-bottom{bottom:10px}.b8-bottom .btn{min-height:36px;padding:8px 11px;font-size:7px}
.b8-result-view.score-intro .b8-score-card{animation:b8ResultIn .42s ease both}.b8-result-view.score-intro .b8-reflection-card{animation:b8ResultIn .42s .18s ease both}.b8-result-view.score-intro .b8-result-right{animation:b8ResultIn .42s .3s ease both}@keyframes b8ResultIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.b8-eval.intro-active .b8-eval-head{animation:b8EvalIntro .35s ease both}.b8-eval.intro-active .b8-lab-progress{animation:b8EvalIntro .35s .16s ease both}.b8-eval.intro-active .b8-quiz-layout{animation:b8EvalIntro .4s .32s ease both}@keyframes b8EvalIntro{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.b8-locked-body{height:calc(100% - 76px);display:grid;grid-template-columns:140px 1fr;gap:20px;align-items:center;padding:32px!important}.b8-lock-icon{width:120px;height:120px;border-radius:30px;background:linear-gradient(145deg,rgba(50,138,153,.12),rgba(17,62,75,.08));border:1px solid rgba(82,181,193,.11);display:grid;place-items:center;color:#5fb5bc}.b8-lock-icon .ui-svg{width:50px}.b8-locked-body .h2{font-size:25px}.b8-locked-body .lead{font-size:10px;max-width:620px}
.b8-data-modal{width:min(1040px,92vw);max-width:1040px;max-height:86vh;overflow:auto;padding:20px!important}.b8-data-modal .h2{font-size:25px}.b8-modal-chart{max-width:520px;margin:8px auto}.b8-data-table{max-height:270px}.b8-data-table table{min-width:790px}.b8-data-table tr.focused{background:rgba(245,192,76,.08);outline:1px solid rgba(245,192,76,.14)}.b8-data-table th{position:sticky;top:0;z-index:2}.b8-review-modal{width:min(920px,92vw);max-width:920px;max-height:88vh;overflow:hidden;padding:18px!important;display:flex;flex-direction:column}.b8-review-modal .h2{font-size:24px}.b8-review-list{overflow:auto;display:grid;gap:7px;padding-right:3px;margin:8px 0}.b8-review-item{padding:9px 10px;border-radius:9px;background:rgba(6,26,35,.62);border:1px solid rgba(114,174,186,.07);display:grid;grid-template-columns:1fr 1fr;gap:3px 10px}.b8-review-head{grid-column:1/-1;display:flex;gap:7px;align-items:center}.b8-review-head span{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;background:rgba(72,181,127,.08);color:#62d99c;font-weight:900}.b8-review-item.wrong .b8-review-head span{background:rgba(216,159,66,.08);color:#e3b25b}.b8-review-head b{font-size:6.3px;color:#9eb8bd}.b8-review-item p{grid-column:1/-1;margin:3px 0 5px;font-size:6.5px;line-height:1.35;color:#a4b8bd}.b8-review-item small{font-size:4.6px;color:#647d86}.b8-review-item strong{font-size:5.8px;line-height:1.3;color:#8cabb0}.b8-review-item em{grid-column:1/-1;font-size:5.4px;line-height:1.4;font-style:normal;color:#6f898f;padding-top:4px}.b8-restart-modal .lead{font-size:10px}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   B9 — FINAL POLISH / PRODUCTION READINESS
   ========================================================= */
:root{--focus:#9be9ff;--panel-edge:rgba(139,204,241,.22)}
button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus)!important;outline-offset:2px!important}
.icon-btn.music-toggle.active{border-color:rgba(255,212,90,.5);background:rgba(93,68,20,.52);color:var(--yellow);box-shadow:0 0 0 1px rgba(255,212,90,.08),0 8px 22px rgba(0,0,0,.16)}
.sm-root.transitioning:after{content:"";position:absolute;inset:0;z-index:2147483600;background:rgba(3,11,18,.12);backdrop-filter:blur(1px);pointer-events:all;animation:b9TransitionShield .3s ease both}@keyframes b9TransitionShield{0%{opacity:0}45%{opacity:1}100%{opacity:0}}
.scene.fadeout-home{display:block;animation:b9ExitHome .28s ease forwards}.scene.enter-home{animation:b9EnterHome .42s ease forwards}@keyframes b9ExitHome{to{opacity:0;transform:scale(.992)}}@keyframes b9EnterHome{from{opacity:0;transform:scale(1.008)}to{opacity:1;transform:none}}
.toast.success,.toast.good{border-color:rgba(83,225,154,.48);background:linear-gradient(145deg,#194b38,#0f3529)}.toast.warning,.toast.warn{border-color:rgba(255,185,90,.5);background:linear-gradient(145deg,#523b22,#382817)}.toast.error{border-color:rgba(255,111,115,.5);background:linear-gradient(145deg,#4b2528,#33191b)}.toast.info{border-color:rgba(89,228,220,.35);background:linear-gradient(145deg,#123b55,#0a2738)}
.glass,.card,.modal{border-color:var(--panel-edge)}
.b9-safe-fallback{max-width:720px;margin:10vh auto;padding:34px}
/* Closing scene */
.b9-closing{overflow:hidden}.b9-closing-lab{background:radial-gradient(circle at 68% 20%,rgba(61,183,255,.16),transparent 30%),linear-gradient(145deg,#07131f,#0a2333 62%,#07151e);border:1px solid rgba(139,204,241,.13)}
.b9-lab-backdrop{position:absolute;inset:0;opacity:.38;filter:saturate(.85);pointer-events:none}.b9-window{position:absolute;right:8%;top:8%;width:27%;height:25%;border:7px solid #193b50;background:linear-gradient(#5daed0,#9ed6e7 56%,#567855 57%);box-shadow:0 0 70px rgba(133,214,245,.08)}.b9-bench{position:absolute;left:5%;right:5%;bottom:7%;height:24%;background:linear-gradient(#6f6354 0 10%,#1e303c 10%);border-radius:7px 7px 16px 16px;box-shadow:0 30px 55px rgba(0,0,0,.38)}.b9-solar{left:12%;bottom:20%;transform:skewY(-5deg) rotate(-5deg) scale(.82)}.b9-meter{right:17%;bottom:17%;transform:scale(.82)}.b9-meter .display{font-size:12px}.b9-lamp{right:7%;bottom:19%;transform:scale(.78)}.b9-lamp .bulb{background:#ffefb9;box-shadow:0 0 26px rgba(255,224,126,.22)}
.b9-closing-card{width:min(1030px,calc(100% - 64px));max-width:1030px;text-align:left;padding:28px 30px;background:linear-gradient(155deg,rgba(10,32,49,.94),rgba(5,20,31,.93));box-shadow:0 34px 100px rgba(0,0,0,.45)}.b9-close-brand{display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:center;padding-bottom:16px;border-bottom:1px solid rgba(139,204,241,.12)}.b9-close-brand .brand-mark{width:54px;height:54px;border-radius:16px}.b9-close-brand .brand-mark:before{width:26px;height:17px;left:14px;top:20px}.b9-close-brand .h2{font-size:34px;margin:3px 0 4px}.b9-close-brand p{margin:0;color:#a9c0ce;font-size:13px;line-height:1.45}
.b9-completion{display:grid;grid-template-columns:1.1fr 2fr .8fr 1.3fr;gap:10px;align-items:center;margin:14px 0;padding:12px 14px;border-radius:14px;background:rgba(7,27,41,.72);border:1px solid rgba(139,204,241,.1)}.b9-completion.complete{border-color:rgba(83,225,154,.18);background:linear-gradient(145deg,rgba(18,70,51,.28),rgba(7,29,39,.7))}.b9-completion small,.b9-source-strip b,.b9-info-card small{display:block;font-size:9px;letter-spacing:1px;color:#6f96a8;font-weight:800}.b9-completion b{font-size:13px;color:#dcecf2}.b9-completion-checks{display:flex;gap:6px;flex-wrap:wrap}.b9-completion-checks span{font-size:10px;padding:5px 7px;border-radius:8px;background:rgba(255,255,255,.025);color:#77909d}.b9-completion-checks span.done{color:#8fe3b8;background:rgba(83,225,154,.06)}.b9-score strong,.b9-best strong{display:block;font:900 18px Consolas,monospace;color:#d7f5f2;margin-top:3px}.b9-score em{font-size:10px;color:#6e929e;font-style:normal;margin-left:2px}.b9-best strong{color:var(--yellow)}
.b9-info-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:12px}.b9-info-card{display:grid;grid-template-columns:42px 1fr;gap:11px;padding:14px;border-radius:14px;background:linear-gradient(145deg,rgba(13,43,62,.72),rgba(6,25,37,.68));border:1px solid rgba(139,204,241,.11)}.b9-info-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(89,228,220,.06);color:var(--cyan)}.b9-info-icon .ui-svg{width:20px}.b9-info-card h3{font-size:15px;margin:4px 0 6px}.b9-info-card p{font-size:11px;line-height:1.5;color:#8fa9b7;margin:0}.b9-source-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.b9-source-strip span{padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.025);font-size:10px;color:#a9bec9}.b9-final-actions{justify-content:flex-end;margin-top:15px}.b9-final-actions .btn{min-height:42px}.b9-ack-panel{display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center;margin:14px 0;padding:13px 15px;border-radius:14px;background:rgba(42,120,84,.14);border:1px solid rgba(83,225,154,.2)}.b9-ack-panel>span{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(83,225,154,.08);color:var(--green)}.b9-ack-panel b{font-size:16px}.b9-ack-panel p{margin:3px 0 0;font-size:11px;color:#93b2a2}.seq-close{opacity:0;animation:b9CloseIn .4s cubic-bezier(.2,.8,.2,1) forwards}.seq-close.c1{animation-delay:.08s}.seq-close.c2{animation-delay:.2s}.seq-close.c3{animation-delay:.32s}.seq-close.c4{animation-delay:.44s}.seq-close.c5{animation-delay:.56s}@keyframes b9CloseIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* B8 readability final pass */
.b8-eval-head p,.b8-question-card .question,.b8-score-feedback,.b8-procedure-row p,.b8-conclusion-head b,.b8-review-item p{color:#afc5cc}
.b8-question-card .question{font-size:15px!important;line-height:1.38!important}.b8-answers .answer{font-size:11px!important;min-height:52px!important}.b8-topic,.quiz-progress,.b8-answer-state,.b8-score-stats small,.b8-summary-grid small,.b8-section-label small,.b8-conclusion-head small,.b8-conclusion-meta,.b8-reflection-prompts span,.b8-procedure-row p,.b8-completion-list span{font-size:9px!important}.b8-score-feedback,.b8-hypothesis-line b,.b8-section-label b,.b8-conclusion-head b,.b8-review-head b,.b8-review-item strong,.b8-review-item em{font-size:10px!important}.b8-conclusion{font-size:11px!important;min-height:100px!important;height:100px!important}.b8-reflect-btn b{font-size:8px!important}.b8-data-btn,.b8-completion-card .btn,.b8-bottom .btn,.b8-score-card .btn{font-size:10px!important}.b8-score-ring small{font-size:8px!important}.b8-score-ring strong{font-size:25px!important}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.orb,.cloud,.solar-glint,.ambient-light{animation:none!important}}
/* B9 compact desktop evaluation pass: keep critical result/reflection actions visible at school-laptop heights */

/* responsive media removed by fixed-16:9 v2.8 */


/* FINAL 1.1.2 — Scenario add hotfix */
.b7-chart-gate.needs-scenario{grid-template-columns:70px minmax(0,1fr)}
.b7-chart-gate.needs-scenario>div{display:flex;flex-direction:column;align-items:flex-start}
.b7-gate-add{margin-top:12px;min-height:36px;padding:9px 14px;font-size:7px;position:relative;z-index:4;pointer-events:auto}
.b7-gate-add .ui-svg{width:13px!important}

/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   Scene 03 — Native 3D equipment inspection hotfix v1.2
   ========================================================= */
.b3-tool-grid{grid-template-rows:repeat(3,minmax(0,1fr));top:14%;bottom:18%;gap:6px}
.b3-tool{padding:4px 5px!important;gap:1px!important}.b3-tool .equip-visual{width:62px;height:45px;transform:scale(.76)}
.b3-tool:hover .equip-visual{transform:translateY(-2px) scale(.82)!important}.b3-tool .tool-name{font-size:7.6px!important;line-height:1.05}
.b3-tool small{font-size:4.8px!important}.native3d-mini{position:absolute;right:6px;bottom:5px;font:800 5px/1 Consolas;color:#69dcd7;border:1px solid rgba(94,218,213,.18);background:rgba(32,121,126,.12);border-radius:5px;padding:3px 4px;letter-spacing:.5px}
.ev-holder{position:relative;width:56px;height:48px}.ev-holder i{position:absolute;left:14px;top:4px;width:28px;height:30px;border-radius:50% 50% 8px 8px;background:linear-gradient(#8a9398,#444c50);border:2px solid #293036}.ev-holder b{position:absolute;left:7px;bottom:2px;width:43px;height:10px;border-radius:5px;background:#34434a;border:1px solid #5c6b72}
.ev-sensor-head{position:relative;width:58px;height:46px}.ev-sensor-head i{position:absolute;left:14px;top:4px;width:30px;height:20px;border-radius:50% 50% 38% 38%;background:radial-gradient(circle at 45% 35%,#fafafa,#cbd7da 62%,#69787d);border:2px solid #39474c}.ev-sensor-head b{position:absolute;left:27px;top:24px;width:5px;height:18px;background:#68777d}
.ev-terminal{width:70px;height:39px;border-radius:6px;background:linear-gradient(145deg,#69777c,#28343a);border:2px solid #87969c;display:flex;align-items:center;justify-content:space-around;position:relative}.ev-terminal i{width:12px;height:12px;border-radius:50%;background:#151a1d;border:3px solid #c14951}.ev-terminal i:nth-child(2){border-color:#1c2226}.ev-terminal i:nth-child(3){border-color:#4a5458}.ev-terminal span{position:absolute;bottom:-10px;font:700 5px Consolas;color:#8faab4}
.ev-table{position:relative;width:78px;height:50px}.ev-table b{position:absolute;left:3px;right:3px;top:7px;height:10px;border-radius:3px;background:linear-gradient(#8b765f,#62503e);border:1px solid #a28e77}.ev-table i{position:absolute;top:17px;width:7px;height:30px;background:#34444c}.ev-table i:nth-of-type(1){left:12px}.ev-table i:nth-of-type(2){right:12px}
.ev-outdoor-lamp{position:relative;width:66px;height:64px}.ev-outdoor-lamp i{position:absolute;left:28px;top:18px;width:6px;height:44px;background:#59686f}.ev-outdoor-lamp b{position:absolute;left:9px;top:4px;width:48px;height:22px;background:#0d628c;border:4px solid #7f929b;transform:rotate(-8deg)}.ev-outdoor-lamp span{position:absolute;left:31px;top:25px;width:27px;height:11px;border-radius:0 8px 8px 8px;background:#d4c580;box-shadow:0 0 9px rgba(244,214,117,.26)}
.native3d-viewport{position:absolute;left:12px;right:12px;top:12px;bottom:58px;border-radius:14px;z-index:5;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(110,222,216,.09)}
.b3-tool-focus.native3d-active .fallback-equip{opacity:0;visibility:hidden}.b3-tool-focus.native3d-active .inspection-orbit{opacity:.22}.b3-tool-focus.native3d-active .focus-pedestal{opacity:.72}
.native3d-toolbar{position:absolute;right:12px;bottom:10px;display:flex;gap:5px;z-index:9}.native3d-toolbar .mini-btn{height:30px;min-width:34px;width:auto;padding:0 8px;font:800 10px Consolas;background:rgba(7,29,42,.9);border-color:rgba(83,203,201,.18)}
#native3dStatus.active{color:#71e1d9}.focus-id{max-width:200px}.focus-id span{white-space:nowrap}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   Scene 03 Inspection Viewer Hotfix v1.2.2
   90% screen modal + full 360° pointer/touch orbit + safe-fit framing
   ========================================================= */
.modal-wrap.inspection-open{padding:0;align-items:center;justify-content:center}
.b3-tool-modal{
  width:90vw!important;
  height:90vh!important;
  max-width:none!important;
  max-height:none!important;
  box-sizing:border-box;
  padding:clamp(16px,1.5vw,24px)!important;
  overflow:hidden;
}
.b3-tool-modal>.close{z-index:40}
.b3-tool-modal .b3-modal-grid{
  width:100%;
  height:100%;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)!important;
  grid-template-rows:minmax(0,1fr);
  gap:clamp(16px,1.6vw,28px)!important;
  align-items:stretch;
}
.b3-tool-modal .b3-tool-focus{
  width:100%;
  height:100%!important;
  min-height:0;
  border-radius:18px;
}
.b3-tool-modal .tool-info-pane{
  height:100%;
  max-height:none!important;
  min-height:0;
  overflow-y:auto;
  padding:4px 6px 4px 2px;
}
.b3-tool-modal .tool-info-pane .h2{font-size:clamp(28px,2.2vw,40px)}
.b3-tool-modal .tool-info-pane .info-block{font-size:clamp(10px,.82vw,14px);line-height:1.55;padding:clamp(11px,1vw,16px)}
.b3-tool-modal .inspection-actions{position:sticky;bottom:-4px;z-index:20;margin-top:auto;padding:14px 0 2px;background:linear-gradient(180deg,transparent 0,#071d2a 32%,#071d2a 100%)}
.native3d-viewport{
  pointer-events:auto!important;
  cursor:grab;
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
  outline:none;
}
.native3d-viewport.dragging{cursor:grabbing;box-shadow:inset 0 0 0 1px rgba(110,222,216,.26),0 0 0 2px rgba(110,222,216,.05)}
.native3d-viewport:focus-visible{box-shadow:inset 0 0 0 2px rgba(245,198,80,.5),0 0 0 3px rgba(245,198,80,.08)}
.native3d-drag-hint{
  position:absolute;
  left:50%;
  top:18px;
  transform:translateX(-50%);
  z-index:9;
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(4,23,34,.78);
  border:1px solid rgba(101,219,213,.15);
  backdrop-filter:blur(6px);
  pointer-events:none;
  opacity:.9;
}
.native3d-drag-hint b{font:800 7px Consolas;color:#73ddd7;letter-spacing:.8px;white-space:nowrap}
.native3d-drag-hint span{font-size:7px;color:#8dadb7;white-space:nowrap}
.native3d-toolbar{left:50%!important;right:auto!important;bottom:12px!important;transform:translateX(-50%);gap:7px!important}
.native3d-toolbar .mini-btn{height:36px!important;min-width:40px!important;padding:0 11px!important;font-size:13px!important;border-radius:9px}
.native3d-toolbar .reset3d{min-width:58px!important;font:800 9px Consolas!important;color:#79ddd7}
.focus-id{bottom:16px!important;left:16px!important;max-width:230px!important}
.focus-id span{font-size:7px!important}.focus-id b{font-size:9px!important}


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* Extra framing margin so rotated 3D models remain fully visible at extreme angles. */
.b3-tool-modal .native3d-viewport{left:18px;right:18px;top:18px;bottom:66px}

/* responsive media removed by fixed-16:9 v2.8 */


/* ========================================================================== */
/* SolarMeter v1.3 — Scene 05 Full 15-Asset 3D Practicum Assembly             */
/* ========================================================================== */
.b5-full-assembly{padding-bottom:66px;overflow:hidden}.b5-head-pro{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:10px}.b5-head-pro .h2{font-size:30px;margin:2px 0 4px}.b5-head-pro p{margin:0;color:#9fb5c3;font-size:11px;max-width:690px;line-height:1.45}.b5-head-pro .b5-config-strip{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:6px;min-width:390px}.b5-head-pro .b5-config-strip span{padding:7px 9px;border-radius:10px;background:rgba(8,30,44,.72);border:1px solid rgba(116,202,218,.10)}.b5-head-pro .b5-config-strip small{display:block;font-size:5.5px;letter-spacing:1px;color:#6f9cac}.b5-head-pro .b5-config-strip b{font-size:8px;color:#dbeef2}
.b5-full-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;height:calc(100% - 88px);min-height:0}.b5-assembly-stage{position:relative;overflow:hidden;min-width:0;background:linear-gradient(180deg,rgba(9,32,46,.96),rgba(5,18,29,.95));border-color:rgba(88,196,211,.16)}.b5-native-stage{position:absolute;inset:0;overflow:hidden;border-radius:18px;background:radial-gradient(circle at 56% 42%,rgba(30,115,135,.12),transparent 38%),linear-gradient(180deg,rgba(8,31,45,.88),rgba(4,17,27,.93));touch-action:none}.b5-stage-grid{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(116,206,215,.36) 1px,transparent 1px),linear-gradient(90deg,rgba(116,206,215,.36) 1px,transparent 1px);background-size:34px 34px}.b5-stage-benchline{position:absolute;left:17%;right:5%;bottom:10%;height:26%;border-radius:22px 22px 8px 8px;background:linear-gradient(180deg,rgba(103,123,132,.12),rgba(16,28,35,.28));border-top:1px solid rgba(181,215,220,.14);box-shadow:0 28px 55px rgba(0,0,0,.24)}.b5-stage-title{position:absolute;left:16px;top:13px;right:15px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.b5-stage-title span{font-size:6.5px;letter-spacing:1.25px;color:#75d8d3;font-weight:800}.b5-stage-title span i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px;background:#62deb6;box-shadow:0 0 12px rgba(98,222,182,.55)}.b5-stage-title b{font-size:6px;letter-spacing:.8px;color:#7b9eaa}
.b5-component-dock{position:absolute;left:2.2%;top:11%;width:14%;height:35%;border-radius:15px;border:1px solid rgba(106,201,217,.17);background:linear-gradient(160deg,rgba(13,50,65,.73),rgba(5,22,33,.80));box-shadow:inset 0 0 35px rgba(48,172,184,.05),0 16px 32px rgba(0,0,0,.18);padding:10px;display:flex;flex-direction:column;align-items:center;text-align:center;z-index:4}.b5-component-dock:before{content:"3D";position:absolute;right:8px;top:7px;font:800 5px Consolas;color:#58ccc8;letter-spacing:.8px}.b5-component-dock>small{font-size:5.5px;letter-spacing:1px;color:#6ea9b5;margin-top:5px}.b5-component-dock>b{font-size:9px;line-height:1.2;margin:7px 0 4px;color:#edf8fa}.b5-component-dock>span{font-size:6.2px;line-height:1.35;color:#7f9eaa;margin-top:auto;margin-bottom:7px}.b5-active-grab{width:100%;min-height:38px;border-radius:10px;border:1px dashed rgba(91,219,211,.38);background:rgba(50,152,153,.10);color:#80e4dc;cursor:grab;touch-action:none;transition:.16s;position:relative}.b5-active-grab:hover{background:rgba(50,152,153,.18);border-color:rgba(91,219,211,.62);transform:translateY(-1px)}.b5-active-grab:active{cursor:grabbing;transform:scale(.98)}.b5-active-grab em{font-style:normal;font-size:6px;letter-spacing:1.1px;font-weight:900}.b5-complete-seal{margin-top:auto;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:rgba(56,164,112,.12);border:1px solid rgba(85,220,150,.28);color:#78dfae}.b5-complete-seal .ui-svg{width:20px}.b5-complete-seal strong{font-size:7px}
.b5-target-layer{position:absolute;inset:0;z-index:2;pointer-events:none}.b5-target-zone{position:absolute;border:1px dashed rgba(127,185,197,.17);border-radius:12px;background:rgba(24,81,95,.025);display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;padding:6px 7px;transition:.17s;pointer-events:none}.b5-target-zone span{font-size:5.3px;letter-spacing:.9px;font-weight:800;color:rgba(145,194,202,.42)}.b5-target-zone small{font-size:4.8px;color:rgba(133,169,178,.28);margin-top:2px}.b5-native-stage.assembly-dragging .b5-target-zone,.b5-target-layer.dragging .b5-target-zone{border-color:rgba(115,207,211,.28);background:rgba(53,152,157,.04)}.b5-target-zone.drag-over{border-color:#f4c85c!important;background:rgba(244,200,92,.13)!important;box-shadow:0 0 0 4px rgba(244,200,92,.04),inset 0 0 24px rgba(244,200,92,.05)}.b5-target-zone.current,.b5-target-zone.strong-hint{border-color:rgba(89,228,220,.76)!important;background:rgba(67,195,190,.11)!important;box-shadow:0 0 0 4px rgba(89,228,220,.04),0 0 24px rgba(89,228,220,.12)}.b5-target-zone.current span,.b5-target-zone.strong-hint span{color:#7ee4df}.b5-target-zone.wrong-drop{animation:b5WrongZone .32s ease;border-color:rgba(246,102,104,.68)!important;background:rgba(246,102,104,.10)!important}.b5-target-zone.correct-drop{animation:b5CorrectZone .45s ease}@keyframes b5WrongZone{25%{transform:translateX(-4px)}55%{transform:translateX(4px)}80%{transform:translateX(-2px)}}@keyframes b5CorrectZone{40%{box-shadow:0 0 0 7px rgba(90,222,163,.08);border-color:#5fe0a8}}
.b5-assembly-wires{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.b5-assembly-wires path{fill:none;stroke-width:5;opacity:0;stroke-linecap:round;filter:drop-shadow(0 0 7px rgba(0,0,0,.45));transition:opacity .35s}.b5-assembly-wires path.visible{opacity:.9}.b5-assembly-wires .red{stroke:#db404c}.b5-assembly-wires .black{stroke:#212b31;stroke-width:7;filter:drop-shadow(0 0 1px rgba(186,211,219,.22))}
.b5-installed-counter{position:absolute;left:2.4%;bottom:3%;display:flex;align-items:center;gap:8px;background:rgba(5,25,36,.78);border:1px solid rgba(97,198,210,.13);border-radius:10px;padding:7px 9px;z-index:3}.b5-installed-counter>.ui-svg{width:16px;color:#63d8d1}.b5-installed-counter small{display:block;font-size:4.8px;letter-spacing:.8px;color:#6e9aa7}.b5-installed-counter b{font-size:7px;color:#d9eef2}.b5-final-valid{position:absolute;left:31%;right:14%;bottom:4%;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(90deg,rgba(35,119,83,.18),rgba(37,148,109,.13));border:1px solid rgba(87,221,157,.29);box-shadow:0 12px 30px rgba(0,0,0,.23);z-index:5;animation:b5ValidIn .42s cubic-bezier(.2,.8,.2,1)}.b5-final-valid>.ui-svg{width:19px;color:#6fe2aa}.b5-final-valid small{display:block;font-size:4.8px;letter-spacing:1px;color:#78c9a2}.b5-final-valid b{font-size:8px;color:#dff8eb}@keyframes b5ValidIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.b5-assembly-coach{padding:12px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.b5-coach-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.b5-coach-top .b5-status-chip{margin:0;min-width:120px;padding:7px 8px}.b5-current-task{margin-top:9px;padding:11px;border-radius:13px;background:linear-gradient(145deg,rgba(12,44,58,.82),rgba(7,26,38,.74));border:1px solid rgba(102,190,204,.12)}.b5-current-task>small{font-size:5.5px;letter-spacing:1.15px;color:#65cbc7}.b5-current-task h3{font-size:15px;margin:5px 0;color:#edf8fa}.b5-current-task p{font-size:8px;line-height:1.48;color:#a9c0c9;margin:0}.b5-current-task.complete{border-color:rgba(83,217,151,.24);background:rgba(25,95,67,.10)}.b5-task-tip{margin-top:8px;display:flex;gap:6px;align-items:flex-start;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}.b5-task-tip .ui-svg{width:13px;min-width:13px;color:#e6be57}.b5-task-tip span{font-size:6.2px;line-height:1.4;color:#819da7}.b5-assessment{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:8px 0}.b5-assessment span{padding:7px 4px;border-radius:9px;text-align:center;background:rgba(7,27,39,.64);border:1px solid rgba(111,185,199,.09)}.b5-assessment small{display:block;font-size:4.6px;letter-spacing:.7px;color:#658a97}.b5-assessment b{font-size:8px;color:#d8ecf0}.b5-assembly-coach .b5-hint{min-height:34px;padding:7px 10px;font-size:8px}.b5-step-scroll{margin-top:8px;min-height:0;flex:1;overflow:auto;border:1px solid rgba(111,187,199,.09);border-radius:12px;background:rgba(5,22,32,.44);scrollbar-width:thin}.b5-step-scroll-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;padding:8px 9px;background:rgba(8,31,44,.96);border-bottom:1px solid rgba(255,255,255,.05)}.b5-step-scroll-head b,.b5-step-scroll-head span{font-size:5px;letter-spacing:1px;color:#779eaa}.b5-step-row{display:grid;grid-template-columns:26px 1fr;gap:7px;align-items:center;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.035);opacity:.52;transition:.15s}.b5-step-row>span{width:23px;height:23px;border-radius:7px;display:grid;place-items:center;background:rgba(28,75,91,.46);font:800 6px Consolas;color:#82a5ae}.b5-step-row>span .ui-svg{width:12px}.b5-step-row small{display:block;font-size:4.4px;letter-spacing:.8px;color:#698e99}.b5-step-row b{display:block;font-size:6.5px;color:#abc1c8;margin-top:1px}.b5-step-row.active{opacity:1;background:rgba(54,158,159,.08);box-shadow:inset 2px 0 #55cfc9}.b5-step-row.active>span{color:#7ce4dd;border:1px solid rgba(93,220,214,.24)}.b5-step-row.done{opacity:.86}.b5-step-row.done>span{background:rgba(43,139,94,.14);color:#72dea7}.b5-step-row.done b{color:#bdd8ce}.b5-assembly-coach .b5-procedure-note{margin-top:8px;padding:8px 9px}.b5-assembly-coach .b5-procedure-note b{font-size:5px}.b5-assembly-coach .b5-procedure-note p{font-size:5.8px;line-height:1.35;margin:3px 0 0}
.b5-assembly-stage.resetting{animation:b5AssemblyReset .42s ease}@keyframes b5AssemblyReset{45%{filter:brightness(.7);transform:scale(.995)}100%{filter:none;transform:none}}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b5-target-zone,.b5-active-grab,.b5-final-valid{animation:none!important;transition:none!important}}


/* ===== Scene 05 v1.4 — animated 2.5D practicum assembly ===== */
.b5-animated-assembly .b5-assembly-stage{background:linear-gradient(180deg,rgba(8,30,44,.98),rgba(4,16,26,.98))}
.b5-sim-stage{position:absolute;inset:0;overflow:hidden;border-radius:18px;background:radial-gradient(circle at 55% 42%,rgba(32,128,143,.12),transparent 40%),linear-gradient(180deg,rgba(8,31,45,.92),rgba(4,17,27,.96));touch-action:none;isolation:isolate}
.b5-sim-backwall{position:absolute;left:18%;right:5%;top:13%;height:47%;border-radius:18px;background:linear-gradient(160deg,rgba(19,54,68,.20),rgba(7,26,37,.12));border:1px solid rgba(137,207,216,.06);transform:perspective(900px) rotateX(1.5deg);z-index:0}.b5-sim-backwall i{position:absolute;left:8%;right:8%;height:1px;background:rgba(118,188,201,.05)}.b5-sim-backwall i:nth-child(1){top:26%}.b5-sim-backwall i:nth-child(2){top:52%}.b5-sim-backwall i:nth-child(3){top:78%}
.b5-sim-floor{position:absolute;left:16%;right:3%;bottom:5%;height:37%;clip-path:polygon(6% 0,95% 0,100% 100%,0 100%);background:linear-gradient(180deg,rgba(69,86,91,.08),rgba(3,13,20,.36));border-top:1px solid rgba(163,202,206,.12);z-index:0}
.b5-2d-dock{z-index:80;height:42%;width:15.5%;top:13%;overflow:visible}.b5-2d-dock:before{content:"2.5D";color:#74ddd7}.b5-2d-dock>span{margin-bottom:5px}.b5-dock-art{position:relative;margin-top:auto;width:100%;height:128px;border-radius:13px;border:1px dashed rgba(94,223,216,.30);background:radial-gradient(circle,rgba(73,194,191,.12),rgba(11,43,56,.38));display:grid;place-items:center;cursor:grab;touch-action:none;overflow:hidden;transition:.16s;box-shadow:inset 0 0 24px rgba(81,208,202,.04)}.b5-dock-art:hover{border-color:rgba(94,223,216,.62);box-shadow:0 0 0 4px rgba(92,221,213,.04),inset 0 0 30px rgba(81,208,202,.08);transform:translateY(-2px)}.b5-dock-art:active{cursor:grabbing}.b5-dock-art .equip-visual.large{position:absolute;inset:0;margin:auto;width:118px;height:100px;transform:scale(.72);filter:drop-shadow(0 15px 12px rgba(0,0,0,.32));z-index:3}.b5-dock-art em{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);font-style:normal;font-size:5.8px;letter-spacing:1.1px;color:#8debe4;font-weight:900;z-index:5;white-space:nowrap}.b5-grab-ring{position:absolute;width:80px;height:80px;border-radius:50%;border:1px dashed rgba(98,224,214,.28);animation:b5GrabRing 2.1s ease-in-out infinite;z-index:1}@keyframes b5GrabRing{50%{transform:scale(1.14);opacity:.45}}
.b5-installed-layer{position:absolute;inset:0;z-index:35;pointer-events:none}.b5-installed-part{position:absolute;left:var(--px);top:var(--py);z-index:var(--pz);width:94px;height:72px;transform:translate(-50%,-50%) rotate(var(--pr)) scale(var(--ps));transform-origin:center;filter:drop-shadow(0 10px 8px rgba(0,0,0,.32));will-change:transform}.b5-installed-part .equip-visual{width:94px;height:72px;transform:none!important;filter:none}.b5-installed-part .b5-installed-label{position:absolute;left:50%;top:78px;transform:translateX(-50%) scale(calc(1 / var(--ps)));transform-origin:top center;font-size:5px;letter-spacing:.45px;color:rgba(166,211,217,.52);white-space:nowrap;padding:2px 4px;border-radius:5px;background:rgba(4,17,25,.56);opacity:.72}.b5-installed-part.just-installed{animation:b5InstallLand .74s cubic-bezier(.15,.9,.2,1)}@keyframes b5InstallLand{0%{opacity:.2;transform:translate(-50%,calc(-50% - 20px)) rotate(var(--pr)) scale(calc(var(--ps)*1.05))}55%{opacity:1;transform:translate(-50%,calc(-50% + 4px)) rotate(var(--pr)) scale(calc(var(--ps)*.98))}72%{transform:translate(-50%,calc(-50% - 2px)) rotate(var(--pr)) scale(calc(var(--ps)*1.01))}100%{transform:translate(-50%,-50%) rotate(var(--pr)) scale(var(--ps))}}
.b5-installed-part.part-table{filter:drop-shadow(0 20px 14px rgba(0,0,0,.38))}.b5-installed-part.part-panel .ev-panel{transform:perspective(180px) rotateX(7deg) rotateZ(calc(-5deg + (var(--sm-panel-angle,0deg))))}.b5-installed-part.part-meter .ev-meter{box-shadow:0 0 0 1px rgba(100,216,217,.12),0 14px 22px rgba(0,0,0,.28)}.b5-installed-part.part-lamp .ev-lamp .lamp-halo{opacity:.72}.b5-installed-part.part-red,.b5-installed-part.part-black{opacity:.0;pointer-events:none}
.b5-target-layer{z-index:25}.b5-target-zone{pointer-events:none}.b5-sim-stage.assembly-dragging .b5-target-zone{pointer-events:auto}.b5-sim-stage.keyboard-pick .b5-target-zone{pointer-events:auto;cursor:pointer}.b5-target-zone.install-flash:after{content:"";position:absolute;inset:-8px;border-radius:16px;border:1px solid rgba(93,229,168,.62);animation:b5ZoneRing .65s ease-out}@keyframes b5ZoneRing{to{transform:scale(1.15);opacity:0}}
.b5-drag-layer{position:absolute;inset:0;z-index:110;pointer-events:none}.b5-tool-ghost{position:absolute;width:124px;height:102px;display:grid;place-items:center;filter:drop-shadow(0 22px 16px rgba(0,0,0,.42));will-change:left,top,transform;pointer-events:none}.b5-tool-ghost .equip-visual.large{width:124px;height:104px;transform:scale(.86)!important;filter:none}.b5-tool-ghost>span{position:absolute;bottom:-3px;left:50%;transform:translateX(-50%);font-size:6px;letter-spacing:.75px;font-weight:800;color:#d5f3f0;background:rgba(4,19,28,.88);border:1px solid rgba(105,207,207,.16);border-radius:6px;padding:3px 5px;white-space:nowrap}.b5-tool-ghost:before{content:"";position:absolute;width:88px;height:22px;left:18px;bottom:5px;border-radius:50%;background:rgba(0,0,0,.28);filter:blur(7px);z-index:-1}
.b5-animated-wires{z-index:58;pointer-events:none}.b5-animated-wires path{fill:none;stroke-width:5;stroke-linecap:round;opacity:0;stroke-dasharray:14 10}.b5-animated-wires path.red{stroke:#e64d57}.b5-animated-wires path.black{stroke:#1d2428;filter:drop-shadow(0 0 2px rgba(181,209,215,.24))}.b5-animated-wires path.visible{opacity:1;animation:b5WireDraw .8s cubic-bezier(.25,.8,.2,1) both}@keyframes b5WireDraw{0%{stroke-dashoffset:150;opacity:.2}100%{stroke-dashoffset:0;opacity:1}}
.b5-sim-stage.assembly-dragging .b5-component-dock{filter:brightness(.78)}.b5-sim-stage.assembly-dragging .b5-dock-art{opacity:.35}.b5-final-valid{z-index:120}.b5-installed-counter{z-index:90}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b5-installed-part.just-installed,.b5-grab-ring,.b5-animated-wires path.visible{animation:none!important}.b5-tool-ghost{transition:none!important}}

/* Step-specific installation micro-animations: small mechanical cues, not game-like effects. */
.b5-installed-part.just-installed.part-table .ev-table i{animation:b5LegDeploy .55s ease both}@keyframes b5LegDeploy{from{height:2px;opacity:.3}to{height:30px;opacity:1}}
.b5-installed-part.just-installed.part-stand .ev-stand-only .arm{animation:b5StandLock .62s cubic-bezier(.2,.85,.25,1)}@keyframes b5StandLock{0%{transform:rotate(28deg);transform-origin:bottom}70%{transform:rotate(-3deg);transform-origin:bottom}100%{transform:rotate(0);transform-origin:bottom}}
.b5-installed-part.just-installed.part-panel .ev-panel{animation:b5PanelSeat .66s cubic-bezier(.2,.85,.2,1)}@keyframes b5PanelSeat{0%{transform:perspective(180px) rotateX(14deg) rotateZ(-18deg)}65%{transform:perspective(180px) rotateX(5deg) rotateZ(-2deg)}100%{transform:perspective(180px) rotateX(7deg) rotateZ(calc(-5deg + var(--sm-panel-angle,0deg)))}}
.b5-installed-part.just-installed.part-lamp .ev-lamp{animation:b5LampScrew .62s ease-out}@keyframes b5LampScrew{0%{transform:translateY(-16px) rotate(42deg)}70%{transform:translateY(2px) rotate(-6deg)}100%{transform:none}}
.b5-installed-part.just-installed.part-meter .ev-meter{animation:b5MeterSeat .62s cubic-bezier(.2,.85,.2,1)}.b5-installed-part.just-installed.part-meter .ev-dial{animation:b5MeterReady .72s .16s ease both}@keyframes b5MeterSeat{0%{transform:translateY(-18px) rotate(-10deg)}72%{transform:translateY(2px) rotate(2deg)}100%{transform:none}}@keyframes b5MeterReady{0%{transform:rotate(-38deg)}55%{transform:rotate(18deg)}100%{transform:rotate(0)}}
.b5-installed-part.just-installed.part-sensorHead .ev-sensor-head{animation:b5SensorDock .55s ease-out}@keyframes b5SensorDock{0%{transform:translateY(-15px)}75%{transform:translateY(2px)}100%{transform:none}}
.b5-installed-part.just-installed.part-probeRed .ev-probe,.b5-installed-part.just-installed.part-probeBlack .ev-probe{animation:b5ProbeDock .55s cubic-bezier(.2,.85,.2,1)}@keyframes b5ProbeDock{0%{transform:translateX(-22px) rotate(-8deg)}70%{transform:translateX(3px) rotate(2deg)}100%{transform:none}}
.b5-installed-part.just-installed.part-terminal .ev-terminal{animation:b5TerminalClick .48s ease-out}@keyframes b5TerminalClick{0%{transform:translateY(-12px) scale(1.06)}70%{transform:translateY(2px) scale(.98)}100%{transform:none}}
.b5-installed-part.just-installed.part-outdoorLamp .ev-outdoor-lamp i{animation:b5PoleRise .64s ease-out;transform-origin:bottom}@keyframes b5PoleRise{0%{transform:scaleY(.18);opacity:.35}100%{transform:scaleY(1);opacity:1}}


/* ========================================================================
   SolarMeter v1.5 — Guided Auto-Assembly Practicum (Scene 05)
   Student drag is the trigger; final placement is system-controlled.
   ======================================================================== */
.b5-v15{padding-bottom:68px}.b5-v15 .b5-head-pro{margin-bottom:9px}.b5-v15 .b5-head-pro .h2{font-size:28px}.b5-v15-grid{display:grid;grid-template-columns:210px minmax(0,1fr) 286px;gap:11px;height:calc(100% - 88px);min-height:0}.b5-tool-tray,.b5-v15 .b5-assembly-coach{min-height:0;overflow:hidden;padding:12px}.b5-tool-tray{display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(8,34,48,.97),rgba(5,21,31,.97));border-color:rgba(92,205,210,.16)}
.b5-tray-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06)}.b5-tray-head>span{font:800 8px Consolas;color:#7ce3db}.b5-tray-active{display:flex;flex-direction:column;min-height:0;flex:1;padding-top:10px}.b5-tray-active>small,.b5-tray-feedback>small,.b5-tray-complete>small{font-size:5.4px;letter-spacing:1px;color:#65d0ca;font-weight:900}.b5-tray-active>b,.b5-tray-feedback>b,.b5-tray-complete>b{font-size:14px;color:#edf9fa;margin:5px 0}.b5-tray-active>p,.b5-tray-feedback>p,.b5-tray-complete>p{font-size:7px;line-height:1.45;color:#91adb7;margin:0 0 8px}.b5-tool-tray .b5-dock-art{height:150px;width:100%;margin-top:4px}.b5-tool-tray .b5-dock-art .equip-visual.large{width:130px;height:112px;transform:scale(.70)!important}.b5-tool-tray .b5-dock-art em{bottom:7px}
.b5-next-tools{margin-top:10px;border-top:1px solid rgba(255,255,255,.06);padding-top:8px}.b5-next-tools>small{font-size:5px;letter-spacing:1px;color:#6f919d}.b5-locked-tool{position:relative;display:grid;grid-template-columns:42px 1fr 18px;gap:7px;align-items:center;margin-top:6px;padding:7px;border-radius:10px;border:1px solid rgba(112,165,177,.08);background:rgba(6,25,36,.54);opacity:.58;cursor:not-allowed;user-select:none}.b5-locked-tool>span{width:40px;height:32px;overflow:hidden;display:grid;place-items:center}.b5-locked-tool .equip-visual.large{width:62px;height:48px;transform:scale(.48)!important;filter:grayscale(.2) brightness(.75)}.b5-locked-tool small{display:block;font-size:4.4px;letter-spacing:.7px;color:#758b94}.b5-locked-tool b{display:block;font-size:6.3px;color:#a6bbc1;margin-top:1px}.b5-locked-tool>.ui-svg{width:12px;color:#708891}.b5-locked-tool.sequence-error{animation:b5SequenceWrong .42s ease;border-color:rgba(238,119,92,.42);background:rgba(126,54,39,.14)}@keyframes b5SequenceWrong{25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-2px)}}
.b5-tray-feedback,.b5-tray-complete{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:1;padding:12px 3px}.b5-feedback-check,.b5-tray-complete>span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(76,208,145,.12);border:1px solid rgba(91,225,161,.28);color:#6ae0a6;margin-bottom:10px}.b5-feedback-check .ui-svg,.b5-tray-complete>span .ui-svg{width:23px}.b5-tray-feedback .btn{width:100%;margin-top:6px;min-height:40px}.b5-tray-complete strong{font-size:24px;color:#66e0aa;margin-top:8px}.b5-tray-score{margin-top:auto;padding-top:9px;border-top:1px solid rgba(255,255,255,.06)}.b5-tray-score small{display:block;font-size:4.8px;letter-spacing:.8px;color:#668e99}.b5-tray-score b{display:block;font-size:9px;color:#d8f2ee;margin:3px 0}.b5-tray-score span{font-size:5.7px;color:#72949e;line-height:1.35}
.b5-v15 .b5-assembly-stage{position:relative;min-width:0;overflow:hidden}.b5-v15 .b5-sim-stage{inset:0}.b5-v15 .b5-sim-backwall{left:5%;right:5%;top:13%;height:49%}.b5-v15 .b5-sim-floor{left:3%;right:3%}.b5-v15 .b5-target-zone{opacity:.34}.b5-v15 .b5-sim-stage.assembly-dragging .b5-target-zone,.b5-v15 .b5-target-zone.current{opacity:1}.b5-target-zone.ghost-hint:before{content:"POSISI SARAN";position:absolute;inset:6px;border-radius:9px;border:1px dashed rgba(99,229,218,.52);background:repeating-linear-gradient(135deg,rgba(81,207,200,.06),rgba(81,207,200,.06) 8px,transparent 8px,transparent 16px);display:grid;place-items:center;font-size:5px;letter-spacing:.9px;color:#7ce0db;animation:b5GhostHint 1.25s ease-in-out infinite}@keyframes b5GhostHint{50%{opacity:.48;transform:scale(.985)}}
.b5-v15 .b5-installed-part{width:90px;height:70px}.b5-v15 .b5-installed-part .equip-visual{width:90px;height:70px}.b5-installed-part.system-highlight{z-index:95!important;filter:drop-shadow(0 0 18px rgba(88,227,212,.78)) brightness(1.25);transition:.16s}.b5-sim-stage.completion-pulse:after{content:"";position:absolute;inset:8%;border-radius:30px;border:2px solid rgba(91,226,174,.52);box-shadow:0 0 36px rgba(91,226,174,.15);animation:b5CompletionPulse 1.05s ease-out;pointer-events:none;z-index:105}@keyframes b5CompletionPulse{0%{transform:scale(.92);opacity:0}30%{opacity:1}100%{transform:scale(1.03);opacity:0}}
.b5-auto-state{position:absolute;left:50%;top:17%;transform:translateX(-50%);z-index:135;display:flex;gap:8px;align-items:center;padding:7px 11px;border-radius:12px;background:rgba(5,25,36,.90);border:1px solid rgba(92,224,214,.20);box-shadow:0 12px 30px rgba(0,0,0,.30)}.b5-auto-spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(95,221,213,.25);border-top-color:#67ddd6;animation:b5AutoSpin .75s linear infinite}@keyframes b5AutoSpin{to{transform:rotate(360deg)}}.b5-auto-state small{display:block;font-size:4.6px;letter-spacing:.9px;color:#6fb5bd}.b5-auto-state b{display:block;font-size:7px;color:#dcf4f1;margin-top:1px}.b5-sim-stage.auto-assembling:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 22%,rgba(1,9,14,.24) 82%);z-index:100;pointer-events:none;animation:b5FocusDim .24s ease both}@keyframes b5FocusDim{from{opacity:0}to{opacity:1}}
.b5-auto-cue{position:absolute;transform:translate(-50%,-50%);z-index:145;display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:9px;background:rgba(5,30,39,.94);border:1px solid rgba(88,222,210,.32);box-shadow:0 8px 26px rgba(0,0,0,.34),0 0 20px rgba(72,214,205,.08);color:#bff7ef;pointer-events:none;animation:b5CueIn 1.6s ease both}.b5-auto-cue .ui-svg{width:12px}.b5-auto-cue b{font-size:6.2px;letter-spacing:.55px;white-space:nowrap}@keyframes b5CueIn{0%{opacity:0;transform:translate(-50%,calc(-50% + 8px)) scale(.92)}15%,75%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,calc(-50% - 8px)) scale(.98)}}
.b5-v15 .b5-animated-wires path.load-pos{stroke:#d94754;stroke-width:3.2}.b5-v15 .b5-animated-wires path.load-neg{stroke:#273136;stroke-width:4.2;filter:drop-shadow(0 0 1px rgba(180,210,214,.24))}.b5-v15 .b5-animated-wires path.sensor-link{stroke:#59cfd0;stroke-width:2.3;stroke-dasharray:7 7}.b5-v15 .b5-animated-wires path.visible{opacity:.88}.b5-v15 .b5-animated-wires .red,.b5-v15 .b5-animated-wires .black{stroke-dasharray:15 9;animation:b5WireDraw .9s cubic-bezier(.25,.8,.2,1) both}.b5-v15 .b5-animated-wires .red.visible,.b5-v15 .b5-animated-wires .black.visible{filter:drop-shadow(0 0 4px rgba(93,215,209,.12))}
.b5-v15 .b5-assembly-coach{display:flex;flex-direction:column}.b5-connection-explain{display:flex;gap:6px;align-items:flex-start;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}.b5-connection-explain .ui-svg{width:13px;color:#66dda8}.b5-connection-explain span{font-size:6.3px;line-height:1.4;color:#8fb0b8}.b5-assessment.v15{grid-template-columns:repeat(4,1fr)}.b5-score-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-bottom:7px}.b5-score-breakdown span{padding:6px 7px;border-radius:8px;background:rgba(7,27,39,.60);border:1px solid rgba(111,185,199,.08)}.b5-score-breakdown small{display:block;font-size:4.3px;letter-spacing:.65px;color:#668b97}.b5-score-breakdown b{font-size:6.8px;color:#cfe3e7}.b5-v15 .b5-step-scroll{margin-top:7px}.b5-v15 .b5-procedure-note{margin-top:7px}
.b8-assembly-result-card{margin-top:10px;padding:14px}.b8-assembly-result-head{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.b8-assembly-result-head>div{padding:11px;border-radius:12px;background:rgba(8,35,47,.66);border:1px solid rgba(94,185,198,.11)}.b8-assembly-result-head small{display:block;font-size:5px;letter-spacing:.8px;color:#6c97a3}.b8-assembly-result-head strong{display:block;font-size:21px;color:#eaf7f8;margin:3px 0}.b8-assembly-result-head span{font-size:6.5px;color:#75d8cc}.b8-assembly-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}.b8-assembly-metrics span{padding:7px;border-radius:9px;background:rgba(6,24,34,.58)}.b8-assembly-metrics small{display:block;font-size:4.4px;color:#658994}.b8-assembly-metrics b{display:block;font-size:6.4px;color:#cce0e4;margin-top:2px}.b8-assembly-result-card>p{font-size:6.4px;line-height:1.45;color:#809fa8;margin:8px 0 0}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b5-auto-spinner,.b5-auto-cue,.b5-target-zone.ghost-hint:before,.b5-sim-stage.completion-pulse:after{animation:none!important}}


/* ========================================================================
   SolarMeter v1.6 — CLEAN AUTO-ASSEMBLY CIRCUIT
   Final positions mimic a real, tidy laboratory bench. Drop is only trigger.
   ======================================================================== */
.b5-v15{padding-bottom:66px}.b5-v15-grid{grid-template-columns:184px minmax(0,1fr) 252px;gap:9px;height:calc(100% - 86px)}
.b5-v15 .b5-head-pro .h2{font-size:27px}.b5-v15 .b5-head-pro p{max-width:760px}
.b5-v15 .b5-assembly-stage{border-color:rgba(104,205,216,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 18px 45px rgba(0,0,0,.23)}
.b5-v15 .b5-sim-stage{background:linear-gradient(180deg,#0a293c 0 18%,#0b3143 18% 56%,#6d685f 56% 60%,#9f9689 60% 84%,#4c4741 84% 100%)}
.b5-v15 .b5-stage-grid{opacity:.035;background-size:34px 34px}
.b5-v15 .b5-sim-backwall{left:2%;right:2%;top:12%;height:43%;opacity:.65;background:linear-gradient(180deg,rgba(7,36,52,.72),rgba(11,47,61,.5));border-color:rgba(122,205,215,.10)}
.b5-v15 .b5-sim-floor{left:2%;right:2%;bottom:3%;height:38%;border-radius:9px 9px 17px 17px;background:linear-gradient(180deg,#b9b0a2,#8d857a 54%,#665f58 55%,#383633);box-shadow:inset 0 2px 0 rgba(255,255,255,.16),0 22px 34px rgba(0,0,0,.28)}
.b5-v15 .b5-sim-floor:before{content:"MEJA PRAKTIKUM";position:absolute;left:18px;top:12px;font:800 5px Consolas;letter-spacing:1.2px;color:rgba(22,45,52,.54)}
.b5-v15 .b5-target-zone{opacity:0;border-color:transparent;background:transparent;box-shadow:none}.b5-v15 .b5-sim-stage.assembly-dragging .b5-target-zone{opacity:.62}.b5-v15 .b5-target-zone.current,.b5-v15 .b5-target-zone.strong-hint,.b5-v15 .b5-target-zone.ghost-hint{opacity:1}
.b5-v15 .b5-target-zone span{font-size:5px}.b5-v15 .b5-target-zone small{font-size:4.5px}
.b5-v15 .b5-installed-part{width:82px;height:64px}.b5-v15 .b5-installed-part .equip-visual{width:82px;height:64px}.b5-v15 .b5-installed-label{opacity:0;transform:translate(-50%,2px);transition:.18s;white-space:nowrap;background:rgba(4,25,36,.92);padding:3px 6px;border-radius:7px;border:1px solid rgba(95,207,215,.16)}.b5-v15 .b5-installed-part:hover .b5-installed-label,.b5-v15 .b5-installed-part.just-installed .b5-installed-label{opacity:1;transform:translate(-50%,-2px)}
.b5-v15 .part-table{opacity:.92}.b5-v15 .part-table .equip-visual{filter:brightness(.92)}
.b5-v15 .part-panel .ev-panel-assembly{transform:scale(.92)}.b5-v15 .part-meter .ev-meter{box-shadow:0 10px 18px rgba(0,0,0,.34)}
.b5-v15 .part-terminal{z-index:66!important}.b5-v15 .part-holder,.b5-v15 .part-lamp{z-index:64!important}.b5-v15 .part-probeBlack,.b5-v15 .part-probeRed{z-index:76!important}
.b5-v15 .part-battery:before{content:"PENDUKUNG";position:absolute;left:50%;bottom:-10px;transform:translateX(-50%);font:800 4.2px Consolas;letter-spacing:.8px;color:#b7cbd0;background:rgba(5,30,40,.84);padding:2px 5px;border-radius:5px}.b5-v15 .part-outdoorLamp:before{content:"APLIKASI";position:absolute;left:50%;bottom:-10px;transform:translateX(-50%);font:800 4.2px Consolas;letter-spacing:.8px;color:#b7cbd0;background:rgba(5,30,40,.84);padding:2px 5px;border-radius:5px}
.b5-v15 .part-red,.b5-v15 .part-black{width:auto;height:auto;z-index:82!important}.b5-cable-lock{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border-radius:999px;font:900 4.8px Consolas;letter-spacing:.5px;color:#f4fbfc;background:rgba(4,25,34,.9);border:1px solid rgba(255,255,255,.12);white-space:nowrap;box-shadow:0 6px 15px rgba(0,0,0,.28)}.b5-cable-lock.red{border-color:rgba(235,76,88,.45);color:#ffb7bd}.b5-cable-lock.black{border-color:rgba(164,191,198,.24);color:#cbdadd}
.b5-v15 .b5-assembly-wires{z-index:72}.b5-v15 .b5-assembly-wires path{stroke-linecap:round;stroke-linejoin:round}.b5-v15 .b5-assembly-wires path.pv-pos{stroke:#dc3e4b;stroke-width:4.4;filter:drop-shadow(0 0 3px rgba(224,63,76,.26))}.b5-v15 .b5-assembly-wires path.pv-neg{stroke:#1f292f;stroke-width:6;filter:drop-shadow(0 0 1px rgba(213,232,235,.30))}.b5-v15 .b5-assembly-wires path.load-pos{stroke:#d84550;stroke-width:4}.b5-v15 .b5-assembly-wires path.load-neg{stroke:#232d31;stroke-width:5.5}.b5-v15 .b5-assembly-wires path.red{stroke:#ed4050;stroke-width:5.2;filter:drop-shadow(0 0 4px rgba(238,64,80,.20))}.b5-v15 .b5-assembly-wires path.black{stroke:#192328;stroke-width:6.4;filter:drop-shadow(0 0 1px rgba(215,234,236,.26))}.b5-v15 .b5-assembly-wires path.sensor-link{stroke:#57c8ce;stroke-width:2.2;stroke-dasharray:6 6}
.b5-circuit-markers{position:absolute;inset:0;z-index:86;pointer-events:none;opacity:0;transition:.3s}.b5-circuit-markers.show{opacity:1}.b5-circuit-markers span{position:absolute;padding:2px 5px;border-radius:6px;background:rgba(4,26,36,.92);border:1px solid rgba(98,200,208,.18);font:900 4.8px Consolas;letter-spacing:.5px;color:#d4eef0;box-shadow:0 4px 12px rgba(0,0,0,.24)}.b5-circuit-markers .pvp{left:40.5%;top:64%;color:#ff9ca6}.b5-circuit-markers .pvn{left:40.5%;top:69%;color:#c4d2d7}.b5-circuit-markers .com{left:52.8%;top:60%;color:#cbd8dc}.b5-circuit-markers .vomega{left:59%;top:60%;color:#ff9ca6}
.b5-final-circuit-caption{position:absolute;left:50%;top:13%;transform:translateX(-50%);z-index:112;display:flex;align-items:center;gap:8px;min-width:330px;padding:9px 13px;border-radius:13px;background:linear-gradient(135deg,rgba(16,92,72,.94),rgba(7,52,56,.94));border:1px solid rgba(100,236,178,.38);box-shadow:0 12px 30px rgba(0,0,0,.28),0 0 28px rgba(69,218,158,.08);animation:b5FinalCaption .55s ease both}.b5-final-circuit-caption>span{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:rgba(99,231,168,.13);color:#72e8ad}.b5-final-circuit-caption .ui-svg{width:18px}.b5-final-circuit-caption small{display:block;font-size:4.7px;letter-spacing:.85px;color:#7de3b1}.b5-final-circuit-caption b{display:block;font-size:7.4px;color:#ecfbf4;margin-top:2px}@keyframes b5FinalCaption{from{opacity:0;transform:translate(-50%,-8px) scale(.97)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
.b5-v15 .b5-installed-counter{left:12px;bottom:12px}.b5-v15 .b5-stage-title{left:13px;right:13px}.b5-v15 .b5-auto-state{top:14%}
.b5-v15 .b5-tool-tray{padding:10px}.b5-v15 .b5-tool-tray .b5-dock-art{height:134px}.b5-v15 .b5-tool-tray .b5-dock-art .equip-visual.large{width:116px;height:100px;transform:scale(.66)!important}.b5-v15 .b5-tray-active>b{font-size:13px}.b5-v15 .b5-tray-active>p{font-size:6.5px}.b5-v15 .b5-next-tools{margin-top:7px}.b5-v15 .b5-locked-tool{grid-template-columns:34px 1fr 15px;padding:6px}.b5-v15 .b5-locked-tool>span{width:32px;height:28px}
.b5-v15 .b5-assembly-coach{padding:10px}.b5-v15 .b5-current-task{padding:10px}.b5-v15 .b5-current-task h3{font-size:14px}.b5-v15 .b5-current-task p{font-size:7.3px}.b5-v15 .b5-assessment{margin:7px 0}.b5-v15 .b5-step-scroll{margin-top:6px}.b5-v15 .b5-procedure-note{padding:7px 8px}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */



/* ========================================================================
   SolarMeter v1.7 — LARGE LAB BENCH + LIVELY GUIDED AUTO-ASSEMBLY
   ======================================================================== */
.b5-v15{padding-bottom:62px}.b5-v15-grid{grid-template-columns:150px minmax(0,1fr) 218px;gap:8px;height:calc(100% - 82px)}
.b5-v15 .b5-head-pro{margin-bottom:7px}.b5-v15 .b5-head-pro .h2{font-size:25px}.b5-v15 .b5-head-pro p{font-size:7.4px;max-width:820px;line-height:1.35}
.b5-v15 .b5-config-strip span{min-width:76px;padding:6px 8px}.b5-v15 .b5-config-strip small{font-size:4.3px}.b5-v15 .b5-config-strip b{font-size:6.2px}
.b5-v15 .b5-tool-tray,.b5-v15 .b5-assembly-coach{padding:8px}.b5-v15 .b5-tool-tray .b5-dock-art{height:118px}.b5-v15 .b5-tool-tray .b5-dock-art .equip-visual.large{width:108px;height:92px;transform:scale(.62)!important}
.b5-v15 .b5-assembly-stage{overflow:hidden;background:#092538;border-color:rgba(104,205,216,.20);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 45px rgba(0,0,0,.24)}
.b5-v15 .b5-sim-stage{background:radial-gradient(circle at 50% 35%,rgba(39,124,143,.16),transparent 42%),linear-gradient(180deg,#071d2d 0 56%,#082535 56% 100%)}
.b5-v15 .b5-sim-backwall{left:1.5%;right:1.5%;top:11%;height:47%;opacity:.7;background:linear-gradient(180deg,rgba(10,43,59,.82),rgba(9,35,48,.55));border-color:rgba(122,205,215,.08)}
.b5-v15 .b5-sim-floor{display:none!important}
.b5-big-bench{position:absolute;left:2.5%;right:2.5%;top:56%;bottom:3.5%;z-index:10;pointer-events:none;transform-origin:50% 100%;transition:.35s ease}
.b5-big-bench .b5-bench-top{position:absolute;left:0;right:0;top:0;height:56%;border-radius:10px 10px 5px 5px;background:linear-gradient(180deg,#c9b390 0,#ad936e 15%,#947a59 86%,#765f45 100%);border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 3px 0 rgba(255,255,255,.20),inset 0 -5px 10px rgba(60,38,18,.16),0 16px 28px rgba(0,0,0,.26)}
.b5-big-bench .b5-bench-top:before{content:"";position:absolute;inset:7px 2%;border-radius:6px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent 35%,rgba(72,45,22,.04) 70%,transparent);opacity:.75}
.b5-big-bench .b5-bench-front{position:absolute;left:2%;right:2%;top:53%;height:25%;background:linear-gradient(180deg,#735f48,#544638);border-radius:0 0 5px 5px;box-shadow:inset 0 2px rgba(255,255,255,.06)}
.b5-big-bench i.leg{position:absolute;top:73%;bottom:0;width:8.5%;background:linear-gradient(90deg,#31434a,#1e2d33 55%,#142027);box-shadow:inset 2px 0 rgba(255,255,255,.04)}.b5-big-bench i.leg.left{left:11%}.b5-big-bench i.leg.right{right:11%}
.b5-big-bench>span{position:absolute;left:18px;top:12px;font:900 5.3px Consolas;letter-spacing:1.15px;color:rgba(38,45,41,.62);text-shadow:0 1px rgba(255,255,255,.16)}
.b5-big-bench.pending{opacity:.30;filter:saturate(.55);transform:scaleY(.95)}.b5-big-bench.pending .b5-bench-top{border:1px dashed rgba(103,220,215,.32);background:linear-gradient(180deg,rgba(145,132,107,.45),rgba(102,90,72,.35))}
.b5-big-bench.installed{opacity:1;animation:b5BenchBuild .86s cubic-bezier(.18,.86,.24,1) both}@keyframes b5BenchBuild{0%{opacity:.28;transform:translateY(26px) scale(.97,.80)}55%{opacity:1;transform:translateY(-3px) scale(1.005,1.02)}100%{transform:none}}
.b5-workarea-drop{position:absolute;left:2.5%;right:2.5%;top:23%;bottom:5%;z-index:23;border:1px dashed transparent;border-radius:18px;pointer-events:none;transition:.18s ease;display:flex;align-items:flex-start;justify-content:center}
.b5-workarea-drop>span{margin-top:49%;padding:4px 10px;border-radius:999px;background:rgba(3,22,31,.72);border:1px solid rgba(98,210,211,.10);font:900 4.8px Consolas;letter-spacing:.8px;color:rgba(119,207,205,.34);opacity:.45;transition:.18s}
.b5-sim-stage.assembly-dragging .b5-workarea-drop{border-color:rgba(91,220,211,.23);background:linear-gradient(180deg,rgba(67,199,193,.025),rgba(67,199,193,.07))}.b5-workarea-drop.drag-over{border-color:rgba(94,233,203,.72)!important;background:radial-gradient(circle at 50% 58%,rgba(83,227,191,.12),rgba(41,170,176,.04))!important;box-shadow:inset 0 0 34px rgba(77,229,202,.08),0 0 0 3px rgba(77,229,202,.025)}.b5-workarea-drop.drag-over>span{opacity:1;color:#8ff0dc;border-color:rgba(100,237,205,.30);transform:translateY(-2px)}
.b5-v15 .b5-target-zone{opacity:0!important;background:transparent;border-color:transparent;box-shadow:none}.b5-v15 .b5-target-zone.current,.b5-v15 .b5-target-zone.strong-hint,.b5-v15 .b5-target-zone.ghost-hint,.b5-v15 .b5-target-zone.drag-over{opacity:1!important;border:1px dashed rgba(87,223,214,.38);background:rgba(46,186,183,.045);box-shadow:inset 0 0 18px rgba(63,215,203,.045)}
.b5-v15 .b5-target-zone span,.b5-v15 .b5-target-zone small{background:rgba(4,28,38,.86);border-radius:5px;padding:2px 4px}
.b5-v15 .b5-installed-layer{z-index:35}.b5-v15 .b5-installed-part{width:92px;height:72px;filter:drop-shadow(0 12px 9px rgba(0,0,0,.36))}.b5-v15 .b5-installed-part .equip-visual{width:92px;height:72px}.b5-v15 .part-panel .ev-stand{display:none!important}.b5-v15 .part-panel .ev-panel-assembly{transform:scale(1)}
.b5-v15 .part-stand{z-index:34!important}.b5-v15 .part-panel{z-index:39!important}.b5-v15 .part-sensor,.b5-v15 .part-sensorHead{z-index:48!important}.b5-v15 .part-terminal{z-index:63!important}.b5-v15 .part-meter{z-index:66!important}.b5-v15 .part-holder,.b5-v15 .part-lamp{z-index:62!important}.b5-v15 .part-probeBlack,.b5-v15 .part-probeRed{z-index:77!important}
.b5-v15 .part-battery,.b5-v15 .part-outdoorLamp{filter:drop-shadow(0 8px 7px rgba(0,0,0,.30)) saturate(.86)}.b5-v15 .part-battery:before,.b5-v15 .part-outdoorLamp:before{bottom:-8px;background:rgba(3,27,37,.90);border:1px solid rgba(122,194,200,.12)}
.b5-v15 .b5-installed-label{top:78px;opacity:0}.b5-v15 .b5-installed-part.just-installed .b5-installed-label{opacity:1}
.b5-v15 .b5-assembly-wires{z-index:70;overflow:visible}.b5-v15 .b5-assembly-wires path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.b5-v15 .b5-assembly-wires path.pv-pos,.b5-v15 .b5-assembly-wires path.load-pos{stroke:#e34854;stroke-width:4.3}.b5-v15 .b5-assembly-wires path.pv-neg,.b5-v15 .b5-assembly-wires path.load-neg{stroke:#1b252a;stroke-width:6.0;filter:drop-shadow(0 0 1px rgba(218,236,239,.30))}.b5-v15 .b5-assembly-wires path.red{stroke:#f04454;stroke-width:5.2;filter:drop-shadow(0 0 4px rgba(240,68,83,.25))}.b5-v15 .b5-assembly-wires path.black{stroke:#172126;stroke-width:6.4;filter:drop-shadow(0 0 1px rgba(220,237,239,.32))}.b5-v15 .b5-assembly-wires path.sensor-link{stroke:#62d4d3;stroke-width:2.2;stroke-dasharray:6 6}.b5-v15 .b5-assembly-wires path.visible{opacity:1}.b5-v15 .b5-assembly-wires path.new-connection{stroke-dasharray:900;stroke-dashoffset:900;animation:b5CableRouteBuild 1.10s cubic-bezier(.22,.8,.2,1) forwards,b5ConnectionGlow .7s 1.02s ease-out}@keyframes b5CableRouteBuild{0%{stroke-dashoffset:900;opacity:.25}15%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}@keyframes b5ConnectionGlow{50%{filter:drop-shadow(0 0 8px rgba(92,235,211,.55));stroke-width:7}}
.b5-installed-part.just-installed{animation:b5MechanicalSeat .88s cubic-bezier(.15,.9,.2,1) both}@keyframes b5MechanicalSeat{0%{opacity:0;transform:translate(-50%,calc(-50% - 24px)) rotate(calc(var(--pr) - 7deg)) scale(calc(var(--ps)*1.08));filter:brightness(1.18) drop-shadow(0 22px 14px rgba(0,0,0,.38))}52%{opacity:1;transform:translate(-50%,calc(-50% - 4px)) rotate(calc(var(--pr) + 2deg)) scale(calc(var(--ps)*1.015))}72%{transform:translate(-50%,calc(-50% + 3px)) rotate(var(--pr)) scale(calc(var(--ps)*.985))}100%{transform:translate(-50%,-50%) rotate(var(--pr)) scale(var(--ps));filter:drop-shadow(0 12px 9px rgba(0,0,0,.36))}}
.b5-auto-cue{z-index:125!important;box-shadow:0 12px 28px rgba(0,0,0,.30),0 0 0 1px rgba(97,226,205,.08)}.b5-sim-stage.auto-assembling:before{content:"";position:absolute;inset:0;z-index:105;pointer-events:none;background:radial-gradient(circle at 54% 56%,transparent 0 22%,rgba(2,13,20,.13) 58%,rgba(1,8,13,.34));animation:b5FocusBreath .9s ease-in-out}@keyframes b5FocusBreath{0%,100%{opacity:.18}45%{opacity:.72}}
.b5-circuit-markers .pvp{left:43.2%;top:65%}.b5-circuit-markers .pvn{left:43.2%;top:70%}.b5-circuit-markers .com{left:56.8%;top:61%}.b5-circuit-markers .vomega{left:63%;top:61%}
.b5-final-circuit-caption{top:13%;min-width:350px;max-width:52%;padding:8px 12px}.b5-final-circuit-caption b{font-size:7px;line-height:1.25}.b5-v15 .b5-installed-counter{left:12px;bottom:10px}.b5-v15 .b5-final-valid{left:29%;right:24%;bottom:9px}
.b5-v15 .b5-tray-active>b{font-size:12px}.b5-v15 .b5-tray-active>p{font-size:6px;line-height:1.35}.b5-v15 .b5-tray-score span{font-size:5.3px}.b5-v15 .b5-current-task{padding:8px}.b5-v15 .b5-current-task h3{font-size:12.5px}.b5-v15 .b5-current-task p{font-size:6.6px;line-height:1.35}.b5-v15 .b5-task-tip{font-size:5.6px}.b5-v15 .b5-assessment{gap:4px}.b5-v15 .b5-assessment span{padding:5px}.b5-v15 .b5-score-breakdown{display:none}.b5-v15 .b5-step-scroll{max-height:205px}.b5-v15 .b5-procedure-note{padding:6px 7px;margin-top:5px}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b5-big-bench.installed,.b5-installed-part.just-installed,.b5-v15 .b5-assembly-wires path.new-connection,.b5-sim-stage.auto-assembling:before{animation:none!important}}


/* =========================================================
   SolarMeter v1.8 — Scene 05 Connected Auto-Assembly
   ========================================================= */
.b5-v18{padding-bottom:64px}
.b5-v18 .b5-v15-grid{grid-template-columns:142px minmax(0,1fr) 205px;gap:7px;height:calc(100% - 82px)}
.b5-v18 .b5-assembly-stage{border-color:rgba(90,221,211,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 22px 54px rgba(0,0,0,.28)}
.b5-v18 .b5-sim-stage{
  background:
    radial-gradient(circle at 50% 34%,rgba(38,137,159,.18),transparent 44%),
    linear-gradient(180deg,#071c2b 0 49%,#0a2633 49% 100%);
}
.b5-v18 .b5-sim-backwall{left:1%;right:1%;top:10%;height:42%;opacity:.62}
.b5-v18 .b5-big-bench{left:1.2%;right:1.2%;top:49%;bottom:2.5%}
.b5-v18 .b5-big-bench .b5-bench-top{
  height:61%;
  border-radius:12px 12px 6px 6px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.07),transparent 22%,rgba(255,255,255,.04) 54%,transparent 77%),
    linear-gradient(180deg,#d4bd98 0,#b99d75 12%,#a38762 78%,#7b6248 100%);
  box-shadow:inset 0 4px 0 rgba(255,255,255,.20),inset 0 -9px 18px rgba(55,35,18,.17),0 20px 34px rgba(0,0,0,.30)
}
.b5-v18 .b5-big-bench .b5-bench-front{top:58%;height:22%;left:1.3%;right:1.3%}
.b5-v18 .b5-big-bench i.leg{top:77%;width:7.2%}.b5-v18 .b5-big-bench i.leg.left{left:12%}.b5-v18 .b5-big-bench i.leg.right{right:12%}
.b5-v18 .b5-workarea-drop{left:4%;right:4%;top:42%;bottom:11%;border-radius:18px}
.b5-v18 .b5-workarea-drop>span{top:8px}
.b5-v18 .b5-installed-layer{z-index:38}
.b5-v18 .b5-installed-part{width:108px;height:86px;filter:drop-shadow(0 12px 10px rgba(0,0,0,.36))}
.b5-v18 .b5-installed-part .equip-visual{width:108px;height:86px}
.b5-v18 .part-panel{z-index:45!important}.b5-v18 .part-stand{z-index:42!important}
.b5-v18 .part-sensor,.b5-v18 .part-sensorHead{z-index:50!important}
.b5-v18 .part-terminal{z-index:67!important}.b5-v18 .part-meter{z-index:73!important}
.b5-v18 .part-holder,.b5-v18 .part-lamp{z-index:69!important}
.b5-v18 .part-probeBlack,.b5-v18 .part-probeRed{z-index:82!important}
.b5-v18 .part-battery,.b5-v18 .part-outdoorLamp{z-index:50!important;filter:drop-shadow(0 9px 8px rgba(0,0,0,.33)) saturate(.88)}
.b5-v18 .part-panel .ev-panel-assembly{transform:scale(1.16)}
.b5-v18 .part-panel .ev-panel{width:86px;height:53px;border-width:4px}
.b5-v18 .part-stand .ev-stand-only{transform:scale(1.10)}
.b5-v18 .part-terminal .ev-terminal{transform:scale(1.15)}
.b5-v18 .part-meter .ev-meter{transform:scale(1.12);transform-origin:center bottom}
.b5-v18 .part-sensor .ev-sensor{transform:scale(1.06)}
.b5-v18 .part-lamp .ev-lamp{transform:scale(1.08)}
.b5-v18 .b5-installed-label{
  top:83px;
  min-width:78px;
  max-width:120px;
  padding:3px 6px;
  border-radius:6px;
  color:#b6d7df;
  background:rgba(3,26,36,.90);
  border:1px solid rgba(95,211,216,.12);
  box-shadow:0 6px 14px rgba(0,0,0,.22)
}
.b5-v18 .probe-installed{width:48px!important;height:48px!important}
.b5-probe-plug{position:relative;width:42px;height:30px;filter:drop-shadow(0 7px 5px rgba(0,0,0,.32))}
.b5-probe-plug i{position:absolute;left:2px;top:12px;width:24px;height:7px;border-radius:5px;background:linear-gradient(#252d31,#111719)}
.b5-probe-plug b{position:absolute;right:1px;top:8px;width:16px;height:15px;border-radius:7px 4px 4px 7px;background:#242c30;box-shadow:inset 0 1px rgba(255,255,255,.08)}
.b5-probe-plug.red i,.b5-probe-plug.red b{background:linear-gradient(#e44b59,#a42b35)}
.b5-probe-plug span{position:absolute;left:50%;top:31px;transform:translateX(-50%);font:900 6px Consolas;color:#8ccfd1;background:#062332;border:1px solid rgba(89,205,209,.18);padding:2px 4px;border-radius:4px;white-space:nowrap}
.b5-v18 .b5-assembly-wires{z-index:76;overflow:visible}
.b5-v18 .b5-assembly-wires path{opacity:0;transition:opacity .25s}
.b5-v18 .b5-assembly-wires path.visible{opacity:1}
.b5-v18 .b5-assembly-wires path.pv-pos,.b5-v18 .b5-assembly-wires path.load-pos{stroke:#e84b58;stroke-width:4.6;filter:drop-shadow(0 1px 1px rgba(255,255,255,.12))}
.b5-v18 .b5-assembly-wires path.pv-neg,.b5-v18 .b5-assembly-wires path.load-neg{stroke:#182328;stroke-width:6.0;filter:drop-shadow(0 0 1px rgba(220,237,239,.35))}
.b5-v18 .b5-assembly-wires path.red{stroke:#f14b59;stroke-width:5.0;filter:drop-shadow(0 0 4px rgba(240,68,83,.25))}
.b5-v18 .b5-assembly-wires path.black{stroke:#121b20;stroke-width:6.2;filter:drop-shadow(0 0 1px rgba(220,237,239,.40))}
.b5-v18 .b5-assembly-wires path.sensor-link{stroke:#5fd6d2;stroke-width:2.3;stroke-dasharray:7 5}
.b5-v18 .wire-node{opacity:0;fill:#f04e59;stroke:#f3c0c3;stroke-width:1.3;transition:.25s}
.b5-v18 .wire-node.visible{opacity:1;animation:b5NodePulse 1.2s ease-in-out infinite alternate}
.b5-v18 .wire-node.dark{fill:#152127;stroke:#9eb2b8}
@keyframes b5NodePulse{from{r:4;filter:drop-shadow(0 0 1px rgba(255,255,255,.2))}to{r:6;filter:drop-shadow(0 0 5px rgba(95,229,207,.55))}}
.b5-v18 .b5-assembly-wires path.new-connection{
  stroke-dasharray:950;
  stroke-dashoffset:950;
  animation:b5CableRouteBuild18 1.45s cubic-bezier(.18,.83,.22,1) forwards,b5ConnectionGlow18 .9s 1.25s ease-out
}
@keyframes b5CableRouteBuild18{0%{stroke-dashoffset:950;opacity:.15}12%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}
@keyframes b5ConnectionGlow18{0%,100%{filter:drop-shadow(0 0 1px rgba(255,255,255,.12))}50%{filter:drop-shadow(0 0 10px rgba(75,235,205,.72));stroke-width:7.2}}
.b5-v18 .b5-installed-part.just-installed{animation:b5MechanicalSeat18 1.05s cubic-bezier(.15,.9,.2,1) both}
@keyframes b5MechanicalSeat18{
  0%{opacity:0;transform:translate(-50%,calc(-50% - 30px)) rotate(calc(var(--pr) - 8deg)) scale(calc(var(--ps)*1.10));filter:brightness(1.24) drop-shadow(0 24px 16px rgba(0,0,0,.42))}
  44%{opacity:1;transform:translate(-50%,calc(-50% - 8px)) rotate(calc(var(--pr) + 2deg)) scale(calc(var(--ps)*1.035))}
  68%{transform:translate(-50%,calc(-50% + 4px)) rotate(var(--pr)) scale(calc(var(--ps)*.985))}
  84%{transform:translate(-50%,calc(-50% - 1px)) rotate(var(--pr)) scale(calc(var(--ps)*1.008))}
  100%{transform:translate(-50%,-50%) rotate(var(--pr)) scale(var(--ps));filter:drop-shadow(0 12px 10px rgba(0,0,0,.36))}
}
.b5-topology-callouts{position:absolute;inset:0;z-index:92;pointer-events:none;opacity:0;transition:.4s}
.b5-topology-callouts.show{opacity:1}
.b5-topology-callouts>span{
  position:absolute;
  padding:5px 7px;
  border-radius:7px;
  border:1px solid rgba(84,207,215,.28);
  background:linear-gradient(180deg,rgba(6,40,55,.93),rgba(4,28,39,.93));
  box-shadow:0 8px 18px rgba(0,0,0,.28);
  color:#e5f4f6;
  font:900 7px/1.05 Inter,Arial,sans-serif;
  letter-spacing:.1px;
  white-space:nowrap
}
.b5-topology-callouts>span small{display:block;margin-top:3px;color:#86aeb9;font:700 5.4px/1.1 Inter,Arial,sans-serif}
.b5-topology-callouts>span:after{content:"";position:absolute;width:1px;background:rgba(86,216,216,.45);box-shadow:0 0 5px rgba(86,216,216,.18)}
.b5-topology-callouts .call-panel{left:8%;top:27%}.b5-topology-callouts .call-panel:after{left:50%;top:100%;height:38px}
.b5-topology-callouts .call-sensor{left:25%;top:25%}.b5-topology-callouts .call-sensor:after{left:50%;top:100%;height:34px}
.b5-topology-callouts .call-terminal{left:41.5%;top:31%}.b5-topology-callouts .call-terminal:after{left:50%;top:100%;height:76px}
.b5-topology-callouts .call-meter{left:57%;top:24%}.b5-topology-callouts .call-meter:after{left:50%;top:100%;height:64px}
.b5-topology-callouts .call-load{left:73%;top:30%}.b5-topology-callouts .call-load:after{left:50%;top:100%;height:60px}
.b5-v18 .b5-final-circuit-caption{top:11.5%;min-width:410px;max-width:62%;padding:9px 14px;z-index:96}
.b5-v18 .b5-final-circuit-caption b{font-size:7.4px;line-height:1.3}
.b5-v18 .b5-final-valid{left:27%;right:22%;bottom:8px}
.b5-v18 .b5-installed-counter{left:12px;bottom:8px}
.b5-v18 .b5-circuit-markers{z-index:90}
.b5-v18 .b5-circuit-markers .pvp{left:45.3%;top:62%}.b5-v18 .b5-circuit-markers .pvn{left:46.2%;top:68%}
.b5-v18 .b5-circuit-markers .com{left:60.1%;top:67%}.b5-v18 .b5-circuit-markers .vomega{left:66.1%;top:67%}
.b5-v18 .b5-tool-tray,.b5-v18 .b5-assembly-coach{background:linear-gradient(180deg,rgba(7,35,48,.96),rgba(5,25,36,.96))}
.b5-v18 .b5-step-scroll{max-height:200px}
.b5-v18 .b5-procedure-note{font-size:5.4px}
.b5-v18 .b5-auto-state.dynamic{z-index:130}
.b5-v18 .b5-auto-cue{z-index:132!important}
.b5-v18 .b5-sim-stage.auto-assembling:after{
  content:"";
  position:absolute;inset:44% 7% 10%;
  z-index:109;pointer-events:none;border-radius:18px;
  border:1px solid rgba(85,225,211,.10);
  box-shadow:inset 0 0 40px rgba(76,221,205,.045);
  animation:b5AssemblyWorkGlow 1.2s ease-in-out
}
@keyframes b5AssemblyWorkGlow{0%,100%{opacity:.05}50%{opacity:.9}}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){
  .b5-v18 .b5-installed-part.just-installed,
  .b5-v18 .b5-assembly-wires path.new-connection,
  .b5-v18 .wire-node.visible,
  .b5-v18 .b5-sim-stage.auto-assembling:after{animation:none!important}
}


/* ===== SolarMeter v1.9 — clean progressive wiring ===== */
.b5-v18 .b5-assembly-wires.wires-empty,
.b5-v18 .b5-assembly-wires.wires-empty *{opacity:0!important;animation:none!important;filter:none!important}
.b5-v18 .b5-assembly-wires path:not(.visible){opacity:0!important;animation:none!important;stroke-dasharray:none!important;stroke-dashoffset:0!important}
.b5-v18 .b5-assembly-wires path.new-connection:not(.visible){opacity:0!important;animation:none!important}
.b5-v18 .b5-assembly-wires .probe-red{stroke:#f04b58;stroke-width:4.8;filter:drop-shadow(0 0 3px rgba(240,75,88,.22))}
.b5-v18 .b5-assembly-wires .probe-black{stroke:#172126;stroke-width:5.8;filter:drop-shadow(0 0 1px rgba(220,237,239,.34))}
.b5-v18 .b5-assembly-wires .main-pos-a,.b5-v18 .b5-assembly-wires .main-pos-b{stroke:#e84b58;stroke-width:4.8;filter:drop-shadow(0 1px 1px rgba(255,255,255,.10))}
.b5-v18 .b5-assembly-wires .main-neg-a,.b5-v18 .b5-assembly-wires .main-neg-b{stroke:#172126;stroke-width:6.2;filter:drop-shadow(0 0 1px rgba(220,237,239,.38))}
.b5-v18 .b5-assembly-wires .sensor-node{fill:#5fd6d2;stroke:#b9ffff}
.b5-v18 .b5-assembly-wires .probe-node{r:4px}
.b5-v18 .b5-assembly-wires .main-node{r:5px}
/* Before a wiring-related step is completed the bench must look physically empty of leads/cables. */
.b5-v18 .b5-sim-stage:not(.auto-assembling) .b5-cable-lock{display:none!important}


/* =========================================================
   FINAL v2.0 — SCENE 06/07/08 ANIMATED PRACTICUM UPGRADE
   ========================================================= */
.b6-v20-stage{background:linear-gradient(180deg,rgba(7,28,40,.97) 0 69%,rgba(30,38,39,.96) 69%);border:1px solid rgba(111,204,214,.13)}
.b6-v20-lablight{position:absolute;inset:0;background:radial-gradient(circle at 55% 25%,rgba(100,220,218,.08),transparent 35%),linear-gradient(90deg,transparent 0 49%,rgba(255,255,255,.018) 50%,transparent 51%);pointer-events:none}
.b6-v20-bench{position:absolute;left:2.5%;right:2.5%;bottom:5%;height:29%;z-index:1}.b6-v20-bench>i{position:absolute;left:0;right:0;top:0;height:31%;border-radius:10px 10px 4px 4px;background:linear-gradient(#b59167,#806449 18%,#4b4138 19% 100%);box-shadow:0 14px 28px rgba(0,0,0,.35)}.b6-v20-bench>b{position:absolute;left:3%;right:3%;top:31%;bottom:0;background:linear-gradient(#25353c,#12232a);clip-path:polygon(3% 0,97% 0,100% 100%,0 100%)}
.b6-v20-apparatus,.b6-v20-terminal,.b6-v20-load-rig{position:absolute;z-index:5;filter:drop-shadow(0 12px 10px rgba(0,0,0,.32));transition:transform .5s ease,filter .5s ease}.b6-v20-apparatus>small,.b6-v20-load-rig>small{position:absolute;left:50%;transform:translateX(-50%);bottom:-15px;font:800 5px Consolas;color:#6c98a3;white-space:nowrap;letter-spacing:.5px}
.b6-v20-panel-rig{left:7%;bottom:20%;width:165px;height:145px}.b6-v20-panel{position:absolute!important;left:7px!important;top:6px!important;width:130px!important;height:78px!important;border-width:6px!important;transform:perspective(500px) rotateX(8deg) rotateZ(calc(-5deg + var(--b6-panel-angle)))!important;transform-origin:50% 110%!important}.b6-v20-panel-stand{position:absolute;left:57px;top:76px;width:70px;height:46px}.b6-v20-panel-stand i{position:absolute;left:32px;width:8px;height:39px;background:linear-gradient(90deg,#6d7f84,#aeb9ba,#596d73);border-radius:4px;transform:rotate(-10deg)}.b6-v20-panel-stand b{position:absolute;left:5px;right:5px;bottom:0;height:9px;border-radius:50%;background:#53656c}
.b6-v20-sensor-rig{left:23%;bottom:21%;width:75px;height:108px}.b6-v20-sensor-rig .ev-sensor{transform:scale(.86);transform-origin:bottom center}.b6-v20-terminal{left:38%;bottom:20%;width:125px;height:71px;border-radius:10px;background:linear-gradient(#26383e,#111e23);border:2px solid #536970;padding:24px 7px 5px;display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.b6-v20-terminal-title{position:absolute;left:8px;top:7px;font:800 5px Consolas;color:#7ba8af;letter-spacing:.6px}.b6-v20-terminal span{display:flex;flex-direction:column;align-items:center;gap:2px}.b6-v20-terminal i{width:18px;height:18px;border-radius:50%;background:#0b1012;border:4px solid #899395;box-shadow:inset 0 0 0 2px #030506}.b6-v20-terminal .pvpos i,.b6-v20-terminal .loadpos i{border-color:#bd4c52}.b6-v20-terminal b{font:800 4px Consolas;color:#9db0b4}
.b6-v20-load-rig{right:6%;bottom:19%;width:110px;height:120px}.b6-v20-load-rig .ev-lamp{transform:scale(.9);transform-origin:bottom center}.b6-v20-load-halo{position:absolute;left:50%;top:36%;width:95px;height:95px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,222,114,.18),transparent 68%);opacity:.25}
.b6-v20-circuit{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}.b6-v20-circuit path{fill:none;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45));transition:opacity .3s}.b6-v20-circuit .main-pos,.b6-v20-circuit .load-pos,.b6-v20-circuit .measure-red{stroke:#d84d56}.b6-v20-circuit .main-neg,.b6-v20-circuit .load-neg,.b6-v20-circuit .measure-black{stroke:#26343a}.b6-v20-circuit .measure-red,.b6-v20-circuit .measure-black{stroke-width:4;opacity:.16}.b6-v20-circuit .current-lead.connected,.b6-v20-circuit .voltage-lead.connected{opacity:.95}.b6-v20-circuit .node{fill:#d9565d;stroke:#ffd0d2;stroke-width:1}.b6-v20-circuit .node.n1,.b6-v20-circuit .node.n2{fill:#26343a;stroke:#92a1a6}.b6-v20-stage.measuring .b6-v20-circuit path,.b6-v20-stage.mode-ready .b6-v20-circuit .measure-red,.b6-v20-stage.mode-ready .b6-v20-circuit .measure-black{stroke-dasharray:8 8;animation:b6V20Signal .74s linear infinite}@keyframes b6V20Signal{to{stroke-dashoffset:-32}}
.b6-v20-stage.measuring-voltage .voltage-lead,.b6-v20-stage.measuring-current .current-lead{filter:drop-shadow(0 0 6px rgba(100,226,220,.55))}.b6-v20-stage.measuring-current .load-pos,.b6-v20-stage.measuring-current .load-neg{filter:drop-shadow(0 0 7px rgba(240,192,78,.38))}
.b6-v20-meter{left:61%;top:45%;transform:translate(-50%,-50%) scale(.82);transform-origin:center;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .4s}.b6-v20-stage.stage-entered .b6-v20-meter{animation:b6V20MeterEnter .55s ease-out both}@keyframes b6V20MeterEnter{from{opacity:.4;transform:translate(-50%,-45%) scale(.76)}to{opacity:1;transform:translate(-50%,-50%) scale(.82)}}.b6-v20-stage.measuring .b6-v20-meter{filter:drop-shadow(0 0 18px rgba(87,208,205,.18))}
.b6-v20-stage .b6-port-row .focus-port i{box-shadow:inset 0 0 0 3px #06090a,0 0 0 5px rgba(91,220,213,.07),0 0 20px rgba(91,220,213,.42);animation:b6V20Port .85s ease-in-out infinite alternate}@keyframes b6V20Port{to{transform:scale(1.08)}}
.b6-probe-transfer{position:absolute;left:50%;bottom:-45px;transform:translateX(-50%);height:30px;min-width:170px;border:1px solid rgba(231,174,83,.16);border-radius:8px;background:rgba(69,49,20,.62);display:flex;align-items:center;justify-content:center;gap:7px;color:#cda85d}.b6-probe-transfer span,.b6-probe-transfer b{font:900 6px Consolas}.b6-probe-transfer small{position:absolute;top:31px;font:700 4.5px Consolas;color:#8c774d;white-space:nowrap}.b6-probe-transfer.done{border-color:rgba(75,214,146,.19);background:rgba(17,62,46,.65);color:#6edba5}.b6-probe-transfer.done i{width:7px;height:7px;border-radius:50%;background:#5dde9d;box-shadow:0 0 12px rgba(93,222,157,.55)}.b6-v20-stage.switching-to-dca .b6-probe-transfer{animation:b6V20Transfer .76s ease-in-out}@keyframes b6V20Transfer{0%,100%{transform:translateX(-50%)}45%{transform:translateX(-50%) translateY(-8px);filter:brightness(1.35)}}
.b6-v20-focus-label{position:absolute;left:3.5%;top:7%;z-index:11;min-width:205px;height:53px;border-radius:11px;border:1px solid rgba(91,207,209,.12);background:rgba(7,31,42,.82);display:grid;grid-template-columns:35px 1fr;gap:8px;align-items:center;padding:8px}.b6-v20-focus-label>span{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:rgba(71,201,199,.1);font:900 9px Consolas;color:#61d8d3}.b6-v20-focus-label small{display:block;font-size:4.5px;color:#668790;letter-spacing:.75px}.b6-v20-focus-label b{display:block;font-size:6.4px;color:#acd0d3;margin-top:2px}
.b6-v20-stage .b6-mode-controls{left:4%;top:33%;width:135px}.b6-v20-stage .b6-probe-tags{left:4%;bottom:7%}.b6-v20-stage .b6-stage-caption{right:3%;top:7%}.b6-v20-stage .b6-measure-progress{left:34%;right:26%;bottom:15px;height:5px}
.b6-v20-procedure{position:absolute;right:2.5%;top:20%;z-index:12;width:180px;display:grid;gap:6px}.b6-v20-procedure>span{min-height:43px;border:1px solid rgba(116,183,197,.08);border-radius:9px;background:rgba(7,27,36,.72);display:grid;grid-template-columns:27px 1fr;grid-template-rows:auto auto;column-gap:7px;align-items:center;padding:6px 7px;opacity:.62;transition:.3s}.b6-v20-procedure i{grid-row:1/3;width:25px;height:25px;border-radius:7px;display:grid;place-items:center;background:rgba(75,164,178,.07);font:900 6px Consolas;color:#6a939d;font-style:normal}.b6-v20-procedure b{font-size:5.6px;color:#8da9b0}.b6-v20-procedure small{font-size:4.3px;color:#5c7880;line-height:1.25}.b6-v20-procedure>span.active{opacity:1;border-color:rgba(239,194,79,.25);box-shadow:0 0 22px rgba(239,194,79,.05);transform:translateX(-3px)}.b6-v20-procedure>span.active i{background:rgba(237,190,73,.1);color:#edc55f;animation:b6V20StepPulse .8s ease-in-out infinite alternate}.b6-v20-procedure>span.done{opacity:.9;border-color:rgba(76,215,148,.12)}.b6-v20-procedure>span.done i{background:rgba(73,212,145,.09);color:#60dba0}@keyframes b6V20StepPulse{to{box-shadow:0 0 15px rgba(239,193,78,.28)}}
.b6-lamp-rig.ramping .b6-lamp{animation:b6V20LampSettle .25s ease-out}@keyframes b6V20LampSettle{50%{transform:translateY(-3px) scale(1.03)}}
.b6-v20-scene .b6-side{border-color:rgba(103,200,207,.11)}

/* Scene 08 animated data processing */
.b7-v20-workstation{overflow:hidden}.b7-v20-process{position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:7px 0 8px}.b7-v20-process:before{content:"";position:absolute;left:10%;right:10%;top:18px;height:2px;background:rgba(98,186,194,.08);z-index:-1}.b7-v20-process>span{min-height:42px;border-radius:9px;border:1px solid rgba(106,188,199,.08);background:rgba(7,27,36,.72);display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;gap:0 6px;align-items:center;padding:6px;transition:.3s}.b7-v20-process i{grid-row:1/3;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#102f39;font:900 6px Consolas;color:#658992;font-style:normal}.b7-v20-process b{font-size:5.5px;color:#879fa6}.b7-v20-process small{font-size:4.2px;color:#5b747c}.b7-v20-process>span.active{border-color:rgba(238,191,75,.23);box-shadow:0 0 23px rgba(238,191,75,.05);transform:translateY(-2px)}.b7-v20-process>span.active i{background:rgba(232,185,68,.13);color:#e9c158;animation:b7V20Pulse .8s ease-in-out infinite alternate}.b7-v20-process>span.done{border-color:rgba(75,213,147,.14)}.b7-v20-process>span.done i{background:rgba(74,211,145,.1);color:#62dba2}@keyframes b7V20Pulse{to{box-shadow:0 0 16px rgba(236,189,72,.27)}}
.b7-v20-workstation.analysis-entered .b7-input-card{animation:b7V20InputEnter .45s ease-out both}.b7-v20-workstation.analysis-entered .b7-input-card:nth-child(2){animation-delay:.08s}.b7-v20-workstation.analysis-entered .b7-input-card:nth-child(3){animation-delay:.16s}@keyframes b7V20InputEnter{from{opacity:.3;transform:translateY(-8px)}to{opacity:1;transform:none}}
.b7-v20-flow-rail{position:absolute;left:16%;right:16%;top:165px;height:50px;z-index:1;pointer-events:none}.b7-v20-flow-rail i{position:absolute;width:8px;height:8px;border-radius:50%;opacity:0;background:#5bd8d2;box-shadow:0 0 12px rgba(91,216,210,.5)}.b7-v20-workstation.power-flow-active .b7-v20-flow-rail .v,.b7-v20-workstation.power-flow-active .b7-v20-flow-rail .i{opacity:1;animation:b7V20ParticleP .8s ease-in-out infinite}.b7-v20-workstation.power-flow-active .b7-v20-flow-rail .i{animation-delay:.16s}.b7-v20-workstation.energy-flow-active .b7-v20-flow-rail .p,.b7-v20-workstation.energy-flow-active .b7-v20-flow-rail .t{opacity:1;animation:b7V20ParticleE .8s ease-in-out infinite}.b7-v20-workstation.energy-flow-active .b7-v20-flow-rail .t{animation-delay:.18s}@keyframes b7V20ParticleP{0%{left:8%;top:0;opacity:0}25%{opacity:1}100%{left:42%;top:42px;opacity:0}}@keyframes b7V20ParticleE{0%{left:50%;top:42px;opacity:0}25%{opacity:1}100%{left:84%;top:42px;opacity:0}}
.b7-formula-card.feeding-power{box-shadow:0 0 28px rgba(76,205,199,.1);transform:translateY(-2px)}.b7-history-tray.receiving{border-color:rgba(80,217,151,.32);box-shadow:0 0 24px rgba(80,217,151,.1);animation:b7V20TrayReceive .45s ease-in-out infinite alternate}.b7-history-tray.received{animation:b7V20TrayDone .7s ease-out}@keyframes b7V20TrayReceive{to{transform:scale(1.015)}}@keyframes b7V20TrayDone{0%{box-shadow:0 0 30px rgba(80,217,151,.3)}100%{box-shadow:none}}
.b7-v20-save-fly{width:60px;height:40px;flex-direction:column;gap:0}.b7-v20-save-fly small{font:800 3.8px Consolas;letter-spacing:.5px}.b7-v20-save-fly.launch{box-shadow:0 18px 40px rgba(0,0,0,.42)}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.b6-v20-stage *,.b7-v20-workstation *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}


/* =========================================================
   V2.1 — PROFESSIONAL MOTION SYSTEM
   Scientific simulator motion: consistent, calm, responsive.
   ========================================================= */
:root{--sm-micro:150ms;--sm-small:230ms;--sm-medium:390ms;--sm-mechanical:720ms;--sm-educational:1250ms;--sm-ease-ui:cubic-bezier(.2,.8,.2,1);--sm-ease-move:cubic-bezier(.22,.72,.22,1);--sm-ease-mech:cubic-bezier(.18,.86,.24,1)}

/* Global controls — no arcade bounce, every actionable element responds. */
.btn,.icon-btn,.mini-btn,.nav-card,.choice,.b4-load-card,.b4-time-seg button,.b4-angle-presets button,.b6-mode-btn,.answer,.b7-scenario-card{will-change:transform,filter,opacity;transition:transform var(--sm-small) var(--sm-ease-ui),filter var(--sm-small) ease,border-color var(--sm-small) ease,background-color var(--sm-small) ease,box-shadow var(--sm-small) ease,opacity var(--sm-small) ease}
.btn:hover:not([disabled]),.icon-btn:hover:not([disabled]),.mini-btn:hover:not([disabled]){transform:scale(1.015);filter:brightness(1.06)}
.nav-card:hover:not([disabled]),.choice:hover:not([disabled]),.b4-load-card:hover:not([disabled]),.b6-mode-btn:hover:not([disabled]),.answer:hover:not([disabled]){transform:translateY(-1px) scale(1.012);filter:brightness(1.05)}
.btn:active:not([disabled]),.icon-btn:active:not([disabled]),.mini-btn:active:not([disabled]),.nav-card:active:not([disabled]),.choice:active:not([disabled]),.b4-load-card:active:not([disabled]),.b6-mode-btn:active:not([disabled]),.answer:active:not([disabled]){transform:scale(.97)!important;transition-duration:var(--sm-micro)}
button:focus-visible,[tabindex]:focus-visible{outline:2px solid rgba(94,225,217,.78);outline-offset:3px}
button[disabled],.btn[disabled]{opacity:.38!important;cursor:not-allowed!important;filter:saturate(.55)!important;transform:none!important;box-shadow:none!important}
.btn.success,.choice.selected,.b4-load-card.active,.b6-mode-btn.active{box-shadow:0 0 0 1px rgba(86,222,174,.20),0 0 22px rgba(74,205,174,.09)}
.pro-loading{pointer-events:none}.pro-loading .ui-svg{animation:smProSpin .8s linear infinite}.pro-loading:after{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.45;animation:smBusyDot .72s ease-in-out infinite alternate}@keyframes smProSpin{to{transform:rotate(360deg)}}@keyframes smBusyDot{to{transform:scale(.55);opacity:.15}}

/* Scene navigation: top bar remains anchored, content glides below it. */
.scene.fadeout-next{display:block;animation:smExitNext 380ms var(--sm-ease-ui) forwards}.scene.fadeout-back{display:block;animation:smExitBack 380ms var(--sm-ease-ui) forwards}.scene.fadeout-home{display:block;animation:smExitHome 330ms var(--sm-ease-ui) forwards}.scene.enter-next{animation:smEnterNext 420ms var(--sm-ease-ui) both}.scene.enter-back{animation:smEnterBack 420ms var(--sm-ease-ui) both}.scene.enter-home{animation:smEnterHome 380ms var(--sm-ease-ui) both}
@keyframes smExitNext{to{opacity:0;transform:translateX(-20px)}}@keyframes smExitBack{to{opacity:0;transform:translateX(20px)}}@keyframes smExitHome{to{opacity:0;transform:translateY(7px)}}@keyframes smEnterNext{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}@keyframes smEnterBack{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}@keyframes smEnterHome{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
.sm-root.transitioning .content{pointer-events:none}.topbar{transform:translateZ(0);will-change:auto}
.stepdot{transform-origin:left center;transition:transform var(--sm-medium) var(--sm-ease-ui),background var(--sm-medium) ease,box-shadow var(--sm-medium) ease,opacity var(--sm-medium) ease}.stepdot.active{animation:smProgressWake .48s var(--sm-ease-ui)}@keyframes smProgressWake{from{transform:scaleX(.55);opacity:.55}to{transform:scaleX(1);opacity:1}}

/* Ambient lab motion — extremely low amplitude and never full-screen flashing. */
.ambient-mesh{animation:smAmbientMesh 14s ease-in-out infinite alternate}.orb{will-change:transform,opacity;animation:smAmbientOrb 11s ease-in-out infinite alternate}.orb.o2{animation-duration:15s;animation-delay:-5s}.orb.o3{animation-duration:18s;animation-delay:-9s}
@keyframes smAmbientMesh{from{transform:translate3d(-2px,0,0);opacity:.36}to{transform:translate3d(2px,-1px,0);opacity:.44}}@keyframes smAmbientOrb{from{transform:translate3d(-3px,1px,0) scale(.99);opacity:.50}to{transform:translate3d(4px,-2px,0) scale(1.015);opacity:.58}}

/* Toasts and modals use the same motion language. */
.toast{transform:translateY(10px);opacity:0;transition:transform var(--sm-small) var(--sm-ease-ui),opacity var(--sm-small) ease!important}.toast.show{transform:translateY(0)!important;opacity:1}.toast.leaving{transform:translateY(-5px)!important;opacity:0!important}
.modal-wrap.open{animation:smBackdropIn 280ms ease-out both}.modal-wrap.open .modal{animation:smModalIn 300ms var(--sm-ease-ui) both}.modal-wrap.closing{animation:smBackdropOut 190ms ease-in both}.modal-wrap.closing .modal{animation:smModalOut 180ms ease-in both}@keyframes smBackdropIn{from{background:rgba(2,8,13,0);backdrop-filter:blur(0)}to{background:rgba(2,8,13,.78);backdrop-filter:blur(10px)}}@keyframes smBackdropOut{to{background:rgba(2,8,13,0);backdrop-filter:blur(0)}}@keyframes smModalIn{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}@keyframes smModalOut{to{opacity:0;transform:translateY(8px) scale(.975)}}
.inspection-open .native3d-drag-hint{animation:smHintIn .34s .18s var(--sm-ease-ui) both}@keyframes smHintIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.native3d-toolbar button{transition:transform var(--sm-small) var(--sm-ease-ui),background var(--sm-small),border-color var(--sm-small)}

/* Scene 04: real-time controls glide, never jump. */
.b4-solar,.b4-stand i,.angle-arc i,.sunbeam,.b4-rays,.sun-source,.b4-light-level b,.load-mini{transition:transform 320ms var(--sm-ease-move),filter 240ms ease,opacity 240ms ease,box-shadow 240ms ease,width 260ms var(--sm-ease-ui)!important;will-change:transform,filter,opacity}
.b4-control.pro-confirm{animation:smVarConfirm 520ms var(--sm-ease-ui)}@keyframes smVarConfirm{0%{box-shadow:0 0 0 rgba(82,218,173,0);transform:translateY(0)}35%{box-shadow:0 0 0 1px rgba(82,218,173,.4),0 0 24px rgba(82,218,173,.12);transform:translateY(-1px)}100%{box-shadow:none;transform:none}}
.b4-load-card.active .ui-svg{animation:smCheckReveal .34s var(--sm-ease-ui)}@keyframes smCheckReveal{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}

/* Scene 05: educational focus, precision assembly, and cable growth. */
.b5-sim-stage.auto-assembling .b5-installed-part{transition:opacity var(--sm-small),filter var(--sm-small);opacity:.86}.b5-sim-stage.auto-assembling .b5-tool-ghost{opacity:1!important;filter:drop-shadow(0 22px 18px rgba(0,0,0,.42)) brightness(1.12)}
.b5-sim-stage.auto-assembling:before{content:"";position:absolute;inset:0;background:rgba(3,15,23,.08);pointer-events:none;z-index:26;animation:smFocusWash .28s ease-out both}@keyframes smFocusWash{from{opacity:0}to{opacity:1}}
.b5-auto-state{animation:smAutoStateIn .28s var(--sm-ease-ui) both}@keyframes smAutoStateIn{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}
.b5-target.correct-drop{animation:smTargetValid .48s var(--sm-ease-ui)}@keyframes smTargetValid{35%{box-shadow:0 0 0 2px rgba(88,225,211,.46),0 0 28px rgba(88,225,211,.18)}100%{box-shadow:none}}
.b5-assembly-wires path.visible{vector-effect:non-scaling-stroke}.b5-assembly-wires path.new-connection{stroke-dasharray:520;stroke-dashoffset:520;animation:smCableDraw 1.32s var(--sm-ease-move) forwards,smCableGlow .55s 1.28s ease-out 1}@keyframes smCableDraw{to{stroke-dashoffset:0}}@keyframes smCableGlow{50%{filter:drop-shadow(0 0 7px rgba(87,220,213,.7));stroke-width:5.4}}
.b5-installed-part.system-highlight{animation:smSystemFocus 360ms ease-out both}@keyframes smSystemFocus{45%{filter:drop-shadow(0 0 18px rgba(88,227,212,.72)) brightness(1.18);transform:translate(-50%,-50%) rotate(var(--pr)) scale(calc(var(--ps)*1.025))}}
.b5-sim-stage.completion-sequence-running .b5-final-circuit-caption{animation:smFinalBadge 520ms 1.55s var(--sm-ease-ui) both}@keyframes smFinalBadge{from{opacity:0;transform:translate(-50%,8px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}

/* Scene 06/07: knob, probe and reading states are mechanically legible. */
#bigKnob{transition:transform 680ms var(--sm-ease-mech)!important;will-change:transform}.b6-stage-card.mode-turning #bigKnob{filter:drop-shadow(0 0 8px rgba(236,191,73,.22))}.b6-stage-card.probe-retract .b6-probe-transfer{animation:smProbeRetract 260ms var(--sm-ease-move)}@keyframes smProbeRetract{50%{transform:translateX(-50%) translateY(-9px);filter:brightness(1.2)}}
.b6-stage-card.probe-transition .b6-probe-transfer{animation:smProbeTransfer 520ms var(--sm-ease-move)}@keyframes smProbeTransfer{0%{transform:translateX(-50%) translateY(-7px)}70%{transform:translateX(-50%) translateY(2px)}100%{transform:translateX(-50%) translateY(0)}}
.b6-stage-card.educational-focus:after{content:"";position:absolute;inset:4%;border-radius:18px;box-shadow:inset 0 0 70px rgba(4,13,21,.18);pointer-events:none;animation:smEducationalFocus 1s ease-out}@keyframes smEducationalFocus{from{opacity:0}35%{opacity:1}to{opacity:0}}
.b6-stage-card.reading-stable #meterDisplay{animation:smStableReading .55s ease-out}@keyframes smStableReading{35%{filter:brightness(1.22);text-shadow:0 0 12px rgba(180,239,174,.48)}100%{filter:none}}
.b6-measure-progress i,#b6MeasureProgress{transition:width 220ms var(--sm-ease-ui)!important}.b6-stage-card.measuring .b6-led{animation:smMeasureLed .72s ease-in-out infinite alternate}@keyframes smMeasureLed{to{opacity:.35;box-shadow:0 0 4px rgba(88,222,211,.2)}}
.b6-lamp-rig .b6-lamp,.b6-v20-load-rig .ev-lamp{transition:filter 520ms ease,transform 420ms var(--sm-ease-ui),opacity 420ms ease}.b6-lamp-rig.ramping{animation:smLoadResponse 520ms var(--sm-ease-ui)}@keyframes smLoadResponse{50%{filter:brightness(1.08)}}

/* Scene 08 data pipeline: meaningful data travels, decorative particles stay subtle. */
.b7-input-card.feeding{animation:smDataPulse 420ms var(--sm-ease-ui)}@keyframes smDataPulse{45%{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(83,215,207,.28),0 0 22px rgba(83,215,207,.10)}}
.b7-formula-card.calculating{animation:smFormulaWork 720ms ease-in-out infinite alternate}@keyframes smFormulaWork{to{box-shadow:0 0 26px rgba(82,208,202,.08)}}.b7-formula-card.operator-pulse .b7-equation{animation:smOperatorPulse .42s ease-out}@keyframes smOperatorPulse{45%{filter:brightness(1.35);transform:scale(1.015)}}
.b7-v20-save-fly{transition:transform 650ms var(--sm-ease-move),opacity 650ms ease!important}.b7-history-tray.receiving{animation:smHistoryReady .65s ease-in-out infinite alternate}@keyframes smHistoryReady{to{box-shadow:0 0 0 1px rgba(84,218,155,.25),0 0 25px rgba(84,218,155,.08)}}

/* Keep animation layout-safe across classroom viewport sizes. */
.scene,.content,.b5-sim-stage,.b6-stage-card,.b7-v20-workstation{contain:layout paint style}.b5-tool-ghost,.b7-v20-save-fly{contain:layout paint style;will-change:transform,opacity}.b5-assembly-wires,.b6-v20-circuit{overflow:visible}

/* Accessibility: preserve state feedback while removing travel/rotation and ambient loops. */
@media(prefers-reduced-motion:reduce){
  :root{--sm-micro:1ms;--sm-small:1ms;--sm-medium:1ms;--sm-mechanical:1ms;--sm-educational:1ms}
  .ambient-mesh,.orb,.inspection-orbit,.meter-hotspots button:after,.b6-led,.b7-v20-process>span.active i{animation:none!important}
  .scene,.scene *{scroll-behavior:auto!important}
  .scene.fadeout-next,.scene.fadeout-back,.scene.fadeout-home,.scene.enter-next,.scene.enter-back,.scene.enter-home{animation:none!important;transform:none!important}
  .btn,.icon-btn,.mini-btn,.nav-card,.choice,.b4-load-card,.b6-mode-btn{transition-duration:1ms!important}
  .b5-assembly-wires path.new-connection{animation:none!important;stroke-dasharray:none!important;stroke-dashoffset:0!important}
  #bigKnob{transition-duration:1ms!important}
}


/* =========================================================
   SolarMeter v2.2 — ANTI-FLICKER / STABLE COMPOSITOR PATCH
   ========================================================= */
.scene.active:not(.enter-next):not(.enter-back):not(.enter-home):not(.fadeout-next):not(.fadeout-back):not(.fadeout-home){
  opacity:1!important;transform:none!important;animation:none!important;
}
.stepdot.active{animation:none!important}

/* Prevent Chrome/Windows blur layer flashing on same-scene refresh. */
.glass,.topbar{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.glass{background:linear-gradient(160deg,rgba(15,43,69,.96),rgba(7,24,42,.95))!important}
.topbar{background:rgba(5,16,29,.97)!important}
.scene,.content{contain:layout style!important}

/* Ambient appearance stays polished but no opacity breathing/restart. */
.ambient-mesh,.orb,.ambient-light,.solar-glint{animation:none!important}
.ambient-mesh{opacity:.40!important;transform:none!important}
.orb{opacity:.22!important;transform:none!important}
.ambient-light{opacity:.15!important;transform:none!important}
.solar-glint{opacity:.14!important;left:58%!important}

/* Replace blinking loops with steady state cues. */
.b6-stage-card.measuring .b6-led,
.b6-v20-stage .b6-port-row .focus-port i,
.b6-v20-procedure>span.active i,
.b7-v20-process>span.active i,
.b7-formula-card.calculating,
.b7-history-tray.receiving,
.pro-loading:after,
.b5-v18 .wire-node.visible{animation:none!important}
.b6-stage-card.measuring .b6-led{opacity:.78!important;box-shadow:0 0 8px rgba(88,222,211,.28)!important}
.b6-v20-stage .b6-port-row .focus-port i,
.b6-v20-procedure>span.active i,
.b7-v20-process>span.active i{box-shadow:0 0 12px rgba(88,222,211,.18)!important}
.b7-formula-card.calculating{box-shadow:0 0 22px rgba(82,208,202,.08)!important}
.b7-history-tray.receiving{transform:none!important;box-shadow:0 0 0 1px rgba(84,218,155,.20),0 0 20px rgba(84,218,155,.06)!important}
.pro-loading:after{opacity:.42!important;transform:none!important}
.pro-loading .ui-svg{opacity:1!important;filter:none!important}

/* Stable compositor surfaces. */
.btn,.icon-btn,.mini-btn,.nav-card,.choice,.b4-load-card,.b5-dock-art,.b6-mode-btn{
  -webkit-backface-visibility:hidden;backface-visibility:hidden;
}
.content,.scene{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}


/* =========================================================
   SolarMeter v2.3 — USER COVER + CLEAN HEADER PATCH
   User requested: exact supplied front artwork, remove red-marked
   progress strip / scene labels, and hide Scene 03 yellow next CTA.
   Functional navigation and all simulator logic remain intact.
   ========================================================= */
.topbar{justify-content:space-between}
.topbar.home-hidden{display:none!important}
.topbar.home-hidden + .content{padding:0!important;flex:1 1 100%;height:100%;min-height:100%}
.stepper-wrap{display:none!important}

.cover-home{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  overflow:hidden!important;background:#063f84!important;isolation:isolate;
}
.cover-home-image{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  display:block;user-select:none;-webkit-user-drag:none;pointer-events:none;
}
.cover-hotspot{
  position:absolute;z-index:5;border:0;background:transparent;color:transparent;cursor:pointer;
  border-radius:26px;outline:0;transition:box-shadow .18s ease,background-color .18s ease,transform .18s ease;
}
.cover-hotspot span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cover-hotspot:hover,.cover-hotspot:focus-visible{box-shadow:0 0 0 3px rgba(255,255,255,.34),0 0 30px rgba(38,218,255,.28);background:rgba(255,255,255,.025)}
.cover-hotspot:active{transform:scale(.99)}
.cover-case{left:6.0%;top:73.3%;width:28.7%;height:15.0%}
.cover-tools{left:36.1%;top:73.3%;width:27.3%;height:15.0%}
.cover-practice{left:64.7%;top:73.3%;width:28.1%;height:15.0%}

.station-status-nav{
  appearance:none;-webkit-appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;
  background:rgba(7,31,49,.55);border:1px solid rgba(86,205,218,.15);
}
.station-status-nav.ready{border-color:rgba(82,221,159,.24)}
.station-status-nav:hover,.station-status-nav:focus-visible{border-color:rgba(89,228,220,.5);box-shadow:0 0 0 2px rgba(89,228,220,.08)}

/* Retain comfortable heading spacing after removing the user-marked eyebrows. */
.b4-head .h2,.b5-head .h2,.b6-head .h2,.b7-head .h2,.b8-eval-head .h2,.station-head .h2{margin-top:0}


/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   SolarMeter v2.4 — CODE-DRIVEN HOME MENU
   The artwork is intentionally menu-free. Interactive navigation is now
   real HTML/CSS UI so hover, focus, press and entrance motion remain alive.
   ========================================================= */
.cover-menu-shell{
  position:absolute;z-index:7;left:5.9%;right:5.9%;bottom:6.7%;
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.7%;align-items:stretch;
}
.cover-menu-card{
  min-width:0;height:132px;border-radius:25px;border:1.5px solid rgba(50,219,255,.78);
  background:linear-gradient(135deg,rgba(0,76,151,.90),rgba(0,151,211,.67));
  box-shadow:0 18px 45px rgba(0,20,62,.35),inset 0 1px 0 rgba(255,255,255,.16),0 0 24px rgba(0,206,255,.12);
  color:#fff;display:grid;grid-template-columns:76px minmax(0,1fr) 42px;align-items:center;gap:18px;
  padding:18px 20px;text-align:left;cursor:pointer;overflow:hidden;position:relative;
  transform:translateY(18px);opacity:0;animation:coverMenuIn .52s cubic-bezier(.2,.8,.2,1) forwards;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,filter .18s ease;
  -webkit-backface-visibility:hidden;backface-visibility:hidden;
}
.cover-menu-card:nth-child(2){animation-delay:.10s}.cover-menu-card:nth-child(3){animation-delay:.20s}
.cover-menu-card:before{
  content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.12) 46%,transparent 72%);
  transform:translateX(-130%);transition:transform .58s ease;pointer-events:none;
}
.cover-menu-card:hover:before,.cover-menu-card:focus-visible:before{transform:translateX(130%)}
.cover-menu-card:hover,.cover-menu-card:focus-visible{transform:translateY(-4px) scale(1.012);border-color:rgba(126,241,255,.98);box-shadow:0 22px 50px rgba(0,25,72,.42),0 0 34px rgba(0,218,255,.25);outline:none}
.cover-menu-card:active{transform:translateY(-1px) scale(.985)}
.cover-menu-practice{border-color:rgba(255,224,55,.90);background:linear-gradient(135deg,rgba(126,91,0,.88),rgba(255,189,0,.62));box-shadow:0 18px 45px rgba(39,29,0,.35),inset 0 1px 0 rgba(255,255,255,.18),0 0 28px rgba(255,209,0,.18)}
.cover-menu-practice:hover,.cover-menu-practice:focus-visible{border-color:#ffe74c;box-shadow:0 22px 50px rgba(53,35,0,.42),0 0 40px rgba(255,211,0,.30)}
.cover-menu-icon{width:72px;height:72px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(12,221,244,.92),rgba(0,154,221,.72));border:1px solid rgba(131,246,255,.70);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 8px 24px rgba(0,0,0,.18)}
.cover-menu-practice .cover-menu-icon{background:linear-gradient(145deg,#ffd81f,#ffae00);border-color:#ffe86f;color:#fff}
.cover-menu-icon .ui-svg{width:40px;height:40px;stroke-width:2.1}.cover-menu-arrow{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(119,230,255,.55);background:rgba(0,62,126,.42);transition:transform .18s ease,background .18s ease}
.cover-menu-practice .cover-menu-arrow{border-color:rgba(255,231,87,.65);background:rgba(123,83,0,.38)}
.cover-menu-card:hover .cover-menu-arrow,.cover-menu-card:focus-visible .cover-menu-arrow{transform:translateX(4px);background:rgba(0,117,187,.58)}
.cover-menu-copy{display:flex;flex-direction:column;min-width:0;line-height:1.1}.cover-menu-copy small{font:700 10px/1.2 Consolas,monospace;letter-spacing:1.5px;color:#76edf2;margin-bottom:7px}.cover-menu-practice .cover-menu-copy small{color:#ffe85a}.cover-menu-copy b{font-size:24px;letter-spacing:-.4px;white-space:nowrap}.cover-menu-copy em{font-style:normal;font-size:11px;color:rgba(226,244,255,.75);margin-top:8px;white-space:nowrap}
@keyframes coverMenuIn{to{opacity:1;transform:translateY(0)}}

/* Legacy menu hotspots no longer participate in the UI. */
.cover-hotspot{display:none!important}


/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){.cover-menu-card{animation:none!important;opacity:1!important;transform:none!important}.cover-menu-card:before{display:none}}

/* =========================================================
   SolarMeter v2.5 — UNIFIED SOLAR BRIGHT THEME
   Aligns Scene 02–11 with the bright blue / cyan / solar-yellow
   visual language of the dynamic home cover. Visual-only patch:
   no navigation, scoring, experiment state, persistence, 3D logic,
   measurement logic, or comparison logic is changed.
   ========================================================= */
:root{
  --navy:#03152d;
  --navy2:#062b59;
  --panel:rgba(5,46,94,.91);
  --panel2:rgba(8,72,132,.88);
  --blue:#20c8ff;
  --cyan:#32e7f4;
  --yellow:#ffd72e;
  --green:#6ef2b1;
  --amber:#ffc54f;
  --red:#ff6d78;
  --text:#f9fdff;
  --muted:#b5d6ea;
  --line:rgba(72,217,255,.28);
  --shadow:0 22px 60px rgba(0,24,69,.38),0 0 0 1px rgba(73,211,255,.03);
}

/* Global environment */
.sm-root{
  background:
    radial-gradient(circle at 82% 8%,rgba(34,205,255,.24),transparent 29%),
    radial-gradient(circle at 8% 92%,rgba(0,136,255,.20),transparent 34%),
    linear-gradient(145deg,#03142c 0%,#07386a 48%,#04223f 100%)!important;
}
.sm-root:before{
  background-image:
    linear-gradient(rgba(71,219,255,.038) 1px,transparent 1px),
    linear-gradient(90deg,rgba(71,219,255,.038) 1px,transparent 1px)!important;
  background-size:36px 36px!important;
  opacity:.9;
}
.topbar{
  background:linear-gradient(90deg,rgba(2,17,38,.98),rgba(4,47,92,.96) 56%,rgba(3,31,62,.98))!important;
  border-bottom:1px solid rgba(68,218,255,.34)!important;
  box-shadow:0 8px 30px rgba(0,24,62,.25),inset 0 -1px 0 rgba(255,214,46,.05)!important;
}
.brand-mark{
  background:linear-gradient(145deg,#ffe04a,#ffb500)!important;
  box-shadow:0 8px 26px rgba(255,192,0,.30),0 0 18px rgba(255,219,52,.12)!important;
}
.brand-title{color:#fff!important;text-shadow:0 0 14px rgba(50,220,244,.10)}
.brand-sub{color:#a9cee5!important}
.icon-btn,.mini-btn{
  background:linear-gradient(145deg,rgba(8,68,125,.86),rgba(4,44,86,.88))!important;
  border-color:rgba(76,216,255,.30)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 18px rgba(0,24,62,.16)!important;
}
.icon-btn:hover,.mini-btn:hover{
  background:linear-gradient(145deg,rgba(9,91,158,.96),rgba(5,59,111,.96))!important;
  border-color:rgba(82,231,255,.70)!important;
  box-shadow:0 0 20px rgba(32,200,255,.14)!important;
}

/* Shared panels and typography */
.glass{
  background:linear-gradient(155deg,rgba(8,59,111,.94),rgba(4,31,65,.93) 68%,rgba(3,24,52,.95))!important;
  border-color:rgba(72,217,255,.27)!important;
  box-shadow:var(--shadow)!important;
}
.card{color:var(--text)}
.eyebrow{color:#45ecf4!important;text-shadow:0 0 16px rgba(69,236,244,.12)}
.h1,.h2{color:#fff;text-shadow:0 6px 24px rgba(0,16,50,.30)}
.lead,.muted{color:#b8d5e8!important}
.info-block{
  background:linear-gradient(135deg,rgba(9,72,127,.72),rgba(5,45,86,.74))!important;
  border-color:rgba(64,215,246,.23)!important;
}
.progressbar{background:rgba(0,22,52,.48)!important;border:1px solid rgba(70,210,245,.13)}
.progressbar i{background:linear-gradient(90deg,#1fc7ff,#39efe0,#ffe25a)!important;box-shadow:0 0 18px rgba(41,223,239,.22)}

/* CTA language mirrors the home screen: cyan for navigation, yellow for primary action */
.btn{
  background:linear-gradient(135deg,#24d7ee,#1bb5ff)!important;
  color:#031b2e!important;
  border:1px solid rgba(119,241,255,.55)!important;
  box-shadow:0 12px 28px rgba(0,151,221,.20),inset 0 1px 0 rgba(255,255,255,.35)!important;
}
.btn:hover{box-shadow:0 14px 32px rgba(0,184,235,.28),0 0 22px rgba(41,225,245,.14)!important}
.btn.secondary{
  background:linear-gradient(135deg,rgba(6,66,120,.92),rgba(4,42,82,.94))!important;
  color:#f7fdff!important;
  border-color:rgba(78,212,248,.30)!important;
}
.btn.yellow,.btn.success{
  background:linear-gradient(135deg,#ffe45b,#ffc222)!important;
  color:#2b2000!important;
  border-color:rgba(255,236,119,.80)!important;
  box-shadow:0 12px 30px rgba(255,183,0,.22),0 0 20px rgba(255,211,38,.09)!important;
}
.btn.yellow:hover,.btn.success:hover{box-shadow:0 15px 36px rgba(255,181,0,.30),0 0 28px rgba(255,218,49,.16)!important}
.choice,.nav-card{
  background:linear-gradient(135deg,rgba(7,64,118,.82),rgba(5,43,83,.86))!important;
  border-color:rgba(64,207,244,.24)!important;
}
.choice:hover,.nav-card:hover{border-color:rgba(66,230,247,.62)!important;background:linear-gradient(135deg,rgba(9,83,145,.90),rgba(6,54,100,.92))!important}
.choice.selected,.nav-card.selected{
  border-color:rgba(255,218,55,.78)!important;
  box-shadow:0 0 0 1px rgba(255,218,55,.10),0 0 22px rgba(255,195,0,.11)!important;
}

/* Scene 02 — Case study */
.scene-case .case-cinematic{
  border:1px solid rgba(71,218,255,.38)!important;
  box-shadow:0 22px 60px rgba(0,38,86,.34),0 0 28px rgba(21,191,255,.08)!important;
}
.case-panel-ui{background:linear-gradient(160deg,rgba(7,64,120,.96),rgba(3,35,75,.96))!important}
.case-problem{color:#fff!important}
.hypothesis-card,.confirmed-hyp{border-color:rgba(255,213,50,.28)!important;background:linear-gradient(135deg,rgba(88,74,7,.36),rgba(7,52,96,.76))!important}

/* Scene 03 — Equipment inspection */
.equipment-station,.inspection-summary{
  background:linear-gradient(155deg,rgba(8,65,119,.96),rgba(3,34,72,.96))!important;
  border-color:rgba(74,220,255,.28)!important;
}
.inspection-workbench{
  background:linear-gradient(180deg,rgba(8,76,133,.62),rgba(5,47,91,.78) 58%,rgba(14,54,77,.88))!important;
  border:1px solid rgba(70,215,248,.16)!important;
}
.b3-tool{
  background:linear-gradient(150deg,rgba(10,82,137,.75),rgba(5,49,90,.86))!important;
  border-color:rgba(59,207,239,.22)!important;
}
.b3-tool:hover{border-color:rgba(62,232,244,.66)!important;box-shadow:0 10px 24px rgba(0,82,144,.24),0 0 18px rgba(52,224,240,.10)!important}
.b3-tool.inspected{background:linear-gradient(145deg,rgba(14,105,124,.72),rgba(5,65,99,.87))!important;border-color:rgba(97,238,180,.37)!important}
.station-status-nav,.safety-hub,.required-panel{
  background:linear-gradient(145deg,rgba(6,66,119,.78),rgba(4,42,80,.86))!important;
  border-color:rgba(72,215,245,.24)!important;
}
.station-status-nav.ready,.safety-hub.complete{border-color:rgba(100,242,181,.42)!important;box-shadow:0 0 20px rgba(83,225,154,.08)!important}

/* Scene 04 — Variables */
.scene-vars .b4-control-panel,.scene-vars .b4-summary{
  background:linear-gradient(155deg,rgba(7,63,118,.96),rgba(4,35,73,.96))!important;
  border-color:rgba(71,219,255,.27)!important;
}
.scene-vars .b4-preview{
  background:
    radial-gradient(circle at 80% 18%,rgba(255,221,70,.16),transparent 25%),
    linear-gradient(155deg,#0a4f89 0%,#083963 48%,#062b50 100%)!important;
  border-color:rgba(71,218,255,.30)!important;
}
.b4-control,.b4-status-list,.b4-hypothesis{
  background:linear-gradient(145deg,rgba(7,75,130,.66),rgba(5,47,90,.72))!important;
  border-color:rgba(73,208,242,.20)!important;
}
.b4-load-card{background:linear-gradient(145deg,rgba(6,65,118,.86),rgba(4,43,82,.90))!important;border-color:rgba(73,205,241,.22)!important}
.b4-load-card.active,.b4-load-card.selected{border-color:rgba(255,218,45,.72)!important;box-shadow:0 0 22px rgba(255,203,0,.10)!important;background:linear-gradient(145deg,rgba(84,73,9,.58),rgba(7,65,112,.88))!important}

/* Scene 05 — Assembly */
.scene-circuit .b5-workbench,.b5-big-bench,.b5-sim-stage{
  background:
    radial-gradient(circle at 76% 12%,rgba(255,215,54,.08),transparent 24%),
    linear-gradient(180deg,rgba(8,65,111,.97) 0 55%,rgba(13,70,100,.96) 55% 61%,rgba(4,31,55,.98) 61%)!important;
  border-color:rgba(72,218,255,.27)!important;
}
.b5-assembly-coach,.b5-current-task,.b5-assessment,.b5-status-panel,.b5-connection-explain{
  background:linear-gradient(155deg,rgba(7,67,121,.96),rgba(4,37,76,.96))!important;
  border-color:rgba(67,211,246,.24)!important;
}
.b5-active-grab,.b5-component-dock,.b5-2d-dock,.b5-locked-tool{
  background:linear-gradient(145deg,rgba(8,75,129,.78),rgba(4,47,88,.86))!important;
  border-color:rgba(65,207,240,.22)!important;
}
.b5-status-chip,.b5-complete-seal{border-color:rgba(100,243,183,.34)!important;box-shadow:0 0 20px rgba(84,227,159,.07)!important}

/* Scene 06–07 — Measurement */
.b6-v20-stage,.b6-stage-card{
  background:
    radial-gradient(circle at 72% 8%,rgba(34,199,255,.12),transparent 28%),
    linear-gradient(160deg,rgba(8,65,117,.97),rgba(4,34,70,.98))!important;
  border-color:rgba(70,217,253,.27)!important;
}
.b6-side,.b6-context-panel,.b6-result-card,.b6-prereq,.b6-v20-procedure{
  background:linear-gradient(155deg,rgba(7,65,118,.95),rgba(4,37,76,.96))!important;
  border-color:rgba(66,205,241,.24)!important;
}
.b6-mode-btn{background:linear-gradient(145deg,rgba(7,72,127,.86),rgba(4,44,83,.91))!important;border-color:rgba(71,207,240,.22)!important}
.b6-mode-btn.active{border-color:rgba(255,214,43,.75)!important;background:linear-gradient(145deg,rgba(91,75,4,.62),rgba(9,64,111,.90))!important;box-shadow:0 0 20px rgba(255,207,0,.10)!important}
.b6-meter-shell,.b6-v20-meter{box-shadow:0 24px 48px rgba(0,20,54,.42),0 0 24px rgba(30,190,255,.08)!important}

/* Scene 08–09 — Analysis and comparison */
.b7-v20-workstation,.b7-workstation,.b7-chart-shell,.b7-analytics-main{
  background:linear-gradient(155deg,rgba(8,66,120,.96),rgba(4,35,73,.97))!important;
  border-color:rgba(68,214,249,.25)!important;
}
.b7-analysis-side,.b7-compare-side,.b7-history-tray,.b7-formula-card,.b7-input-card,.b7-scenario-card,.b7-question-box,.b7-note{
  background:linear-gradient(145deg,rgba(7,70,123,.88),rgba(4,43,82,.93))!important;
  border-color:rgba(65,206,241,.22)!important;
}
.b7-formula-card.done,.b7-scenario-card.selected{border-color:rgba(255,216,43,.62)!important;box-shadow:0 0 20px rgba(255,208,0,.08)!important}
.b7-table th{background:rgba(12,96,148,.52)!important;color:#8ef1f4!important}
.b7-table td{background:rgba(5,49,92,.34)!important}
.b7-bar{background:linear-gradient(180deg,#33e8ee,#1e9eff)!important;box-shadow:0 0 18px rgba(37,204,244,.14)!important}

/* Scene 10 — Evaluation */
.b8-quiz-main,.b8-eval-side,.b8-result-left,.b8-result-right .glass,.b8-score-card,.b8-reflection-card,.b8-summary-card,.b8-procedure-card,.b8-completion-card{
  background:linear-gradient(155deg,rgba(8,65,119,.96),rgba(4,35,73,.97))!important;
  border-color:rgba(69,214,248,.25)!important;
}
.b8-question-card,.b8-answer-state,.b8-review-item,.b8-assembly-result-card{
  background:linear-gradient(145deg,rgba(7,72,126,.85),rgba(4,44,84,.91))!important;
  border-color:rgba(65,205,240,.21)!important;
}
.b8-answer-state:hover{border-color:rgba(69,228,246,.57)!important;background:linear-gradient(145deg,rgba(8,87,145,.90),rgba(5,55,101,.94))!important}
.b8-answer-state.selected{border-color:rgba(255,216,48,.70)!important;box-shadow:0 0 20px rgba(255,209,0,.09)!important}
.b8-score-ring{filter:drop-shadow(0 0 16px rgba(42,225,239,.12))}

/* Scene 11 — Closing */
.b9-closing-card{
  background:linear-gradient(155deg,rgba(8,67,122,.96),rgba(4,34,72,.97))!important;
  border-color:rgba(73,219,254,.30)!important;
}
.b9-info-card,.b9-completion,.b9-ack-panel,.b9-source-strip{
  background:linear-gradient(145deg,rgba(7,73,127,.83),rgba(4,43,82,.90))!important;
  border-color:rgba(68,209,243,.22)!important;
}
.b9-close-brand .h2{color:#ffe148!important;text-shadow:0 0 18px rgba(255,206,40,.12)}

/* Bottom action rails */
.bottom-actions{
  background:linear-gradient(180deg,rgba(3,23,48,.15),rgba(3,21,45,.86))!important;
}

/* Small polished solar accent used consistently across all functional screens */
.scene:not(.scene-home) .h2:after{
  content:"";display:inline-block;width:34px;height:4px;margin-left:10px;vertical-align:middle;border-radius:4px;
  background:linear-gradient(90deg,#25dff0,#ffd72e);box-shadow:0 0 12px rgba(38,218,239,.12);
}


/* responsive media removed by fixed-16:9 v2.8 */

@media(prefers-reduced-motion:reduce){
  .btn,.choice,.nav-card,.b3-tool,.b4-load-card,.b6-mode-btn{transition:none!important}
}


/* ===== Bright colorful theme overrides v2.6 ===== */
:root{
  --navy:#0c2b57;
  --navy2:#123e78;
  --panel:rgba(17,58,104,.86);
  --panel2:rgba(19,78,130,.88);
  --blue:#55c9ff;
  --cyan:#61f0e7;
  --yellow:#ffd94f;
  --green:#62ec9f;
  --amber:#ffbf52;
  --text:#f7fcff;
  --muted:#c0d8ea;
  --line:rgba(145,224,255,.28);
  --shadow:0 24px 72px rgba(4,18,40,.28);
}
html,body{background:linear-gradient(180deg,#113a74 0%,#0d2b55 100%)}
.sm-root{
  background:
    radial-gradient(circle at 18% 18%,rgba(100,205,255,.18),transparent 26%),
    radial-gradient(circle at 84% 12%,rgba(86,243,223,.18),transparent 24%),
    radial-gradient(circle at 78% 86%,rgba(255,218,79,.10),transparent 18%),
    linear-gradient(145deg,#0b2b57 0%,#114782 52%,#0b2446 100%);
}
.sm-root:before{opacity:.95}
.orb.o1{background:#46c3ff;opacity:.26}
.orb.o2{background:#47e6c7;opacity:.24}
.topbar{
  background:linear-gradient(180deg,rgba(7,29,61,.88),rgba(11,42,82,.78));
  border-bottom:1px solid rgba(128,219,255,.28);
  box-shadow:0 8px 30px rgba(4,18,40,.22);
}
.brand-mark{box-shadow:0 10px 30px rgba(255,209,77,.34)}
.stepdot{background:#2f5f8d}
.stepdot.active{box-shadow:0 0 20px rgba(85,201,255,.55),0 0 32px rgba(97,240,231,.22)}
.stepdot.done{background:linear-gradient(90deg,#52e59b,#7cffcb)}
.icon-btn,.mini-btn{
  background:linear-gradient(180deg,rgba(24,78,126,.82),rgba(16,55,94,.82));
  border-color:rgba(128,222,255,.26);
  box-shadow:0 8px 18px rgba(8,25,53,.18);
}
.icon-btn:hover,.mini-btn:hover{
  background:linear-gradient(180deg,rgba(34,102,160,.92),rgba(22,72,118,.92));
  border-color:rgba(97,240,231,.52);
  box-shadow:0 10px 26px rgba(44,157,255,.18);
}
.glass{
  background:linear-gradient(165deg,rgba(18,65,114,.84),rgba(10,39,72,.86));
  border:1px solid rgba(131,222,255,.22);
  box-shadow:0 24px 60px rgba(7,18,45,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
.card{background:transparent}
.eyebrow{color:#80f6ec;text-shadow:0 0 12px rgba(128,246,236,.12)}
.h1,.h2{color:#ffffff;text-shadow:0 3px 18px rgba(0,0,0,.12)}
.lead{color:#e0effb}
.prompt{border-left-color:#7cf0e4;background:linear-gradient(90deg,rgba(126,240,229,.09),transparent)}
.btn{
  background:linear-gradient(135deg,#6ef5ea,#53c7ff);
  box-shadow:0 14px 34px rgba(74,211,255,.22);
}
.btn.secondary{
  background:linear-gradient(180deg,rgba(31,97,152,.85),rgba(22,69,116,.82));
  color:#f6fbff;border:1px solid rgba(132,221,255,.24)
}
.btn.yellow{
  background:linear-gradient(135deg,#ffe56e,#ffbb49);
  box-shadow:0 14px 34px rgba(255,207,88,.24);
}
.nav-card{
  background:linear-gradient(160deg,rgba(23,78,132,.82),rgba(15,55,98,.84));
  border-color:rgba(133,223,255,.22);
  box-shadow:0 14px 34px rgba(8,28,52,.16);
}
.nav-card:hover{
  background:linear-gradient(160deg,rgba(30,102,167,.92),rgba(19,66,120,.90));
  border-color:rgba(117,244,236,.48);
  box-shadow:0 18px 38px rgba(53,173,255,.18);
}
.nav-card strong{color:#ffffff}
.nav-card span{color:#d8ebf8}
.lab-visual{
  border-color:rgba(132,221,255,.24);
  box-shadow:0 20px 54px rgba(7,18,45,.22);
}
.window{box-shadow:inset 0 0 30px rgba(255,255,255,.38),0 10px 26px rgba(36,176,255,.18)}
.bench{background:linear-gradient(#99806c 0 12%,#365061 12%)}
.hero-actions .nav-card{min-height:112px;border-radius:22px}
.choice,.answer-option,.option,.scenario-card,.metric-card,.stat-card,.info-card,.panel-card,.summary-card{
  background:linear-gradient(160deg,rgba(18,70,118,.82),rgba(11,44,79,.84));
  border-color:rgba(133,223,255,.20);
}
.choice:hover,.answer-option:hover,.option:hover,.scenario-card:hover,.metric-card:hover,.stat-card:hover,.info-card:hover,.panel-card:hover,.summary-card:hover{
  border-color:rgba(117,244,236,.42);
  box-shadow:0 12px 28px rgba(70,187,255,.15);
}
input,select,textarea,.input,.select,.field{
  background:rgba(10,38,69,.82)!important;
  border-color:rgba(133,223,255,.24)!important;
  color:#f6fbff!important;
}
.case-visual{background:linear-gradient(#8edcff 0 50%,#c7db8d 50% 68%,#6f905a 68%)}
.sun{box-shadow:0 0 70px rgba(255,221,94,.65)}
.cloud,.cloud:before,.cloud:after{background:#eef7fc}
.table-wrap,.data-table,.analysis-table,table{
  border-color:rgba(133,223,255,.18);
}
th{background:rgba(18,74,122,.70);color:#eaf8ff}
td{background:rgba(10,42,75,.42);color:#deedf7}
.sidebar,.side-panel,.right-panel,.left-panel{
  background:linear-gradient(160deg,rgba(18,62,109,.88),rgba(10,37,69,.88));
}
.toast,.sm-toast{
  background:linear-gradient(135deg,rgba(23,88,142,.96),rgba(17,66,113,.96));
  border:1px solid rgba(126,223,255,.24);
}
.progress-bar,.meter-bar,.fill,.progress-fill{filter:saturate(1.15) brightness(1.08)}
.badge,.tag,.pill{
  background:linear-gradient(135deg,rgba(109,246,226,.18),rgba(87,201,255,.18));
  border-color:rgba(126,223,255,.22);
  color:#f0fbff;
}
canvas, img { image-rendering:auto; }

/* =========================================================
   SolarMeter v2.7 — Modern colorful equipment cards
   ========================================================= */
.scene-tools .equipment-station,
.scene-tools .inspection-summary{
  background:
    radial-gradient(circle at 14% 8%,rgba(70,194,255,.14),transparent 25%),
    radial-gradient(circle at 88% 10%,rgba(104,242,220,.10),transparent 22%),
    linear-gradient(155deg,rgba(10,70,128,.96),rgba(5,39,82,.97))!important;
  border-color:rgba(116,224,255,.30)!important;
  box-shadow:0 22px 54px rgba(4,20,45,.22),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.scene-tools .inspection-workbench{
  background:
    radial-gradient(circle at 18% 10%,rgba(70,195,255,.14),transparent 24%),
    radial-gradient(circle at 82% 12%,rgba(116,245,224,.10),transparent 23%),
    linear-gradient(180deg,#0d5a99 0 20%,#0a477c 20% 70%,#31596c 70% 74%,#17384e 74%)!important;
  border-color:rgba(117,223,255,.26)!important;
}
.scene-tools .zone-labels{
  color:#b9edff!important;
  font-size:6.5px!important;
  font-weight:800!important;
  letter-spacing:1.2px!important;
  text-shadow:0 2px 10px rgba(0,0,0,.2);
}
.scene-tools .b3-tool-grid{gap:8px!important}
.scene-tools .b3-tool{
  position:relative;
  justify-content:flex-start!important;
  gap:0!important;
  padding:9px 8px 8px!important;
  border-radius:15px!important;
  overflow:hidden!important;
  border:1px solid rgba(140,225,255,.24)!important;
  background:linear-gradient(155deg,rgba(17,100,164,.84),rgba(7,59,111,.92))!important;
  box-shadow:0 10px 24px rgba(2,26,59,.14),inset 0 1px 0 rgba(255,255,255,.045)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.scene-tools .b3-tool:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:4px;
  background:var(--tool-accent,#60e7df);
  opacity:.90;
}
.scene-tools .b3-tool.zone-a{--tool-accent:#52c8ff}
.scene-tools .b3-tool.zone-b{--tool-accent:#72f1e6}
.scene-tools .b3-tool.zone-c{--tool-accent:#ffd45a}
.scene-tools .b3-tool.zone-d{--tool-accent:#ff9d64}
.scene-tools .b3-tool.zone-e{--tool-accent:#7be89d}
.scene-tools .b3-tool:hover{
  transform:translateY(-3px) scale(1.012)!important;
  border-color:var(--tool-accent,#60e7df)!important;
  box-shadow:0 15px 30px rgba(0,49,99,.20),0 0 18px color-mix(in srgb,var(--tool-accent,#60e7df) 20%,transparent)!important;
  filter:brightness(1.04);
}
.scene-tools .b3-tool-visual{
  width:100%;
  min-height:58px;
  display:grid;
  place-items:center;
  margin:2px 0 4px;
  position:relative;
  z-index:1;
}
.scene-tools .b3-tool .equip-visual{
  width:82px!important;
  height:58px!important;
  transform:scale(.94)!important;
  margin:0!important;
}
.scene-tools .b3-tool:hover .equip-visual{transform:translateY(-2px) scale(.98)!important}
.scene-tools .b3-tool .tool-name{
  width:100%;
  min-height:28px;
  display:flex!important;
  align-items:center;
  justify-content:center;
  margin-top:auto;
  padding:5px 7px 6px;
  border-radius:9px;
  background:linear-gradient(180deg,rgba(3,36,71,.46),rgba(2,26,55,.68));
  border:1px solid rgba(161,225,255,.10);
  color:#f8fcff!important;
  font-size:8.5px!important;
  font-weight:800!important;
  line-height:1.15!important;
  text-align:center!important;
  letter-spacing:.05px;
  white-space:normal!important;
  overflow-wrap:anywhere;
  text-shadow:0 1px 4px rgba(0,0,0,.28);
  position:relative;
  z-index:3;
}
/* The old secondary caption ("BUKA MODEL 3D" / "DIPELAJARI") is intentionally removed. */
.scene-tools .b3-tool>small{display:none!important}
.scene-tools .tool-zone{
  left:8px!important;top:7px!important;
  width:20px!important;height:20px!important;
  border-radius:7px!important;
  color:#071d34!important;
  background:var(--tool-accent,#65e7df)!important;
  border:0!important;
  font:900 7px Consolas!important;
  box-shadow:0 5px 12px rgba(0,0,0,.16)!important;
}
.scene-tools .native3d-mini{
  right:8px!important;bottom:auto!important;top:7px!important;
  min-width:28px!important;height:20px!important;
  padding:0 6px!important;
  border-radius:7px!important;
  display:grid!important;place-items:center!important;
  color:#dcfbff!important;
  background:rgba(3,36,67,.70)!important;
  border:1px solid rgba(130,230,255,.24)!important;
  font-size:7px!important;
  font-weight:900!important;
  letter-spacing:.4px!important;
}
.scene-tools .tool-check{
  right:8px!important;top:7px!important;
  width:21px!important;height:21px!important;
  background:linear-gradient(145deg,#61e69e,#39bd85)!important;
  color:#06271a!important;
  border:1px solid rgba(226,255,239,.44)!important;
  box-shadow:0 0 0 4px rgba(85,225,157,.09),0 6px 14px rgba(0,0,0,.16)!important;
}
.scene-tools .b3-tool.inspected .native3d-mini{display:none!important}
.scene-tools .b3-tool.inspected{
  background:linear-gradient(155deg,rgba(17,123,137,.82),rgba(7,72,107,.94))!important;
  border-color:rgba(104,238,182,.38)!important;
}
.scene-tools .b3-tool.required:not(.inspected){
  box-shadow:0 10px 24px rgba(2,26,59,.14),inset 0 -3px 0 rgba(255,212,90,.30)!important;
}
.scene-tools .station-head .h2{color:#ffffff!important;letter-spacing:-.4px}
.scene-tools .station-head .muted{color:#d9eefb!important}
.scene-tools .station-status{
  background:linear-gradient(155deg,rgba(16,92,145,.82),rgba(7,56,102,.88))!important;
  border-color:rgba(111,229,255,.26)!important;
}
.scene-tools .inspection-count strong{color:#ffffff!important;text-shadow:0 0 18px rgba(89,218,255,.18)}
.scene-tools .progressbar{background:rgba(5,43,83,.64)!important;border:1px solid rgba(120,222,255,.12)}
.scene-tools .progressbar i{background:linear-gradient(90deg,#57d5ff,#6af0e2,#7aeca1)!important;box-shadow:0 0 16px rgba(93,229,224,.25)}
.scene-tools .required-panel,.scene-tools .hypothesis-mini{
  background:linear-gradient(155deg,rgba(11,72,124,.70),rgba(5,44,84,.82))!important;
  border-color:rgba(125,220,255,.18)!important;
}
.scene-tools .safety-hub{
  background:linear-gradient(135deg,rgba(23,125,111,.45),rgba(7,71,104,.82))!important;
  border-color:rgba(102,237,190,.28)!important;
}
.scene-tools .safety-hub:hover{box-shadow:0 12px 30px rgba(20,185,154,.14)!important}

/* responsive media removed by fixed-16:9 v2.8 */


/* responsive media removed by fixed-16:9 v2.8 */



/* =========================================================
   SolarMeter v2.8 — Fixed 16:9 classroom viewport
   No responsive reflow: the complete 1600x900 interface is uniformly
   scaled to fit the browser while preserving all labels and controls.
   ========================================================= */
html,body{
  width:100%;height:100%;overflow:hidden!important;
  background:#071a35!important;
}
body{position:relative!important;}
.sm-root{
  position:fixed!important;
  inset:auto!important;
  width:1600px!important;
  height:900px!important;
  min-width:1600px!important;
  min-height:900px!important;
  max-width:1600px!important;
  max-height:900px!important;
  transform-origin:0 0!important;
  overflow:hidden!important;
}
.shell{width:1600px!important;height:900px!important;}
.content{padding:18px 24px 18px!important;}
.topbar{height:68px!important;padding:0 24px!important;}
.brand{min-width:250px!important;}
.brand-sub{display:block!important;}
.stepper-wrap,.stepper{display:flex!important;}
.bottom-actions{left:26px!important;right:26px!important;bottom:14px!important;}

/* Scene 03 — use previously empty workbench space for larger cards. */
.scene-tools.b3-tools{padding-bottom:56px!important;}
.scene-tools .equipment-layout{
  height:100%!important;
  grid-template-columns:minmax(0,1fr) 330px!important;
  gap:18px!important;
}
.scene-tools .equipment-station{padding:14px 16px 12px!important;}
.scene-tools .station-head{
  height:64px!important;
  min-height:64px!important;
  align-items:flex-start!important;
}
.scene-tools .station-head .h2{font-size:29px!important;margin:0 0 4px!important;}
.scene-tools .station-head .muted{
  display:block!important;
  font-size:11px!important;
  line-height:1.35!important;
  max-width:780px!important;
}
.scene-tools .station-status{display:flex!important;min-width:164px!important;}
.scene-tools .inspection-workbench{
  height:calc(100% - 64px)!important;
  min-height:0!important;
  border-radius:16px!important;
}
.scene-tools .zone-labels{
  display:grid!important;
  left:2.2%!important;right:2.2%!important;top:2.2%!important;
  font-size:7.3px!important;
  letter-spacing:1.15px!important;
}
.scene-tools .bench-backline{top:7%!important;opacity:.55!important;}
.scene-tools .b3-tool-grid{
  left:2.0%!important;
  right:2.0%!important;
  top:7.2%!important;
  bottom:6.2%!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  overflow:visible!important;
}
.scene-tools .b3-tool{
  min-height:0!important;
  padding:11px 8px 8px!important;
  border-radius:15px!important;
  gap:2px!important;
}
.scene-tools .b3-tool-visual{
  min-height:72px!important;
  margin:3px 0 5px!important;
}
.scene-tools .b3-tool .equip-visual{
  width:98px!important;
  height:72px!important;
  transform:scale(1)!important;
}
.scene-tools .b3-tool:hover .equip-visual{
  transform:translateY(-2px) scale(1.035)!important;
}
.scene-tools .b3-tool .tool-name{
  min-height:30px!important;
  padding:6px 8px!important;
  font-size:10px!important;
  line-height:1.16!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.scene-tools .tool-zone{left:8px!important;top:8px!important;width:22px!important;height:22px!important;font-size:8px!important;}
.scene-tools .native3d-mini{right:8px!important;top:8px!important;min-width:30px!important;height:22px!important;font-size:7px!important;}
.scene-tools .tool-check{right:8px!important;top:8px!important;width:23px!important;height:23px!important;}
.scene-tools .bench-front{
  bottom:0!important;
  height:6%!important;
  opacity:.65!important;
}
.scene-tools .inspection-summary{display:flex!important;padding:18px!important;}
.scene-tools .required-title small{display:block!important;}

/* Fixed-size inspection dialogs: 90% of the internal 1600x900 canvas. */
.b3-tool-modal{
  width:1440px!important;
  height:810px!important;
  max-width:1440px!important;
  max-height:810px!important;
  padding:22px!important;
}
.b3-tool-modal .b3-modal-grid{
  grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr)!important;
  gap:24px!important;
}
.b3-tool-modal .b3-tool-focus{height:auto!important;min-height:0!important;}
.safety-modal{width:1120px!important;max-width:1120px!important;max-height:780px!important;}
.b8-data-modal{width:1120px!important;max-width:1120px!important;max-height:760px!important;}
.b8-review-modal{width:1040px!important;max-width:1040px!important;max-height:780px!important;}

/* Never hide structural content because of browser width. */
.inspection-summary,.b3-summary,.b5-assembly-coach,.b6-v20-procedure{display:flex!important;}
.scene-tools .b3-summary{display:flex!important;}
.action-cluster .btn span{display:inline!important;}


/* SolarMeter v2.9 centered fixed-16:9 hotfix */
html,body{margin:0!important;padding:0!important;width:100%!important;height:100%!important;overflow:hidden!important;background:#071a35!important;}
body{position:relative!important;}
.sm-root{position:fixed!important;inset:auto!important;margin:0!important;}
