:root{font-family:'DM Sans',Arial,sans-serif;color:#eaf3f1;background:#071219;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}#app,#viewport{position:fixed;inset:0}#viewport canvas{display:block;width:100%;height:100%;touch-action:none}.grain,.vignette{position:fixed;inset:0;pointer-events:none}.grain{opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.43'/%3E%3C/svg%3E");z-index:2}.vignette{box-shadow:inset 0 0 240px 40px #06101788;z-index:1}.ui-panel{position:fixed;z-index:3}.topbar{left:0;right:0;top:0;height:84px;display:flex;align-items:center;gap:17px;padding:0 38px;background:linear-gradient(180deg,#051219eb,#08171eab 65%,transparent);border-bottom:1px solid #eaf3f114}.brandmark{width:31px;height:32px;display:flex;align-items:center;gap:3px;transform:skewX(-13deg);overflow:hidden}.brandmark span{width:7px;background:#9ee8d5;transform:skewY(24deg)}.brandmark span:nth-child(1){height:15px}.brandmark span:nth-child(2){height:26px}.brandmark span:nth-child(3){height:35px}.brand-text{display:flex;flex-direction:column;gap:4px}.eyebrow,.seed-badge,.status-word,.section-label,.section-index,.telemetry-label,.caption-index,.helper,.control-row output,.scale-track,.notice{font-family:'DM Mono',monospace;letter-spacing:1.3px}.eyebrow{color:#8baeb2;font-size:9px;font-weight:500}.brand-text strong{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;letter-spacing:1.2px;font-size:25px;line-height:1}.brand-divider{color:#85aaae;margin:0 5px}.brand-sub{font-weight:500;color:#c9d8dc}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:13px}.seed-badge{font-size:10px;color:#b8cacd;border:1px solid #b8d5d02c;background:#14283388;padding:7px 11px}.live-dot{width:7px;height:7px;border-radius:100%;background:#9cddc4;box-shadow:0 0 16px #a2efc4;animation:pulse 2s infinite}.live-dot.paused{background:#e9ad7d;box-shadow:0 0 12px #e9ad7d}.status-word{color:#b8d4ca;font-size:10px}.icon-button{color:#dae9e5;background:#162b3299;border:1px solid #a6ccc12b;font-size:18px;width:35px;height:35px}
.controls{left:24px;top:105px;bottom:100px;width:316px;background:linear-gradient(145deg,#0b1b24ec,#0b1921ee);border:1px solid #b3d0c124;box-shadow:0 18px 70px #0009;backdrop-filter:blur(23px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#426363 transparent;padding:22px 23px 14px;transition:transform .4s,opacity .35s}.panel-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.panel-topline h1{margin:4px 0 0;font-family:'Barlow Condensed',sans-serif;font-size:26px;font-weight:700;letter-spacing:.8px}.panel-topline .muted{color:#6f8991;font-weight:400}.weather-sigil{font-size:38px;font-family:serif;color:#91d8c9}.section-label{font-size:9px;font-weight:600;color:#c2e6d8;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bed6cd23;padding-top:14px;margin-bottom:16px}.section-index{color:#627e81}.space-top{margin-top:22px}.control-row{margin-bottom:18px}.control-row .label-line{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.control-row label{font-size:11px;color:#c7d9d9}.control-row output{font-size:10px;color:#a7efd2;font-weight:500;letter-spacing:0}.range{display:block;width:100%;height:3px;appearance:none;-webkit-appearance:none;outline:none;border-radius:5px;background:linear-gradient(90deg,#8dd5c0 0%,#8dd5c0 var(--fill,50%),#344954 var(--fill,50%),#344954 100%);accent-color:#9ee8ce;cursor:pointer}.range::-webkit-slider-thumb{appearance:none;width:11px;height:11px;border-radius:50%;background:#b9ffe1;border:2px solid #163a41;box-shadow:0 0 0 3px #b9ffe11d}.range::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#b9ffe1;border:2px solid #163a41}.scale-track{display:flex;justify-content:space-between;margin-top:11px;color:#6f8c91;font-size:9px;letter-spacing:0}.camera-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.camera-button{border:1px solid #779a9b30;background:#1126318f;color:#9ab8bd;font-family:'DM Mono',monospace;font-size:11px;padding:11px 8px;text-align:left;transition:.2s}.camera-button:hover{border-color:#b2e5d6}.camera-button.selected{border-color:#9ee8cb;background:#a4e8cd17;color:#d5fff0}.toggle-line{margin-top:18px;padding:14px 0;border-top:1px solid #bed6cd23;border-bottom:1px solid #bed6cd23;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.toggle-line strong{font-size:10px;font-weight:700;letter-spacing:1px}.toggle-line small{display:block;font-size:10px;color:#75969c;margin-top:5px}.toggle-line input{position:absolute;opacity:0;pointer-events:none}.toggle-switch{height:20px;width:35px;border-radius:30px;background:#334852;position:relative;flex-shrink:0}.toggle-switch:after{content:'';position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#94a9a9;transition:.2s}.toggle-line input:checked+.toggle-switch{background:#327363}.toggle-line input:checked+.toggle-switch:after{transform:translateX(15px);background:#b7ffe2}.transport-controls{display:flex;gap:7px;margin-top:18px}.primary-button{background:#a4edce;color:#09232a;border:1px solid #a4edce;font-family:'DM Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.3px;flex:1;min-height:40px}.primary-button:hover{background:#c9fce5}.secondary-button{border:1px solid #66888261;background:#18333d;color:#def4eb;font-size:24px;width:43px}.helper{font-size:9px;line-height:1.7;color:#78969c;margin:15px 0 2px;letter-spacing:0}.reticle{position:fixed;left:55%;top:52%;transform:translate(-50%,-50%);z-index:2;pointer-events:none;display:flex;align-items:center;flex-direction:column;gap:10px;color:#ffffff8c;font:9px 'DM Mono',monospace;letter-spacing:1.6px}.reticle-cross{height:45px;width:45px;border:1px solid #fff5;border-radius:50%;position:relative}.reticle-cross:before,.reticle-cross:after{content:'';position:absolute;background:#fffb}.reticle-cross:before{width:1px;height:13px;left:21px;top:15px}.reticle-cross:after{width:13px;height:1px;left:15px;top:21px}.storm-caption{right:35px;bottom:116px;width:288px;pointer-events:none;text-shadow:0 2px 15px #000d}.caption-index{font-size:9px;color:#a7d4c7}.caption-title{font-family:'Barlow Condensed',sans-serif;font-size:23px;font-weight:700;line-height:1.05;letter-spacing:.4px;margin-top:8px}.caption-detail{font-size:11px;line-height:1.6;color:#b2c2c0;margin-top:8px}.telemetry{bottom:0;left:0;right:0;min-height:83px;display:flex;align-items:stretch;padding:13px 24px 14px;background:#0a1921e9;border-top:1px solid #a4dfc82c;backdrop-filter:blur(20px)}.telemetry-cell{flex:1;padding:5px 24px;border-right:1px solid #779f9a2b;display:flex;flex-direction:column;justify-content:center;gap:9px}.telemetry-cell:last-child{border-right:0}.telemetry-label{font-size:9px;color:#78969a}.telemetry-value{font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.65px;font-size:20px;white-space:nowrap}.telemetry-value small{font-family:'DM Mono',monospace;font-size:10px;font-weight:400;color:#98abae;letter-spacing:0}.telemetry-value.status{color:#acedd0;font-size:15px;display:flex;align-items:center;gap:8px}.telemetry-value.status i{height:6px;width:6px;background:currentColor;border-radius:50%}.telemetry-value.alert{color:#f3b798}.telemetry-type{flex:1.6}.telemetry-type .telemetry-value{font-size:16px}.mono{font-variant-numeric:tabular-nums}.reveal-button{position:fixed;z-index:5;top:24px;left:24px;border:1px solid #bdebd0;background:#0a1c23de;color:#d6fbe9;padding:14px 19px;font:10px 'DM Mono',monospace;letter-spacing:1px;backdrop-filter:blur(13px)}.is-hidden{display:none!important}.interface-hidden .ui-panel,.interface-hidden .reticle{opacity:0;pointer-events:none}.interface-hidden .controls{transform:translateX(-110%)}.interface-hidden .reveal-button{display:block!important}.notice{position:fixed;left:50%;bottom:115px;z-index:7;transform:translate(-50%,10px);opacity:0;pointer-events:none;background:#0d272de8;border:1px solid #a4d9c97c;color:#dcfff0;font-size:10px;padding:12px 18px;transition:.2s}.notice.visible{opacity:1;transform:translate(-50%,0)}.loading{position:fixed;inset:0;background:#08151c;z-index:10;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:13px;font:12px 'DM Mono',monospace;letter-spacing:2.5px;transition:opacity .7s}.loading small{font-size:9px;color:#6e9998;letter-spacing:1px}.loading-burst{height:50px;width:50px;border:2px solid #9ad9ca33;border-top-color:#b3f9da;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}.loading.done{opacity:0;pointer-events:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.35}}@media(max-height:760px) and (min-width:800px){.controls{top:88px;bottom:76px;padding:13px 19px}.panel-topline{margin-bottom:10px}.space-top{margin-top:13px}.control-row{margin-bottom:12px}.section-label{padding-top:9px;margin-bottom:12px}.toggle-line{margin-top:11px;padding:9px 0}.telemetry{min-height:70px}.storm-caption{bottom:90px}}
@media(max-width:950px){.controls{width:290px;left:12px;top:83px;bottom:85px}.storm-caption{right:14px;max-width:220px}.topbar{height:72px;padding:0 17px}.brand-text strong{font-size:21px}.telemetry{padding:10px}.telemetry-cell{padding:4px 10px}.telemetry-type{display:none}.reticle{left:65%}}
@media(max-width:680px){.topbar{height:65px;padding:0 12px}.brand-sub{display:none}.brand-text strong{font-size:22px}.seed-badge,.status-word{display:none}.topbar-right{gap:9px}.controls{top:75px;left:10px;bottom:80px;width:min(310px,calc(100vw - 20px));padding:19px 19px}.controls:not(.mobile-open){transform:translateX(calc(-100% - 30px));pointer-events:none}.topbar .icon-button{display:block}.storm-caption{display:none}.reticle{left:50%;top:48%}.telemetry{min-height:70px;padding:8px 3px}.telemetry-cell{padding:5px 8px}.telemetry-cell:nth-child(4){display:none}.telemetry-label{font-size:7px;letter-spacing:.5px}.telemetry-value{font-size:15px}.telemetry-value.status{font-size:11px}.reveal-button{top:74px}.notice{white-space:nowrap;max-width:95vw;overflow:hidden;text-overflow:ellipsis;bottom:86px}}
