:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#e5e9e2;background:#0c1516;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#0b1215}button,input{font:inherit}button{cursor:pointer;transition:background .15s,border-color .15s,transform .12s}button:focus-visible,input:focus-visible{outline:2px solid #f3bd67;outline-offset:3px}button:hover{filter:brightness(1.15)}button:active{transform:translateY(1px)}.app{min-height:100vh;display:flex;flex-direction:column}.masthead{height:79px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 30px;border-bottom:1px solid #29393a;background:#111d1f}.brandline{display:flex;align-items:center;gap:15px}.brandmark{width:43px;height:43px;background:#d7a45b;color:#172225;border-radius:4px;font-size:34px;display:flex;align-items:center;justify-content:center}.eyebrow{font-size:9px;letter-spacing:2.2px;font-weight:750;color:#b6ac91}.brandline .eyebrow{font-size:9px}.dot{margin:0 4px;color:#d7a45b}.brandtitle{font-family:Georgia,'Times New Roman',serif;font-size:23px;letter-spacing:1.7px;margin-top:3px;color:#e8ede3}.brandtitle span{font-style:italic;color:#d6aa6a;font-size:21px}.mast-actions{display:flex;gap:30px;align-items:center}.edition{font-size:10px;color:#7b8e8c;letter-spacing:1.7px;font-weight:700}.edition strong{color:#d0aa70;margin-left:9px}.status{border:1px solid #477b62;color:#a2e7b6;background:#1c3c30;padding:9px 12px;border-radius:4px;font-size:10px;font-weight:800;letter-spacing:1px}.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#65d5a2;margin-right:8px}.workspace{flex:1;display:grid;grid-template-columns:316px minmax(0,1fr);min-height:0}.control-pane{background:#142124;border-right:1px solid #314041;padding:23px 24px 20px;display:flex;flex-direction:column;gap:0}.pane-header{border-bottom:1px solid #2d4143;padding-bottom:21px}.pane-header h1{font-family:Georgia,serif;font-weight:400;font-size:35px;line-height:1.04;margin:15px 0;color:#f0f0e8;letter-spacing:-.8px}.pane-header h1 i{font-weight:400;color:#dcb57a}.pane-header p{font-size:12px;line-height:1.7;color:#9eaeac;margin:0}.control-group{padding:20px 0 18px;border-bottom:1px solid #314041}.control-group.last{border-bottom:0;padding-bottom:13px}.group-title{font-size:10px;letter-spacing:1.6px;font-weight:800;margin-bottom:17px;color:#cfddcc}.group-title span{color:#d8a75a;margin-right:12px}.slider-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#a9bcb6;font-weight:650;margin-bottom:9px;margin-top:14px}.slider-label output{font-size:12px;color:#ecce92;font-variant-numeric:tabular-nums;font-weight:800}.control-pane input[type=range]{width:100%;height:5px;display:block;accent-color:#dfa953;cursor:pointer}.slider-foot{display:flex;justify-content:space-between;color:#627c7a;font-size:9px;margin-top:6px}.checkline{display:flex;gap:8px;align-items:center;font-size:11px;color:#99aeaa;margin-top:15px}.checkline input{accent-color:#d9b16f}.wide{width:100%;margin-top:16px}.control-pane button{border-radius:3px;border:1px solid #4a6160;background:#233538;color:#dcece8;font-size:11px;font-weight:800;letter-spacing:.8px;min-height:37px}.control-pane button.primary{background:#daa95f;border:1px solid #eab974;color:#152121;color:#1e2929}.button-glyph{font-size:17px;margin-right:5px}.control-pane button small{margin-left:5px;font-size:9px;color:#bdc9bb}.button-duo{display:grid;grid-template-columns:1fr 1fr;gap:9px}.keyboard-help{font-size:9px;margin-top:13px;color:#6c8985;letter-spacing:.7px}.pane-footer{margin-top:auto;border-top:1px solid #293c3d;padding-top:14px;display:grid;gap:8px}.pane-footer div{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.4px;color:#62807c}.pane-footer strong{color:#8da8a1;font-weight:750}.stage{min-width:0;padding:22px 28px 24px;background:#0d1719}.stage-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.stage-heading h2{font-family:Georgia,serif;font-weight:400;font-size:21px;margin:6px 0 0;color:#ecede5}.stage-heading h2 span{color:#7f9591;font-size:13px;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.stage-id{font-size:10px;letter-spacing:2px;color:#718984}.viewport{position:relative;height:clamp(350px,47vh,560px);min-height:350px;overflow:hidden;border:1px solid #43534d;border-radius:3px;background:linear-gradient(180deg,#a8b6b6 0%,#b9c3b6 48%,#9caf91 72%,#5a6a53 100%);box-shadow:inset 0 0 0 1px #ffffff0d}.viewport.night{background:linear-gradient(180deg,#101f37 0%,#273c4a 46%,#323d44 68%,#202c28 100%)}.viewport canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.viewport canvas:active{cursor:grabbing}.viewport-corner{position:absolute;display:flex;gap:6px;align-items:center;pointer-events:none}.viewport-corner>*{pointer-events:auto}.top-left{left:17px;top:16px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.top-right{right:16px;top:16px}.bottom-left{left:18px;bottom:18px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.bottom-right{right:15px;bottom:17px}.badge-mini{display:inline-block;padding:9px 11px;font-size:9px;font-weight:900;color:#e8f3e9;letter-spacing:1.3px;background:#1a2c2cda;border:1px solid #486059aa}.hint{font-size:9px;letter-spacing:1px;color:#e9f1e4;text-shadow:0 1px 3px #121e18;font-weight:800}.overlay-action{min-width:47px;min-height:33px;background:#172b2bde;border:1px solid #77918d6c;border-radius:3px;color:#d6e9e0;font-size:9px;letter-spacing:1px;font-weight:800}.overlay-action:last-child{min-width:36px;font-size:19px}.azimuth{color:#fff;font-size:9px;font-weight:850;letter-spacing:1.1px;text-shadow:0 1px 4px #17231c}.wind-indicator{display:flex;gap:8px;align-items:center;border:1px solid #9bb09a6f;background:#17302bc9;color:#e9f5e6;padding:10px 12px;font-weight:900;font-size:16px;letter-spacing:.7px}.wind-indicator small{font-size:9px;color:#a9c3b5;font-weight:650}.wind-glyph{font-size:19px;color:#ebc079}.view-toggle{background:#172b2bdc;border:1px solid #819b936c;padding:9px 10px;display:flex;gap:6px;align-items:center;color:#edf2e9;font-size:9px;letter-spacing:.7px;font-weight:800;cursor:pointer}.view-toggle input{accent-color:#ddaf6b;cursor:pointer}.view-toggle span{font-size:12px;color:#d7b17b}.telemetry{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #344846;border-top:0;background:#19282a}.metric{padding:16px 20px;min-width:0;border-right:1px solid #354947}.metric:last-child{border-right:0}.metric-label{font-size:9px;color:#b0c1b8;letter-spacing:1.25px;font-weight:800;display:flex;justify-content:space-between}.metric-label span{color:#668985}.metric-value{font-size:30px;font-weight:300;line-height:1.45;color:#f5f5e9;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-1px}.metric-value small{font-size:11px;color:#8ca6a1;letter-spacing:0}.metric-value.amber{color:#e4bf82}.metric-note{font-size:10px;color:#718d88}.lower{margin-top:17px;display:grid;grid-template-columns:1.04fr .96fr;gap:16px}.chart-panel,.info-panel{border:1px solid #304443;background:#172427;min-width:0;padding:16px 18px 14px}.panel-title{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.1px;font-weight:850;color:#d5ded2}.panel-title small{color:#73938b;font-size:9px;font-weight:700;letter-spacing:.6px}#chart{width:100%;height:102px;display:block;margin-top:8px}.chart-foot{display:flex;justify-content:space-between;font-size:9px;color:#678780}.chart-foot span:first-child{color:#e3bc7d}.chart-foot i{display:inline-block;width:9px;height:3px;background:#deb56e;margin-right:5px;vertical-align:middle}.components{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.components button{border:1px solid #39534f;border-radius:2px;background:#213335;color:#a7c0b7;font-size:10px;padding:6px 8px}.components button.active{background:#c6a36e;border-color:#c6a36e;color:#162c2b;font-weight:800}.info-panel h3{font-family:Georgia,serif;font-size:18px;font-weight:400;color:#e8e5d9;margin:13px 0 7px}.info-panel p{font-size:11px;line-height:1.55;color:#93aba5;margin:0;min-height:51px}.inspect-bottom{display:flex;justify-content:space-between;font-size:9px;margin-top:9px;letter-spacing:.6px;color:#77968d}.inspect-bottom span:last-child{color:#cfaf7a}.footer{padding:12px 29px;border-top:1px solid #263b3a;background:#111c1e;display:flex;justify-content:space-between;gap:15px;letter-spacing:1.2px;font-size:9px;color:#63817d}.footer b{color:#b68a51}#error{position:absolute;inset:15%;padding:28px;background:#301c1cf0;color:#fff;border:2px solid #db8d7c;z-index:10;line-height:1.6}.night .hint,.night .azimuth{color:#d0dfec}@media(max-width:1100px){.workspace{grid-template-columns:275px minmax(0,1fr)}.stage{padding:17px}.control-pane{padding:20px 17px}.telemetry .metric{padding:12px}.metric-value{font-size:24px}.viewport{height:390px}.lower{grid-template-columns:1fr}.info-panel p{min-height:0}}@media(max-width:720px){.masthead{padding:0 16px;height:70px}.brandtitle{font-size:18px}.brandtitle span{font-size:16px}.brandmark{width:37px;height:37px}.mast-actions .edition{display:none}.workspace{display:flex;flex-direction:column-reverse}.stage{padding:15px}.control-pane{border-right:0;border-top:1px solid #364b47}.pane-header h1{font-size:28px}.control-group{padding:16px 0}.viewport{height:400px;min-height:320px}.stage-heading h2{font-size:17px}.stage-heading h2 span{display:block;margin-top:5px}.stage-id{display:none}.hint{display:none}.viewport-corner.bottom-right{bottom:9px;right:9px;gap:3px}.view-toggle{padding:7px 5px;font-size:8px}.view-toggle span{display:none}.top-right{top:10px;right:9px}.bottom-left{left:10px;bottom:12px}.wind-indicator{font-size:12px;padding:7px}.wind-indicator small{display:none}.metric{padding:10px!important}.metric-value{font-size:19px}.metric-label{font-size:8px}.metric-note{display:none}.telemetry{grid-template-columns:repeat(2,minmax(0,1fr))}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid #354947}.footer{font-size:8px;padding:10px;display:block}.footer span:last-child{display:none}}
