:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#06070a;--earth:#0f131b;--fg:#ecebe6;--dim:#8b8d95;--line:#2b2e36;--accent:#ff7a1a;--sun:#ffd9a0;--display:"Michroma", "Eurostile", "Arial Black", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}html,body{height:100%}body{box-sizing:border-box;background:var(--bg);color:var(--fg);font-family:var(--mono);margin:0;font-size:12px}.label{color:var(--dim);letter-spacing:.14em;text-transform:uppercase;font-size:10px}h1{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:15px;font-weight:400}h1 span{color:var(--accent)}a{color:inherit}button:focus-visible,input:focus-visible,a:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.button{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);padding:6px 10px;font-size:10px;text-decoration:none;display:inline-block}.button:hover{color:var(--bg);background:var(--accent)}body.console{grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding-block:14px;padding-inline:16px;display:grid;overflow:hidden}header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 32px;display:flex}.brand{gap:6px;min-width:0;display:grid}.brand p{color:var(--dim);max-width:60ch;margin:0}.brand .row{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.telemetry{grid-template-columns:repeat(5,auto);gap:8px 28px;margin:0;display:grid}.telemetry div{flex-direction:column;gap:2px;min-width:0;display:flex}.telemetry dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:13px}.telemetry dd.hot{color:var(--accent)}#stage{border-block:1px solid var(--line);touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;min-height:0;position:relative}#stage:active{cursor:grabbing}#map{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:hidden}#map text{font-family:var(--mono);letter-spacing:.1em;fill:var(--dim);font-size:10px}#map text.name{fill:var(--fg)}#map text.cleared{fill:var(--accent)}.orbit{fill:none;stroke:var(--line);stroke-width:1px}.body{fill:var(--earth);stroke:var(--fg);stroke-width:1px}.body.sun{fill:var(--sun);fill-opacity:.16;stroke:var(--sun)}.dot{fill:var(--fg)}.route{stroke:var(--dim);stroke-width:1px;stroke-dasharray:2 5}.progress{stroke:var(--accent);stroke-width:1.5px}.tick{stroke:var(--dim);stroke-width:1px}.tick.cleared{stroke:var(--accent)}.fleet-dot{fill:var(--accent)}.fleet-ring{fill:none;stroke:var(--accent);stroke-width:1px;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite ping}#map text.fleet-label{fill:var(--accent)}.scale-line{stroke:var(--fg);stroke-width:1px}@keyframes ping{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(2.6)}}@media (prefers-reduced-motion:reduce){.fleet-ring{animation:none}}.hint{pointer-events:none;position:absolute;top:8px;left:0}footer{gap:10px;min-width:0;display:grid}.chips{scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips button{font:inherit;letter-spacing:.12em;text-transform:uppercase;color:var(--fg);border:1px solid var(--line);cursor:pointer;background:0 0;flex:none;padding:6px 10px;font-size:10px}.chips button:hover{border-color:var(--dim)}.chips button.cleared{color:var(--accent)}.controls{grid-auto-columns:1fr;grid-auto-flow:column;gap:8px 24px;display:grid}.controls label{gap:4px;min-width:0;display:grid}.controls .row{justify-content:space-between;gap:8px;display:flex}.controls output{font-variant-numeric:tabular-nums;white-space:nowrap}input[type=range]{width:100%;accent-color:var(--accent);margin:0}.true{gap:5px;display:grid}.true .ends{justify-content:space-between;gap:12px;display:flex}.true .ends span:nth-child(2){text-align:center;min-width:0}.track{border-inline:1px solid var(--dim);height:9px;position:relative}.track:before{content:"";inset-inline:0;background:var(--line);height:1px;position:absolute;top:4px}#win{background:var(--fg);min-width:1px;height:3px;position:absolute;top:3px;left:0}#mark{background:var(--accent);width:3px;height:9px;margin-left:-1px;position:absolute;top:0}@media (width<=900px){.telemetry{grid-template-columns:repeat(3,auto)}}@media (width<=640px){.telemetry{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;width:100%}.telemetry dd{white-space:normal;font-size:12px}h1{font-size:13px}}.row-buttons{flex-wrap:wrap;gap:10px;display:flex}.fine{justify-content:space-between;gap:12px;display:flex}.fine a{color:var(--dim);text-decoration:none}.fine a:hover{color:var(--fg)}body.page>footer{max-width:960px;margin:40px auto 0}body.page .prose{gap:14px;max-width:64ch;display:grid}body.page .prose h3{margin:10px 0 0}body.page .prose ul{margin:0;padding-left:18px;line-height:1.6}body.notice{place-content:center;gap:14px;padding:16px;display:grid}body.notice p{color:var(--dim);max-width:48ch;margin:0;line-height:1.6}body.page{padding:14px 16px 48px}body.page>header{border-bottom:1px solid var(--line);align-items:center;padding-bottom:12px}body.page .brand-link{text-decoration:none}body.page nav{flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}body.page nav a{color:var(--fg);text-decoration:none}body.page nav a:hover{color:var(--accent)}body.page nav form{margin:0}body.page main{gap:22px;max-width:440px;margin:32px auto 0;display:grid}body.page main.wide{max-width:960px}body.page h2{font-family:var(--display);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:13px;font-weight:400}body.page h3{margin:0 0 10px;font-weight:400}body.page section{justify-items:start;gap:8px;min-width:0;display:grid}body.page section>.table-wrap,body.page section>form.row-form{justify-self:stretch}body.page p{margin:0;line-height:1.6}body.page .lede,body.page .aside{color:var(--dim)}body.page .figure{color:var(--accent);font-variant-numeric:tabular-nums;font-size:22px}body.page .status{border-left:2px solid var(--accent);padding:6px 10px}body.page .errors{border-left:2px solid var(--fg);gap:4px;margin:0;padding:6px 10px;list-style:none;display:grid}body.page .panel{border:1px solid var(--line);justify-items:start;gap:10px;padding:14px;display:grid}body.page form.stack{justify-items:start;gap:14px;display:grid}body.page form.stack label:not(.check){width:100%}body.page form.row-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:12px;display:grid}body.page label{color:var(--dim);letter-spacing:.14em;text-transform:uppercase;gap:5px;font-size:10px;display:grid}body.page label.check{text-transform:none;letter-spacing:0;color:var(--fg);align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;display:flex}body.page input[type=text],body.page input[type=email],body.page input[type=password],body.page input[type=date],body.page input[type=number],body.page select{box-sizing:border-box;width:100%;font:inherit;color:var(--fg);background:var(--earth);border:1px solid var(--line);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:0;padding:8px 10px;font-size:13px}body.page input:focus,body.page select:focus{border-color:var(--dim)}body.page input[type=checkbox]{accent-color:var(--accent);margin:3px 0 0}body.page button.button{cursor:pointer;background:0 0;font-family:inherit}body.page .button.danger{color:var(--fg);border-color:var(--fg)}body.page .button.danger:hover{color:var(--bg);background:var(--fg)}body.page button.link{font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}body.page button.link.label{color:var(--fg);font-size:10px;text-decoration:none}body.page button.link:hover{color:var(--accent)}body.page .table-wrap{overflow-x:auto}body.page table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}body.page th{text-align:left;color:var(--dim);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:400}body.page th,body.page td{border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:baseline;padding:8px 14px 8px 0}body.page th.num,body.page td.num{text-align:right}body.page tr.muted td{color:var(--dim)}body.page td.actions{gap:14px;display:flex}body.page td.actions form,body.page form.inline{align-items:baseline;gap:8px;margin:0;display:flex}body.page form.inline input{width:160px;padding:4px 8px;font-size:12px}@media (width<=640px){body.page form.row-form{grid-template-columns:1fr 1fr}}
