:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#eff5f4;background:#0c1b23;font-synthesis:none;--accent:#62cfbd;--muted:#80959c;--panel:#13242d;--line:#29414a}*{box-sizing:border-box}body{margin:0;min-width:340px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid #9df0da;outline-offset:3px}#app{min-height:100dvh;display:flex;flex-direction:column}.topbar{height:76px;min-height:76px;border-bottom:1px solid #2d4550;background:#0d1e26;display:flex;align-items:center;gap:16px;padding:0 30px;z-index:3}.brand-mark{height:38px;width:38px;position:relative;border:1px solid #466775;display:grid;place-items:center;border-radius:11px;flex-shrink:0}.brand-mark:before{content:'';height:17px;width:17px;border:2px solid #7dcbba;border-radius:50%;position:absolute;transform:rotate(-28deg) scaleX(.65)}.mark-line{width:25px;height:2px;background:#e0c39b;transform:rotate(-30deg);position:absolute}.mark-dot{position:absolute;height:5px;width:5px;border-radius:50%;background:#f4b977;right:4px;top:8px}.brand-group{display:flex;flex-direction:column;gap:4px}.brand-group strong{font-size:18px;font-weight:650;letter-spacing:1.1px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:800;color:#93adad}.eyebrow em{font-style:normal;color:#a2d0c3;margin:0 5px}.slash{color:#75ada6;margin:0 5px}.header-right{display:flex;align-items:center;margin-left:auto;gap:18px}.archive-code{font-size:9px;letter-spacing:1.7px;color:#748e96;font-weight:700}.live-chip{border:1px solid #2b554d;border-radius:30px;font-size:10px;letter-spacing:1px;white-space:nowrap;color:#aadacc;background:#12352e;padding:8px 12px;font-weight:700}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6fdbb8;margin-right:6px;box-shadow:0 0 12px #6fdbb899}.icon-button{border:1px solid #36525b;background:#1c3039;color:#c6dcde;width:33px;height:33px;border-radius:8px;font-weight:bold}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 358px}.stage{position:relative;overflow:hidden;min-height:760px;background:#89b5b6}.stage-sky{position:absolute;inset:0;background:linear-gradient(180deg,#a7d7d5 0%,#b9dcd0 47%,#b2c9ac 75%,#91a98c 100%);transition:background .4s}.stage-sky.night{background:linear-gradient(180deg,#142a48 0%,#31465c 58%,#5c6670 100%)}#viewport{position:absolute;width:100%;height:100%;display:block;inset:0;touch-action:none;cursor:grab;z-index:1}#viewport:active{cursor:grabbing}.scene-head{position:absolute;z-index:2;top:33px;left:37px;max-width:345px;pointer-events:none;text-shadow:0 1px 10px #72999a44}.tiny-header{font-weight:850;font-size:9px;letter-spacing:2px;color:#66998e}.scene-head .tiny-header{color:#315960}.header-divider{margin:0 6px;color:#8ca1a2}.scene-head h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1.4px;line-height:.98;font-size:clamp(32px,3.6vw,58px);margin:13px 0;color:#183d46}.scene-head h1 span{color:#286d6f}.scene-head p{color:#315963;font-size:12px;line-height:1.7;max-width:260px;margin:12px 0}.stage-top-right{position:absolute;right:25px;top:28px;z-index:2;display:flex;flex-direction:column;align-items:end;gap:8px;pointer-events:none}.floating-tag{font-size:9px;letter-spacing:1.4px;color:#41646a;border:1px solid #6d9a9a80;background:#c8e8df80;padding:8px 11px;border-radius:4px;font-weight:800;backdrop-filter:blur(9px)}.floating-tag.ghost{font-size:8px;letter-spacing:1.2px;border:none;background:transparent}.scene-label{position:absolute;z-index:2;left:0;top:0;display:flex;align-items:center;gap:6px;transform:translate(-50%,-100%);pointer-events:none;white-space:nowrap;font-size:9px;letter-spacing:1px;color:#e3fff6;background:#193d45dd;border:1px solid #97c1b3a3;padding:7px 10px;border-radius:4px;box-shadow:0 6px 20px #142a2544;font-weight:800;transition:opacity .15s}.scene-label small{color:#9bd9c8}.scene-label.amber{color:#ffead0;background:#443e35d9;border-color:#b8a27d}.scene-label .label-dot{background:#62d5c1;width:6px;height:6px;border-radius:50%}.scene-label.amber .label-dot{background:#f2be79}.scene-label::after{position:absolute;content:'';height:20px;width:1px;background:#376c70;top:100%;left:50%}.stage-tools{position:absolute;right:26px;bottom:215px;z-index:2;display:flex;align-items:center;gap:5px;padding:6px;background:#15343bcf;border:1px solid #567e81;border-radius:9px;backdrop-filter:blur(12px)}.tool-title{font-size:9px;letter-spacing:1.4px;padding:0 8px;color:#a2c8c5}.camera-button{border:0;background:transparent;color:#add0d0;font-size:10px;font-weight:800;padding:9px 11px;border-radius:5px}.camera-button.active,.camera-button:hover{background:#b2e3d1;color:#24494b}.scene-footer{position:absolute;left:25px;right:25px;bottom:169px;z-index:2;display:flex;gap:18px;align-items:center;color:#2a5860;font-size:9px;font-weight:800;letter-spacing:.6px;text-shadow:0 1px 1px #a7c3b8aa}.small-square{width:8px;height:8px;display:inline-block;margin-right:5px;border-radius:2px}.small-square.cyan{background:#2f9b9a}.small-square.sand{background:#bc9363}.drag-hint{margin-left:auto;letter-spacing:1px}.drag-hint span{padding:0 4px}.telemetry{position:absolute;z-index:2;bottom:0;left:0;right:0;background:linear-gradient(145deg,#132e37f3,#0f252cf7);color:#e5f3f1;box-shadow:0 -15px 40px #23383732;border-top:1px solid #45666a;padding:20px 27px 21px;backdrop-filter:blur(14px);height:158px}.telemetry-heading{font-size:9px;letter-spacing:2px;color:#98d5c9;font-weight:900;display:flex;justify-content:space-between}.telemetry-heading span{color:#739095;font-weight:600}.telemetry-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;margin-top:19px}.metric{padding-left:19px;border-left:1px solid #34505a;min-width:0}.metric:first-child{padding-left:0;border:0}.metric>span{color:#79979a;font-size:9px;letter-spacing:1.1px;font-weight:700;display:block}.metric strong{font-variant-numeric:tabular-nums;font-size:31px;font-weight:570;letter-spacing:-1px;display:block;margin-top:4px}.metric strong small{font-weight:500;font-size:13px;color:#94aea9;margin-left:4px;letter-spacing:0}.metric-note{font-size:9px;letter-spacing:1px;font-weight:800;color:#70beb1}.mini-progress{background:#39505b;border-radius:5px;height:3px;margin-top:9px;width:80%}.mini-progress i{height:100%;display:block;border-radius:5px;background:#74dfc6;width:5%}.sidebar{background:#14252f;display:flex;flex-direction:column;min-width:0;border-left:1px solid #37515a;padding:29px 27px 0;color:#e6f1f0;overflow-y:auto}.panel-header{display:flex;justify-content:space-between;gap:8px;align-items:start}.panel-header h2{margin:6px 0 20px;font-size:23px;letter-spacing:-.5px;font-weight:650}.system-state{border-radius:30px;border:1px solid #455764;padding:7px 10px;font-size:8px;letter-spacing:1.2px;font-weight:800;color:#b6c7c8;margin-top:4px;white-space:nowrap}.system-state.running{color:#8ff1cc;border-color:#3f8973;background:#124434}.control-buttons{display:grid;grid-template-columns:1.1fr .77fr 42px;gap:7px}.primary-button{background:#77d5b9;color:#122b2e;border:0;border-radius:6px;padding:13px 13px;font-size:10px;letter-spacing:1px;font-weight:900;white-space:nowrap}.primary-button:hover{background:#9af4d6}.play-icon{margin-right:6px}.secondary-button{border:1px solid #45616a;border-radius:6px;background:#223944;color:#bcd5d3;font-size:10px;letter-spacing:.6px;font-weight:800;white-space:nowrap;padding:10px 7px}.secondary-button:hover{background:#344b53}.square-button{font-size:21px;line-height:1}.direction-strip{display:flex;justify-content:space-between;align-items:center;margin:12px 0 24px;padding:12px 13px;border-radius:5px;border:1px solid #294853;background:#0f212a}.direction-strip>span{font-size:9px;color:#819da4;font-weight:700;letter-spacing:1.4px}.direction-strip strong{color:#84ddc4;font-size:10px;letter-spacing:1px}.direction-strip strong span{padding-left:7px}.group-heading{border-top:1px solid #29414a;padding-top:16px;margin-top:0;display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.group-heading h3{font-size:13px;font-weight:700;margin:0}.group-heading span{font-size:9px;font-weight:800;color:#5f8387}.control-item{margin-bottom:25px}.control-label{display:flex;justify-content:space-between;margin-bottom:12px;align-items:center}.control-label label,.scenario-wrap label,.timescale-row label{font-size:10px;color:#a5b9bb;letter-spacing:1.1px;font-weight:800}.control-label output{font-size:13px;color:#9be2cd;font-variant-numeric:tabular-nums;font-weight:800}input[type=range]{-webkit-appearance:none;appearance:none;height:5px;width:100%;border-radius:20px;background:linear-gradient(to right,#8ce6c6 var(--value,66%),#3c5862 var(--value,66%));cursor:pointer;display:block;margin:0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border:3px solid #c0fae7;background:#357f78;border-radius:50%;box-shadow:0 0 0 3px #264e4d}input[type=range]::-moz-range-thumb{width:11px;height:11px;border:3px solid #c0fae7;background:#357f78;border-radius:50%}.control-extents{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#728b93;margin-top:11px;font-weight:800}.scenario-wrap{display:flex;flex-direction:column;gap:9px;margin-bottom:18px}select{color:#e2eeed;width:100%;background:#233944;border:1px solid #45606a;border-radius:5px;padding:11px 12px;font-size:12px;outline:0;cursor:pointer}select option{color:#eef4f1;background:#1c303a}.timescale-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:15px}.timescale-row small{display:block;font-size:9px;margin-top:6px;color:#708b92}.timescale-row select{width:75px;font-size:12px;flex-shrink:0}.chart-panel{border:1px solid #2f4850;border-radius:7px;background:#0d222a;padding:13px 13px 10px;margin-bottom:16px}.chart-heading,.chart-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:#7fa09d;font-weight:800}.chart-heading span:last-child{color:#91d9c8}#speedChart{display:block;width:100%;height:90px;margin:8px 0 4px}.chart-bottom{color:#688b91}.model-note{display:flex;align-items:flex-start;background:#1c333a;border-radius:7px;border:1px solid #315059;padding:11px 12px;gap:9px;color:#a2bcbb;margin-bottom:21px}.model-note .note-icon{font-size:16px;color:#93d9cd}.model-note p{margin:0;line-height:1.6;font-size:10px}.model-note strong{color:#d0e6e0}.panel-footer{margin-top:auto;min-height:56px;border-top:1px solid #2b414d;display:flex;gap:8px;align-items:center;justify-content:space-between}.panel-footer>span{font-size:8px;color:#617c84;letter-spacing:.85px;font-weight:800}.panel-footer button{border:0;background:transparent;color:#bdd4cd;white-space:nowrap;font-size:11px}.panel-footer button span{font-size:8px;letter-spacing:.4px}.error-overlay{position:absolute;z-index:10;inset:0;background:#14252fea;display:flex;justify-content:center;flex-direction:column;align-items:center;text-align:center;padding:30px;color:#fff}.error-overlay[hidden],.modal-backdrop[hidden]{display:none!important}.error-overlay p{max-width:460px}.modal-backdrop{position:fixed;z-index:10;inset:0;background:#050d11d9;display:grid;place-items:center;padding:16px}.modal{background:#142a32;border:1px solid #46726f;border-radius:13px;width:min(620px,100%);max-height:92dvh;overflow:auto;box-shadow:0 18px 80px #0009;padding:26px 32px;color:#e7f4ef}.modal-header{display:flex;justify-content:space-between;align-items:center;color:#76bda9;font-weight:850;letter-spacing:1.8px;font-size:10px}.modal-header button{background:transparent;border:0;color:#d0e1db;font-size:18px}.modal h2{font-size:29px;margin:17px 0 11px}.modal>p{color:#b6cecc;font-size:14px;line-height:1.65}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin:25px 0}.help-grid div{border-top:1px solid #3f5b60;padding-top:13px;display:flex;flex-direction:column;gap:8px}.help-grid strong{font-size:13px;color:#9cddc4}.help-grid span{font-size:12px;color:#b7c9c6;line-height:1.55}.help-caution{font-size:11px;line-height:1.55;background:#203b43;border-radius:6px;padding:12px;color:#d0c7a6;margin-bottom:20px}.modal>.primary-button{width:100%}@media(max-width:1120px){.archive-code{display:none}.workspace{grid-template-columns:minmax(0,1fr) 325px}.sidebar{padding:23px 20px 0}.scene-head h1{font-size:44px}.telemetry{padding-left:19px;padding-right:19px}.metric{padding-left:13px}.metric strong{font-size:26px}.scene-footer{font-size:8px}}@media(max-width:850px){.workspace{display:flex;flex-direction:column}.stage{min-height:650px;height:650px;flex:none}.sidebar{border-left:0;border-top:1px solid #37515a;padding:24px max(20px,7vw) 0}.topbar{padding:0 18px;height:65px;min-height:65px}.brand-group strong{font-size:15px}.brand-group .eyebrow{font-size:8px}.stage-top-right{top:20px;right:17px}.scene-head{left:20px;top:20px}.scene-head h1{font-size:40px}.stage-tools{bottom:211px;right:15px}.telemetry{height:154px}.live-chip{font-size:8px}.sidebar .panel-header h2{font-size:24px}.control-buttons{max-width:580px}.control-item,.scenario-wrap,.timescale-row,.chart-panel,.model-note{max-width:650px}}@media(max-width:500px){.brand-mark{display:none}.brand-group strong{font-size:13px}.live-chip{display:none}.topbar{gap:7px}.stage{height:600px;min-height:600px}.stage-top-right{display:none}.scene-head h1{font-size:33px}.scene-head p{max-width:215px;font-size:10px}.scene-head{max-width:225px}.scene-label{font-size:7px;padding:5px 6px}.stage-tools{bottom:231px;right:10px;padding:4px}.tool-title{display:none}.camera-button{font-size:9px;padding:8px}.scene-footer{bottom:169px;left:13px;right:13px;display:flex;flex-wrap:wrap;gap:8px}.drag-hint{display:none}.telemetry{padding:15px 13px;height:156px}.telemetry-row{margin-top:15px;grid-template-columns:repeat(4,minmax(0,1fr))}.telemetry-heading span{display:none}.metric{padding-left:7px}.metric strong{font-size:19px;margin-top:10px}.metric strong small{font-size:9px;margin:0}.metric>span,.metric-note{font-size:7px;line-height:1.4}.metric .mini-progress{margin-top:14px}.modal{padding:19px}.help-grid{grid-template-columns:1fr;gap:10px}}
