:root{color-scheme:dark;--bg:#0b111a;--surface:#131e2b;--stroke:#2a3b50;--fg:#ecf3f9;--muted:#a0b1c3;--accent:#f1a748;--cyan:#55c5dd;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg)}.app{display:flex;flex-direction:column;min-height:100vh}.top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 24px;border-bottom:1px solid #223249;background:#0e1825}.brand{display:flex;gap:18px;align-items:center}.mark{display:inline-flex;justify-content:center;align-items:center;width:48px;height:48px;border:1px solid #42536a;border-radius:12px;font-weight:850;font-size:21px;color:#fff}.star{color:var(--accent);font-size:14px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.23em;color:#f2b866}h1{font-size:22px;font-weight:740;line-height:1.2;margin:5px 0 0}.tag{font-size:10px;vertical-align:middle;border:1px solid #5c513b;color:#edc68a;border-radius:5px;padding:5px 7px;margin-left:7px}.sub{font-size:12px;color:var(--muted)}.workspace{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 385px;min-height:690px}.stage{min-height:690px;position:relative;background:radial-gradient(circle at 48% 43%,#1d3449 0%,#0c1420 72%);overflow:hidden}#viewport{position:absolute;inset:0}#viewport canvas{display:block;width:100%;height:100%;touch-action:none}.scene-ui{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;color:#dce8f3;font-size:12px}.top-left{top:20px;left:20px;background:#101925d6;border:1px solid #344559;padding:12px 15px;border-radius:10px;font-weight:780;letter-spacing:.07em}.live-led{height:9px;width:9px;border-radius:50%;background:#647588}.live-led.active{background:#55dcac;box-shadow:0 0 15px #55dcac}.divider{color:#50647d}.top-right{right:18px;top:20px}.scene-bottom{bottom:16px;left:18px;right:18px;justify-content:space-between;color:#b0bfd1;pointer-events:none}.panel{background:#101a27;border-left:1px solid #2a3a4e;min-height:0}.panel-scroll{max-height:calc(100vh - 146px);min-height:670px;overflow-y:auto;padding:8px 22px 26px}.control-section{padding:19px 0 18px;border-bottom:1px solid #28374a}.section-label{font-size:10px;font-weight:850;letter-spacing:.18em;color:#f1b467;margin-bottom:16px;display:flex;justify-content:space-between}.buttonrow{display:flex;gap:9px}button,select{font:inherit;background:#203044;color:#eaf2fc;border:1px solid #42546a;border-radius:9px;padding:10px 13px;cursor:pointer}button{font-size:12px;font-weight:760;transition:background .15s}button:hover{background:#32475e}.buttonrow button{flex:1}.buttonrow .primary{background:#d58b31;border-color:#e6a24c;color:#0e1825}.buttonrow .primary.running{background:#d66261;border-color:#e48481;color:#fff}.sliderrow{display:flex;align-items:center;justify-content:space-between;margin-top:16px;margin-bottom:8px;font-size:12px;color:#c8d5e3}.sliderrow strong{color:#edf7fd;font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer}.ends{display:flex;justify-content:space-between;color:#7d93aa;font-size:10px;margin-top:3px}.inputrow{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:13px 0;font-size:12px}.inputrow select{max-width:185px;font-size:11px;padding:8px}.checkrow{display:flex;justify-content:space-between;align-items:center;margin:13px 0;color:#cdd9e8;font-size:12px;cursor:pointer}.checkrow input{width:16px;height:16px;accent-color:var(--accent)}.compact{padding-bottom:9px}.telemetry{display:grid;grid-template-columns:1fr 1fr;gap:9px}.telemetry>div{padding:11px;border:1px solid #2b3d52;border-radius:8px;background:#152233}.telemetry span{font-size:10px;display:block;color:#a0b3c6;margin-bottom:7px}.telemetry strong{font-size:17px;font-weight:780;font-variant-numeric:tabular-nums}.pulse{font-size:9px;color:#60d9ad}.explain p{font-size:12px;line-height:1.7;color:#bfcee0}.formula{text-align:center;font-family:Georgia,serif;padding:12px;margin:12px 0;border:1px solid #39556a;border-radius:8px;font-size:21px;color:#a7d5e7;background:#1a3041}.disclaimer{font-size:11px;color:#9eafc1;line-height:1.6;border-left:2px solid #cf944a;padding-left:12px}.footer{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 22px;background:#0d1520;border-top:1px solid #233349;color:#97aabd;font-size:11px}.loading{position:absolute;inset:0;display:flex;gap:14px;align-items:center;justify-content:center;flex-direction:column;font-size:13px;color:#d6e6f4}.spinner{width:28px;height:28px;border:3px solid #3b5568;border-top-color:var(--accent);border-radius:50%;animation:rotate 1s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.error{max-width:440px;text-align:center;line-height:1.65;background:#271d26;padding:20px;border-radius:12px}
@media(max-width:1000px){.workspace{grid-template-columns:minmax(0,1fr)}.stage{height:65vh;min-height:480px}.panel-scroll{max-height:none;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.panel{border-left:0;border-top:1px solid #31475f}.sub{display:none}}
@media(max-width:620px){.top{padding:13px}.mark{width:38px;height:38px;font-size:17px}.brand{gap:9px}h1{font-size:16px}.eyebrow{font-size:8px}.tag{font-size:9px}.stage{height:54vh;min-height:350px}.panel-scroll{grid-template-columns:1fr;padding:8px 16px}.scene-ui{font-size:10px}.top-left{left:9px;top:9px;padding:8px}.top-right{right:9px;top:59px}.top-right button{padding:7px}.scene-bottom{bottom:10px;font-size:9px}.scene-bottom div:last-child{display:none}.footer{font-size:10px}}
