:root{color-scheme:dark;--bg:#060e17;--panel:#0a151f;--line:#23343f;--ink:#e3edf4;--muted:#8695a4;--cyan:#78e6df;--gold:#ceb180;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html,body{padding:0;margin:0;background:var(--bg);color:var(--ink);height:100%;overscroll-behavior:none}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.app{display:grid;grid-template-columns:minmax(0,1fr) 355px;height:100vh;min-height:560px;overflow:hidden}.viewport{position:relative;overflow:hidden;background:radial-gradient(ellipse at 49% 38%,#16303b 0%,#0b1925 46%,#040a11 90%)}#canvas{display:block;width:100%;height:100%;outline:none;touch-action:none}.viewport:after{content:"";pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.24) 100%)}.topbar{position:absolute;top:0;left:0;right:0;z-index:4;padding:24px 30px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,rgba(5,13,23,.85),transparent);gap:8px}.brand{display:flex;align-items:center;gap:14px}.glyph{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border:1px solid #88dcd45e;background:#1d4a504c;font-size:24px;font-weight:800;letter-spacing:-5px;padding-right:4px}.glyph span{font-weight:300;color:var(--cyan)}.brand strong{display:block;font-size:15px;letter-spacing:2.5px}.brand em{font-size:10px;letter-spacing:2px;margin-left:6px;color:var(--gold);font-weight:500;font-style:normal}.brand small{font-size:9px;letter-spacing:1.9px;color:#8196a5;display:block;margin-top:5px}.headerRight{display:flex;align-items:center;gap:16px}.status{font-size:9px;font-weight:750;letter-spacing:1.5px;color:#a4d7d5;white-space:nowrap}.status i,.dot{display:inline-block;vertical-align:middle;width:7px;height:7px;border-radius:50%;background:#81e4c6;box-shadow:0 0 12px #67e6ca;margin-right:7px}.iconButton{border:1px solid #73899460;background:#152b36c9;color:#e9fcfa;border-radius:50%;width:39px;height:39px;font-size:24px}.reticle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:27px;height:27px;border:1px solid #8acbc850;border-radius:50%;pointer-events:none;opacity:.55}.reticle span:after,.reticle span:before{position:absolute;content:"";background:#9fcac99a}.reticle span:after{height:1px;width:35px;top:12px;left:-5px}.reticle span:before{width:1px;height:35px;left:12px;top:-5px}.readouts{position:absolute;left:26px;bottom:66px;display:grid;grid-template-columns:repeat(4,minmax(115px,1fr));gap:8px;max-width:780px;z-index:3}.readout{padding:15px 17px 14px;border:1px solid #52717d40;background:#091720ca;backdrop-filter:blur(16px);border-top-color:#7bc1c66e}.readout>span{display:block;color:#83a2ad;font-size:9px;font-weight:700;letter-spacing:1.4px}.readout>b{display:block;font-size:24px;font-weight:550;letter-spacing:.2px;margin:9px 0 1px;white-space:nowrap}.readout>b small{font-size:13px;font-weight:500;color:var(--cyan)}.readout>small{font-size:10px;color:#778c98}.stageFooter{position:absolute;z-index:3;bottom:20px;left:28px;right:28px;display:flex;justify-content:space-between;gap:15px;color:#7e94a1;font-size:9px;letter-spacing:1.4px;font-weight:600}.stageFooter i{color:var(--cyan);font-style:normal;margin:0 4px}.error{position:absolute;z-index:10;inset:35% 15% auto;background:#431b1f;border:1px solid #da6e78;padding:22px;font-size:13px;line-height:1.7;white-space:pre-wrap}.panel{overflow:auto;background:linear-gradient(150deg,#0f1d28 0%,#08131d 70%);border-left:1px solid #334653;scrollbar-color:#2b4753 transparent;scrollbar-width:thin}.panelHeader{display:flex;align-items:flex-start;padding:32px 25px 25px;border-bottom:1px solid var(--line)}.eyebrow{font-size:9px;letter-spacing:2.1px;color:var(--cyan);font-weight:750;margin:0 0 12px}.panelHeader h1{font-weight:540;letter-spacing:-.9px;font-size:27px;line-height:1.2;margin:0}.panelHeader h1 span{color:var(--cyan)}.panelHeader p:not(.eyebrow){margin:10px 0 0;font-size:12px;color:var(--muted);line-height:1.6}.crosshair{color:#45606c;font-size:26px;margin-left:13px}.section{padding:21px 25px;border-bottom:1px solid #273743}.section h2{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:750;margin:0 0 21px}.section h2 span{color:#65b9b9;margin-right:11px;font-size:9px}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.segmented button{font-size:10px;white-space:nowrap;letter-spacing:.1px;padding:9px 2px;border:1px solid #324653;background:#152430;color:#9eb1bc;border-radius:4px}.segmented button.selected{background:#18454a;border-color:#4dacab;color:#d4fffb}.control{margin:0 0 22px}.control:last-child{margin-bottom:0}.controlTitle{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.controlTitle label,.quality label{font-size:11px;color:#b0c0c9}.controlTitle output{font-variant-numeric:tabular-nums;font-size:12px;font-weight:700;color:#b2e5e5}input[type=range]{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#509d9f var(--fill,50%),#293b46 var(--fill,50%));height:3px;width:100%;margin:16px 0 0;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#bdf8f1;border:2px solid #275f68;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 3px #4aa6a51e}input[type=range]::-moz-range-thumb{background:#bdf8f1;border:2px solid #275f68;border-radius:50%;width:11px;height:11px}.quality{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:25px}.quality select{width:162px;border:1px solid #34505a;border-radius:4px;color:#daf7f5;padding:9px 6px;background:#10232d;font-size:11px}.toggles{display:grid;grid-template-columns:1fr 1fr;gap:14px 8px;margin-top:25px}.toggles label{font-size:10px;color:#a2b4bd;display:flex;align-items:center;gap:8px;cursor:pointer}.toggles input{accent-color:#6dcccf;width:14px;height:14px}.transport .transportRow{display:grid;grid-template-columns:1.4fr 1fr 1.05fr .45fr;gap:5px}.transport button{padding:11px 3px;font-size:9px;letter-spacing:.25px;color:#d4e5eb;border:1px solid #415663;background:#152735;border-radius:3px}.transport button.primary{background:#2b777a;border-color:#64b4b6;color:white;font-weight:700}.panelFooter{padding:24px 25px 36px}.panelFooter div{font-size:9px;letter-spacing:1px;color:#a2d1ca;font-weight:750}.panelFooter p{color:#8297a6;font-size:11px;line-height:1.8;margin:12px 0}.panelFooter a{font-size:9px;letter-spacing:1px;color:#93dadd;text-decoration:none}.panelFooter a:hover{text-decoration:underline}
@media(max-width:1100px){.app{grid-template-columns:minmax(0,1fr) 330px}.readouts{grid-template-columns:repeat(2,1fr);max-width:350px}.brand small,.stageFooter>span:first-child{display:none}}
@media(max-width:750px){.app{display:block;height:auto;overflow:visible}.viewport{height:64svh;min-height:420px}.panel{border-left:none;border-top:1px solid #334653}.readouts{left:10px;right:10px;bottom:45px;max-width:none;grid-template-columns:repeat(4,1fr);gap:4px}.readout{padding:8px 6px}.readout>span{font-size:7px;letter-spacing:.25px}.readout>b{font-size:16px;margin:5px 0}.readout>small{font-size:8px}.topbar{padding:16px}.status{display:none}.stageFooter{left:10px;bottom:13px}.reticle{opacity:.15}}

.spectrumPanel{padding:21px 25px 15px;border-bottom:1px solid var(--line);background:#0a1924}.spectrumHeading,.spectrumLegend{display:flex;justify-content:space-between;align-items:center;gap:8px}.spectrumHeading span{font-size:9px;letter-spacing:1.25px;color:#a2c4ca;font-weight:750}.spectrumHeading span:last-child{color:#7bcfcb}#spectrum{display:block;width:100%;height:83px;margin:8px 0;border:1px solid #2a424e;background:#07121b}.spectrumLegend span{color:#7695a0;font-size:8px;letter-spacing:.65px}
