
:root{font-family:'DM Sans',Arial,sans-serif;color:#e4f2f4;background:#0c1922;font-synthesis:none;--cyan:#8ce1d4;--gold:#e9b86d;--mist:#9eafba;--glass:#0c1b26e8;--stroke:#40546180}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{user-select:none}button,select,input{font:inherit}button{cursor:pointer}#viewport{position:absolute;inset:0;background:linear-gradient(#90b6bb,#427b82 47%,#123644);overflow:hidden}#viewport canvas{display:block;width:100%;height:100%;outline:none}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#04131de0 0%,#06192572 22%,transparent 49%,#03101926 82%,#03121bac 100%),linear-gradient(0deg,#03121cce 0%,transparent 22%,transparent 68%,#04142282 100%)}.eyebrow,.mono{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;letter-spacing:.15em}.topbar{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:25px 39px 16px 35px;border-bottom:1px solid #ffffff24;background:linear-gradient(180deg,#071723b0,#07172300);z-index:10}.brandline{display:flex;align-items:center;gap:16px}.brandmark{width:47px;height:47px;position:relative;border:1.5px solid var(--cyan);transform:rotate(45deg);display:flex;align-items:center;justify-content:center;color:var(--cyan);font-size:23px}.brandmark span{position:absolute;transform:rotate(-45deg)}.brandmark span:first-child{left:7px;top:0;transform:rotate(-45deg);font-size:27px;font-weight:400}.brandmark span:last-child{bottom:0;right:7px;font-size:17px}.brandcopy{display:flex;flex-direction:column;gap:4px}.brandcopy .eyebrow{color:var(--cyan);font-size:9px}.brandcopy strong{font-family:'Barlow Condensed',sans-serif;font-size:25px;font-weight:800;letter-spacing:.055em;line-height:1}.brandcopy strong span{color:var(--gold);margin-left:8px;font-weight:500}.topright{display:flex;align-items:center;gap:19px;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.12em;color:#cbd5d8}.system-state{color:#d7f5ef}.status-dot{display:inline-block;background:#7defb6;box-shadow:0 0 0 5px #45e6ad1f,0 0 12px #7defb6;width:6px;height:6px;border-radius:50%;vertical-align:middle;margin-right:12px}.top-separator{height:18px;width:1px;background:#ffffff40}.small-action{background:#12293895;border:1px solid #ffffff4c;color:white;width:28px;height:28px;border-radius:50%;font-family:monospace;font-weight:700}.hero{position:absolute;top:139px;left:38px;width:410px;z-index:4;pointer-events:none}.pretitle{display:flex;align-items:center;gap:15px;font-size:9px;font-family:'IBM Plex Mono',monospace;letter-spacing:.13em;color:#cadadf}.pretitle .mono{color:var(--cyan)}.hero-dash{display:inline-block;height:1px;width:35px;background:var(--gold)}.hero h1{font-family:'Barlow Condensed',sans-serif;font-size:clamp(48px,4.0vw,82px);line-height:.91;letter-spacing:-.015em;margin:22px 0 18px;font-weight:800;text-shadow:0 2px 28px #04101880}.hero h1 em{font-style:normal;color:var(--cyan)}.hero p{font-size:13px;font-weight:400;line-height:1.9;max-width:335px;color:#d9e5e8e0}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hero-tags span{border:1px solid #c7e9e65e;background:#0a2836a6;color:#dcece7;padding:7px 9px;font:600 9px 'IBM Plex Mono',monospace;letter-spacing:.06em}.control-panel{position:absolute;z-index:9;right:26px;top:95px;bottom:123px;width:335px;background:linear-gradient(140deg,#071621ed,#112634eb);border:1px solid #acc4d044;box-shadow:0 28px 66px #031018b0;backdrop-filter:blur(22px);display:flex;flex-direction:column}.panel-heading{padding:20px 20px 18px;display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid #ffffff23}.panel-heading .eyebrow{color:var(--cyan)}h2{margin:7px 0 0}.panel-heading h2{font:700 24px 'Barlow Condensed',sans-serif;letter-spacing:.025em}.panel-number{font:500 8px 'IBM Plex Mono',monospace;white-space:nowrap;color:#9bb7bf;letter-spacing:.07em}.panel-body{overflow:auto;padding:2px 20px 18px;scrollbar-color:#60747b55 transparent;scrollbar-width:thin}.section-header{display:flex;align-items:center;gap:11px;font:600 9px 'IBM Plex Mono',monospace;letter-spacing:.13em;color:#e0e9e9;margin:19px 0 13px}.section-header span:first-child{color:var(--gold)}.section-line{height:1px;background:#ffffff28;flex:1}.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.mode-button{background:#ffffff0a;border:1px solid #ffffff28;color:#aabfc6;height:33px;font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.06em;transition:.15s}.mode-button.active,.mode-button:hover{color:#07252a;background:var(--cyan);border-color:var(--cyan)}.range-block{margin:16px 0 19px}.fieldline{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.fieldline label{font-size:11px;color:#d4e0e2}.fieldline strong{font:600 18px 'Barlow Condensed',sans-serif;white-space:nowrap;color:var(--cyan)}.fieldline small{font:600 9px 'IBM Plex Mono',monospace;color:#cbd9da}input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:3px;background:#4e6971;border-radius:0;display:block;accent-color:var(--cyan)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;background:#b7f9ed;border:3px solid #1e4a52;border-radius:50%;box-shadow:0 0 0 2px #7fdace50}input[type=range]::-moz-range-thumb{height:10px;width:10px;background:var(--cyan);border:2px solid #1e4a52;border-radius:50%}.range-ends{display:flex;justify-content:space-between;margin-top:6px;color:#7d9aa3;font:9px 'IBM Plex Mono',monospace}.select-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.select-wrap{display:flex;flex-direction:column;gap:8px}.select-wrap span{color:#8ca6af;font:600 9px 'IBM Plex Mono',monospace;letter-spacing:.06em}.select-wrap select{width:100%;height:36px;background:#203646;color:#e2f0ef;border:1px solid #82929b50;border-radius:0;padding:0 5px;font-size:10px;outline:0}.toggle-grid{display:grid;grid-template-columns:repeat(2,1fr);row-gap:12px;column-gap:7px}.toggle-grid label{display:flex;align-items:center;gap:8px;color:#b8d0d3;font-size:10px;white-space:nowrap;cursor:pointer}.toggle-grid input{position:absolute;opacity:0}.switch{width:24px;height:14px;border:1px solid #6f8691;background:#273944;border-radius:10px;position:relative;flex-shrink:0}.switch:before{content:'';position:absolute;top:2px;left:2px;width:8px;height:8px;background:#849ca5;border-radius:50%;transition:.15s}.toggle-grid input:checked+.switch{background:#1b6564;border-color:var(--cyan)}.toggle-grid input:checked+.switch:before{background:#bcfef5;transform:translateX(10px)}.toggle-grid input:focus-visible+.switch{outline:2px solid white}.actionrow{display:flex;gap:7px;margin-top:22px}.primary-action{background:var(--cyan);border:1px solid var(--cyan);font:700 10px 'IBM Plex Mono',monospace;letter-spacing:.07em;color:#062631;min-height:40px}.primary-action:hover{background:#c2fff4}.actionrow .primary-action{flex:1}.primary-action span{font-size:16px;vertical-align:-1px;margin-right:8px}.secondary-action{width:41px;flex-shrink:0;background:#1b3441;border:1px solid #617c86b0;color:#e4f3f2;font-size:20px}.secondary-action:hover{background:#294c58}.simulation-note{color:#778f9a;font:9px/1.6 'IBM Plex Mono',monospace;margin:15px 0 2px}.simulation-note span{color:var(--gold)}.view-toolbar{position:absolute;z-index:5;left:37px;bottom:143px;display:flex;align-items:center;gap:7px}.toolbar-caption{color:var(--cyan);font:600 9px 'IBM Plex Mono',monospace;letter-spacing:.16em;margin-right:8px}.cam-button{height:34px;padding:0 12px;background:#0b202cd1;border:1px solid #a3b7c250;color:#7996a1;font:600 10px 'IBM Plex Mono',monospace}.cam-button b{color:#d6e9e9;font-weight:600;margin-left:5px}.cam-button.active,.cam-button:hover{border-color:var(--cyan);color:var(--cyan);background:#173e46df}.telemetry{position:absolute;z-index:5;bottom:0;left:0;right:0;height:113px;background:linear-gradient(90deg,#091924f9,#102834f2);display:flex;align-items:stretch;border-top:1px solid #a2d8d455;padding:0 25px 0 37px}.telemetry-intro{width:245px;flex-shrink:0;display:flex;flex-direction:column;justify-content:center;gap:15px}.telemetry-intro .eyebrow{color:var(--cyan)}.telemetry-clock{color:#7e9ba5;font:500 11px 'IBM Plex Mono',monospace}.telemetry-clock b{color:#d8e6e6;margin-left:9px}.telem-cell{flex:1;min-width:0;border-left:1px solid #ffffff21;padding:20px 24px 13px}.telem-title{font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#b5c8d0;white-space:nowrap}.telem-title span{float:right;color:var(--gold);font-size:13px}.telem-number{margin-top:6px;display:flex;align-items:baseline;gap:9px}.telem-number strong{font:600 35px 'Barlow Condensed',sans-serif;line-height:1;color:#edf6f5;font-variant-numeric:tabular-nums}.telem-number small{font:500 10px 'IBM Plex Mono',monospace;color:var(--cyan)}.microline{height:2px;width:100%;background:#3e5662;margin-top:12px}.microline i{height:100%;background:var(--cyan);display:block;transition:width .3s}.bottom-hint{position:absolute;left:38px;bottom:126px;color:#b7d8d9;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.05em;z-index:4;transform:translateY(-1px);display:none}.bottom-hint span{color:var(--gold);padding:0 7px}.coordinate-readout{position:absolute;bottom:140px;right:382px;color:#d7f0f0;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.08em;z-index:4}.readout-dot{color:var(--gold);padding:0 7px}.inspector{position:absolute;z-index:7;left:36px;top:420px;width:298px;padding:16px 18px 18px;background:#0b202bf2;backdrop-filter:blur(15px);border:1px solid #88b7bc78;box-shadow:0 17px 35px #01131b70;transition:transform .2s,opacity .2s}.inspector.hidden{opacity:0;pointer-events:none;transform:translateY(12px)}.inspector-top{display:flex;justify-content:space-between;align-items:center;color:var(--cyan);font:600 9px 'IBM Plex Mono',monospace;letter-spacing:.14em}.inspector-top button{color:#9bb9bf;border:0;background:transparent;font-size:22px;line-height:1}.inspect-symbol{color:var(--gold);font-size:27px;margin-top:10px}.inspector h3{font:700 24px 'Barlow Condensed',sans-serif;letter-spacing:.02em;margin:3px 0}.inspect-metric{font:600 11px 'IBM Plex Mono',monospace;color:var(--cyan);margin:10px 0}.inspector p:not(.inspect-metric){font-size:11px;line-height:1.7;color:#afc4ce;margin:8px 0 16px}.inspect-focus{display:flex;justify-content:space-between;width:100%;background:#132f3c;border:1px solid #7faaa4a8;color:#d3ebec;padding:10px 12px;font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.06em}.inspect-focus span{color:var(--gold)}.toast{position:absolute;left:50%;bottom:141px;transform:translateX(-50%) translateY(15px);z-index:30;background:#071924ea;color:#e1faf2;border:1px solid #87ddd266;padding:12px 18px;font:11px 'IBM Plex Mono',monospace;opacity:0;pointer-events:none;transition:.18s;white-space:nowrap}.toast.show{transform:translateX(-50%) translateY(0);opacity:1}.loading{position:absolute;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 55%,#1c4150,#07131c 65%);transition:opacity .6s}.loading.done{opacity:0;pointer-events:none}.loader-mark{color:#e8f5f1;font:800 78px 'Barlow Condensed',sans-serif;letter-spacing:.025em}.loader-mark span{color:var(--cyan)}.loading p{font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.28em;color:#a2c8c9}.loader-bar{height:2px;background:#365a60;width:220px;margin-top:23px}.loader-bar i{display:block;height:2px;width:100%;background:var(--cyan);animation:load 2s ease-in-out infinite}@keyframes load{0%{transform:scaleX(.05);transform-origin:left}50%{transform:scaleX(.9);transform-origin:left}100%{transform:scaleX(.05);transform-origin:right}}dialog{max-width:650px;width:calc(100vw - 25px);background:#0d2431;color:#e8f5f3;border:1px solid #85bec2;box-shadow:0 35px 90px #020911df;padding:0}dialog::backdrop{background:#06131edc;backdrop-filter:blur(6px)}.help-content{padding:30px}.help-head{display:flex;justify-content:space-between;color:var(--cyan)}.help-head button{color:white;border:0;background:none;font-size:24px}.help-content h2{font:700 39px 'Barlow Condensed',sans-serif}.help-content p{font-size:13px;line-height:1.8;color:#b6c9cf;max-width:520px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:24px 0}.help-grid div{border-bottom:1px solid #ffffff2c;padding:9px 0;display:flex;flex-direction:column;gap:5px}.help-grid b{font:700 11px 'IBM Plex Mono',monospace;color:var(--cyan)}.help-grid span{font-size:11px;color:#c4d8d9}.help-content .primary-action{padding:0 23px}
@media(max-width:1240px){.hero{width:300px}.hero h1{font-size:59px}.hero p{max-width:245px}.control-panel{width:306px;right:14px}.telem-cell{padding:19px 14px}.telemetry-intro{width:205px}.view-toolbar{bottom:137px;left:23px}.cam-button{padding:0 7px}.coordinate-readout{right:332px}.inspector{top:390px;left:22px;width:280px}}@media(max-width:950px){.topmetric,.top-separator{display:none}.hero{top:123px;left:18px}.hero h1{font-size:48px}.hero p{font-size:11px;line-height:1.55}.hero-tags{margin-top:10px}.hero-tags span{font-size:8px}.control-panel{top:88px;bottom:122px;width:266px;right:10px}.panel-heading{padding:15px 12px}.panel-heading h2{font-size:20px}.panel-body{padding:0 12px 12px}.section-header{margin:15px 0 9px}.range-block{margin:11px 0}.telemetry{padding-left:15px}.telemetry-intro{width:150px}.telemetry-intro .eyebrow{font-size:8px}.telem-title{font-size:8px}.telem-number strong{font-size:30px}.telem-number small{font-size:8px}.view-toolbar{left:14px}.cam-button{font-size:9px}.inspector{width:245px;top:365px}.coordinate-readout{display:none}}@media(max-width:680px){html,body,#app{overflow:auto;min-height:1270px;height:100%}#viewport,.vignette{position:fixed;inset:0}.topbar{position:absolute;padding:14px 14px}.brandmark{width:35px;height:35px}.brandcopy .eyebrow{font-size:7px}.brandcopy strong{font-size:20px}.topright{gap:6px}.system-state{font-size:8px}.hero{top:85px;left:16px;width:250px}.hero h1{font-size:52px}.hero p{max-width:210px}.hero-tags{gap:5px}.hero-tags span{font-size:7px;padding:5px}.control-panel{top:422px;left:10px;right:10px;bottom:auto;width:auto;height:auto;max-width:none;position:absolute;overflow:visible}.panel-body{overflow:visible}.panel-heading{padding:12px 15px}.panel-body{padding:0 15px 16px}.mode-grid{grid-template-columns:repeat(4,1fr)}.mode-button{font-size:9px}.toggle-grid{grid-template-columns:repeat(4,1fr)}.toggle-grid label{font-size:9px}.view-toolbar{top:337px;left:10px;right:10px;bottom:auto;overflow:auto;padding-bottom:6px}.cam-button{flex-shrink:0}.cam-button b{font-size:8px}.toolbar-caption{display:none}.inspector{top:135px;left:auto;right:10px;width:180px;padding:11px}.inspector h3{font-size:20px}.inspector p:not(.inspect-metric){font-size:9px;line-height:1.45}.inspect-focus{font-size:8px}.telemetry{top:1120px;bottom:auto;height:126px;display:grid;grid-template-columns:repeat(4,1fr);padding:10px}.telemetry-intro{grid-column:1 / -1;display:flex;flex-direction:row;width:auto;gap:16px;justify-content:start;align-items:center}.telem-cell{padding:12px 7px 5px}.telem-title{font-size:7px;white-space:normal;min-height:25px}.telem-number{gap:3px}.telem-number strong{font-size:24px}.telem-number small{font-size:8px}.microline{margin-top:6px}.coordinate-readout,.bottom-hint{display:none}.toast{position:fixed;bottom:14px;font-size:9px}.hero{pointer-events:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
