:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--color-background:#0d0c10;--color-text:#f2eff4;--color-muted:#a39da9;--color-border:#29242e;--color-orange:#f56600;--color-purple:#522d80;color:var(--color-text);background:var(--color-background);font-family:Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--color-orange);outline-offset:6px;border-radius:2px}::selection{background:var(--color-purple);color:var(--color-text)}.container{width:min(100% - clamp(32px,7vw,96px),1200px);margin-inline:auto}.site-shell{flex-direction:column;min-height:100svh;display:flex}.site-header{border-bottom:1px solid var(--color-border);padding-top:env(safe-area-inset-top)}.header-inner{justify-content:space-between;align-items:center;gap:32px;min-height:104px;display:flex}.wordmark{letter-spacing:-1px;align-items:center;min-height:44px;font-size:25px;font-weight:600;display:inline-flex}.brand-symbol{border:2px solid var(--color-orange);width:19px;height:19px;box-shadow:inset 0 0 0 4px var(--color-background);background:var(--color-orange);border-radius:50%;margin-right:12px}.brand-period{color:var(--color-orange)}nav{flex-wrap:wrap;gap:8px 32px;display:flex}nav a{min-width:44px;min-height:44px;color:var(--color-muted);justify-content:center;align-items:center;font-size:14px;transition:color .16s;display:inline-flex;position:relative}nav a:hover{color:var(--color-text)}nav a.active{color:var(--color-orange)}nav a.active:after{content:"";bottom:0;background:var(--color-orange);height:2px;position:absolute;inset-inline:0}.main-content{flex-direction:column;flex:1;padding-block:clamp(40px,6vw,80px);display:flex}.main-content:focus{outline:none}.home-page{flex:1;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:48px;min-height:440px;padding-block:24px;display:grid}h1{letter-spacing:-.065em;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.05}.home-heading h1{font-size:clamp(64px,8.8vw,128px)}.home-heading h1 span{color:var(--color-orange)}.helios-orbit{aspect-ratio:1;justify-self:end;width:100%;max-width:420px;position:relative}.orbit-ring{border:1px solid;border-radius:50%;position:absolute}.orbit-ring-outer{border-color:var(--color-border);inset:0}.orbit-ring-inner{border-color:var(--color-purple);inset:14%}.orbit-core{border:2px solid var(--color-orange);border-radius:50%;position:absolute;inset:30%}.orbit-ring-inner:after{content:"";background:var(--color-purple);border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:-5px}.page-heading{border-bottom:1px solid var(--color-border);padding-block:32px 40px}.page-heading:before{content:"";background:var(--color-purple);width:32px;height:3px;margin-bottom:32px;display:block}.page-heading h1{font-size:clamp(44px,6vw,80px)}.page-heading p{color:var(--color-muted);margin:24px 0 0;font-size:16px;line-height:1.7}.text-link{color:var(--color-orange);text-underline-offset:5px;align-self:start;margin-top:24px;padding-block:12px;text-decoration:underline}.site-footer{border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom)}.footer-inner{min-height:88px;color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding-block:16px;font-size:12px;display:flex}.footer-brand{min-height:44px;color:var(--color-text);align-items:center;font-size:13px;display:inline-flex}.skip-link{z-index:10;background:var(--color-background);color:var(--color-text);border:1px solid var(--color-purple);padding:12px 20px;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}@media (width<=760px){.header-inner{flex-direction:column;align-items:flex-start;gap:12px;padding-top:20px;padding-bottom:16px}nav{justify-content:space-between;gap:8px 12px;width:100%}nav a{font-size:13px}.home-page{grid-template-columns:minmax(0,1fr);gap:48px;min-height:auto}.home-heading h1{font-size:clamp(64px,14vw,106px)}.helios-orbit{justify-self:center;max-width:260px}.page-heading{padding-top:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}.control-page{--color-target:#ff8b38;--color-drone:#c4abe9}.control-intro{justify-content:space-between;align-items:center;gap:24px;margin-bottom:36px;display:flex}.control-intro h1{margin-top:14px;font-size:clamp(34px,4.1vw,56px)}.control-workspace{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;display:grid}.control-panel{background:var(--color-background);border:0;border-radius:0;min-width:0;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:12px;padding:24px 24px 0;display:flex}.panel-heading h2{letter-spacing:-.025em;margin:0;font-size:20px;font-weight:500}.panel-detail{color:var(--color-muted);font-size:11px}.space-panel{flex-direction:column;display:flex}.space-viewport{flex:1;min-height:360px;position:relative}.space-graph{width:100%;height:100%;position:absolute;inset:0}.space-grid{stroke:#342b40;stroke-width:1px}.space-axis{stroke:#6e637b;stroke-width:1px}.axis-label,.space-graph text{fill:var(--color-muted);font:11px monospace}.target-guide{stroke:var(--color-target);stroke-dasharray:4 5;opacity:.6}.drone-guide{stroke:var(--color-drone);stroke-dasharray:4 5;opacity:.5}.flight-path{stroke:var(--color-target);stroke-dasharray:5 6;stroke-width:1px;opacity:.65}.target-marker{color:var(--color-target);stroke:currentColor;fill:none;stroke-width:1.5px}.target-marker text{fill:currentColor;stroke:none}.drone-marker{color:var(--color-drone);stroke:currentColor;fill:#21192c;stroke-width:1.5px}.drone-marker text{fill:currentColor;stroke:none}.view-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:0 24px 22px;display:flex}.graph-legend,.graph-legend span{color:var(--color-muted);align-items:center;gap:8px;font-size:12px;display:flex}.graph-legend{gap:18px}.graph-legend i{width:7px;height:7px;display:block}.drone-dot{background:var(--color-drone);border-radius:50%}.target-dot{border:1px solid var(--color-target);transform:rotate(45deg)}.orbit-control{color:var(--color-muted);align-items:center;gap:10px;font-size:12px;display:flex}.orbit-control input{width:80px;height:28px;accent-color:var(--color-drone)}.position-readout{z-index:1;border:1px solid var(--color-border);background:var(--color-background);border-radius:6px;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px;display:flex;position:absolute;top:20px;right:24px}.position-readout span{color:var(--color-muted);font-size:11px}.position-readout output{color:var(--color-drone);font:13px monospace}.target-panel{padding-bottom:24px}.target-controls{grid-template-columns:minmax(0,1fr) 58px;gap:22px;margin:26px 24px 0;display:grid}.control-label{justify-content:space-between;margin-bottom:14px;font-size:12px;display:flex}.xy-plane{aspect-ratio:1;cursor:crosshair;touch-action:none;background:#17131d;border:1px solid #4a3b5a;border-radius:2px;width:100%;padding:0;display:block;position:relative}.xy-plane svg{width:100%;height:100%;display:block;overflow:visible}.xy-grid{stroke:#302739;fill:none}.xy-axis{stroke:#685778;fill:none}.xy-plane text{fill:#aca0b6;font:10px monospace}.xy-drone{fill:var(--color-drone)}.xy-target{pointer-events:none;border:1px solid var(--color-target);background:#ff8b381a;border-radius:50%;width:20px;height:20px;position:absolute;transform:translate(-50%,-50%)}.xy-target:after{content:"";background:var(--color-target);border-radius:50%;position:absolute;inset:6px}.height-control{color:var(--color-muted);flex-direction:column;align-items:center;gap:8px;font-size:11px;display:flex}.height-control label{color:var(--color-text);margin-bottom:4px;font-size:12px}.height-control input{writing-mode:vertical-lr;width:44px;height:0;min-height:80px;accent-color:var(--color-target);cursor:ns-resize;direction:rtl;flex:1}.height-control output{color:var(--color-target);white-space:nowrap;font:12px monospace}.coordinate-inputs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 24px 0;display:grid}.coordinate-inputs label{border:1px solid var(--color-border);border-radius:5px;align-items:center;gap:6px;min-width:0;padding:10px;font:12px monospace;display:flex}.coordinate-inputs label>span:first-child{color:var(--color-target)}.coordinate-inputs label>span:last-child{color:var(--color-muted)}.coordinate-inputs input{width:100%;min-width:0;color:var(--color-text);font:inherit;background:0 0;border:0;min-height:24px}.flight-actions{gap:12px;margin:20px 24px 0;display:flex}.flight-actions button{min-height:46px;font:inherit;cursor:pointer;border-radius:5px;padding:12px 18px;font-size:13px;transition:background .16s}.fly-button{border:1px solid var(--color-orange);background:var(--color-orange);color:#140b04;flex:1;justify-content:space-between;align-items:center;display:flex;font-weight:600!important}.fly-button:hover{background:var(--color-target)}.reset-button{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.reset-button:hover{background:#29212f}.control-page :focus-visible{outline:2px solid var(--color-target);outline-offset:4px}.control-page button:disabled,.control-page input:disabled{opacity:.5;cursor:not-allowed}@media (width<=960px){.control-workspace{grid-template-columns:minmax(0,1fr)}.space-viewport{flex:none;height:clamp(360px,65vw,480px)}.target-controls{grid-template-columns:minmax(0,1fr) 64px}.xy-control{justify-self:center;width:100%;max-width:440px}}@media (width<=540px){.flight-arrow{display:none}.control-intro{flex-direction:column;align-items:flex-start;gap:18px}.panel-heading{padding:20px 16px 0}.target-controls{grid-template-columns:minmax(0,1fr) 46px;gap:18px;margin-inline:16px}.coordinate-inputs,.flight-actions{margin-inline:16px}.coordinate-inputs label{gap:4px;padding:8px}.view-controls{padding-inline:16px}.position-readout{right:16px}}.dock-marker{fill:#29212f;stroke:var(--color-muted);stroke-width:1.5px}.dock-marker text{fill:var(--color-muted);stroke:none}.xy-dock{fill:#29212f;stroke:var(--color-muted);stroke-width:1.5px}.control-access,.control-status{border:1px solid var(--color-border);background:var(--color-background);border-radius:8px;margin-bottom:20px;padding:24px}.control-access{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.control-access h2,.control-access p{width:100%;margin:0}.control-access p,.control-status span,.control-detail{color:var(--color-muted);font-size:14px;line-height:1.6}.control-access label{flex:220px;gap:8px;display:grid}.control-access input{min-width:0;min-height:44px;color:var(--color-text);border:1px solid var(--color-border);background:0 0;border-radius:5px;padding:10px}.control-access button,.control-status button{min-height:44px;color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:5px;padding:10px 18px}.control-status div{flex-wrap:wrap;gap:12px;display:flex}.target-panel>.control-detail{margin:16px 24px 0}.control-error{color:#ffb8aa;border:1px solid #98564b;border-radius:5px;padding:12px 16px}.control-status p{overflow-wrap:anywhere}.observation-panel{padding:1.5rem}.observation-coordinates{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem;margin-block:1.5rem;display:grid}.observation-coordinates>div{gap:.4rem;display:grid}.observation-coordinates output{font-variant-numeric:tabular-nums;font-size:1.75rem}.observation-coordinates small{color:#c1b7cc}.observation-panel dl{grid-template-columns:minmax(8rem,1fr) minmax(0,3fr);gap:.5rem 1rem;display:grid}.observation-panel dd{overflow-wrap:anywhere;margin:0}
