:root{color-scheme:dark;--hull: #0d1319;--chrome: #141c25;--chrome-2: #1a2430;--rule: #283545;--glow: #e3eaf0;--dim: #8fa0b1;--amber: #e8a13a;--signal: #74c2bd;--paper: #e5e9e0;--paper-rule: #b3bec6;--ink: #1b2632;--ink-2: #4a5867;--form: #36577a;--f-label: "Saira Condensed", "Arial Narrow", sans-serif;--f-data: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--f-doc: "IBM Plex Serif", Georgia, "Times New Roman", serif;--strip-h: 42px}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;background:var(--hull);color:var(--glow);font-family:var(--f-doc);font-size:16px;line-height:1.5}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}img{max-width:100%}.num{font-family:var(--f-data);letter-spacing:0}.strip{display:flex;flex-wrap:wrap;align-items:center;gap:6px 22px;min-height:var(--strip-h);padding:10px max(16px,3vw);background:var(--chrome);border-bottom:1px solid var(--rule);font-family:var(--f-label);text-transform:uppercase;letter-spacing:.12em;font-size:13px;color:var(--dim)}.strip .wordmark{color:var(--glow);font-weight:700;font-size:16px;letter-spacing:.22em}.strip b.num{color:var(--amber);font-weight:400}.strip .spacer{flex:1}.strip a{color:var(--dim);text-decoration:none}.strip a:hover{color:var(--glow)}.ship{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,440px);align-items:start;border-bottom:1px solid var(--rule)}.stage{position:sticky;top:0;height:calc(100vh - var(--strip-h));height:calc(100dvh - var(--strip-h));min-height:480px;background:var(--hull);overflow:hidden}.stage canvas{display:block;touch-action:none}.stage-still{width:100%;height:100%;object-fit:cover;display:block}.legend{position:absolute;left:14px;top:12px;margin:0;max-width:min(440px,calc(100% - 28px));pointer-events:none;font-family:var(--f-label);text-transform:uppercase;letter-spacing:.1em;font-size:12px;color:var(--dim);text-shadow:0 1px 2px var(--hull),0 0 8px var(--hull)}.loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;font-family:var(--f-label);text-transform:uppercase;letter-spacing:.14em;font-size:14px;color:var(--dim)}.loading b{color:var(--amber);font-weight:400;margin-left:8px}.rail{display:grid;gap:16px;align-content:start;min-height:calc(100vh - var(--strip-h));min-height:calc(100dvh - var(--strip-h));padding:28px max(16px,2.2vw) 48px;background:var(--chrome);border-left:1px solid var(--rule)}.eyebrow{margin:0;font-family:var(--f-label);text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;color:var(--amber)}h1{margin:4px 0 10px;font-family:var(--f-label);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(44px,5.4vw,68px);line-height:.95}h2{margin:4px 0 12px;font-family:var(--f-label);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(28px,3.4vw,40px);line-height:1.05}.lede{margin:0;font-size:17px;max-width:46ch}.controls{display:flex;flex-wrap:wrap;gap:6px}button.cmd{font-family:var(--f-label);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:600;background:transparent;color:var(--glow);border:1px solid var(--rule);padding:7px 12px;border-radius:2px;cursor:pointer}button.cmd:hover{border-color:var(--dim)}button.cmd.on{background:var(--amber);color:var(--hull);border-color:var(--amber)}button.cmd:disabled{opacity:.4;cursor:default}.rail-h{margin:10px 0 0;font-size:24px}.note{margin:-12px 0 0;color:var(--dim);font-size:14.5px}.group-h{margin:4px 0 0;padding-bottom:6px;border-bottom:1px solid var(--rule);font-family:var(--f-label);font-weight:500;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--dim)}.systems{list-style:none;margin:0;padding:0}.sys{border-bottom:1px solid var(--rule)}.sys-head{display:grid;gap:1px;width:100%;padding:10px;text-align:left;background:none;border:0;color:inherit;cursor:pointer;font:inherit}.sys-head:hover{background:var(--chrome-2)}.sys-name{font-family:var(--f-label);font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:16px}.sys-line{color:var(--dim);font-size:14.5px}.sys.open{background:var(--chrome-2);box-shadow:inset 3px 0 0 var(--amber)}.sys.open .sys-name{color:var(--amber)}.sys-body{display:grid;gap:10px;padding:0 12px 14px;font-size:15px}.sys-body p{margin:0}.report{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:3px 12px;margin:0;font-size:14px}.report dt{padding-top:3px;font-family:var(--f-data);font-size:11px;text-transform:uppercase;color:var(--form)}.report.on-dark dt{color:var(--signal)}.report.on-dark dd{color:var(--dim)}.report dd{margin:0}.paper{background:var(--paper);color:var(--ink);border-radius:2px;box-shadow:0 14px 30px -14px #000000d9}.card{position:absolute;left:14px;bottom:14px;display:grid;gap:8px;width:min(340px,calc(100% - 28px));max-height:calc(100% - 70px);overflow:auto;padding:12px 14px}.card h3{margin:0;font-family:var(--f-label);font-weight:600;font-size:22px;letter-spacing:.02em;line-height:1.15}.form-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;border-bottom:1px solid var(--paper-rule);font-family:var(--f-label);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--form)}button.quiet{padding:2px 4px;background:none;border:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--form);cursor:pointer}button.link{padding:0;background:none;border:0;font:inherit;color:var(--form);text-decoration:underline;cursor:pointer}.band{padding:24px max(16px,3vw);border-bottom:1px solid var(--rule)}.particulars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px 18px;max-width:1280px;margin:0 auto}.particulars div{padding-left:12px;border-left:1px solid var(--rule)}.particulars dt{font-family:var(--f-label);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--dim)}.particulars dd{margin:2px 0 0;font-family:var(--f-data);font-size:13px;color:var(--dim)}.particulars dd b{display:block;font-weight:500;font-size:26px;line-height:1.2;color:var(--amber)}.deck-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:40px;align-items:start;max-width:1280px;margin:0 auto;padding:56px max(16px,3vw) 40px}.deck-text>p{max-width:62ch}.stack{list-style:none;margin:20px 0 24px;padding:0;border-top:1px solid var(--rule);max-width:640px}.stack li{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--rule)}.stack b{font-family:var(--f-label);font-weight:600;text-transform:uppercase;letter-spacing:.1em}.stack span{color:var(--dim)}.rooms{width:100%;max-width:640px;border-collapse:collapse;background:var(--paper);color:var(--ink);font-size:15px}.rooms caption{padding:8px 12px;text-align:left;background:var(--paper);border-bottom:1px solid var(--paper-rule);font-family:var(--f-label);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--form)}.rooms th{padding:6px 12px;text-align:left;font-family:var(--f-data);font-weight:400;font-size:11px;text-transform:uppercase;color:var(--form)}.rooms td{padding:6px 12px;border-top:1px solid var(--paper-rule)}.rooms td.num,.rooms th:last-child{text-align:right}.deck-figure{position:sticky;top:16px;margin:0}.deck-figure img{display:block;width:100%;height:auto;border:1px solid var(--rule)}.stills{max-width:1280px;margin:0 auto;padding:24px max(16px,3vw) 64px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 18px;list-style:none;margin:18px 0 0;padding:0}.grid button{display:block;width:100%;padding:0;background:var(--hull);border:1px solid var(--rule);cursor:zoom-in}.grid button:hover{border-color:var(--dim)}.grid img{display:block;width:100%;height:auto}.grid p{margin:8px 0 0;color:var(--dim);font-size:14.5px}.lightbox{max-width:min(1400px,96vw);padding:0;background:transparent;border:0;color:var(--glow)}.lightbox::backdrop{background:#05080be6}.lightbox figure{margin:0}.lightbox img{display:block;max-width:100%;max-height:82vh;margin:0 auto;border:1px solid var(--rule)}.lightbox figcaption{display:flex;gap:16px;justify-content:space-between;align-items:center;padding-top:10px}.foot{padding:28px max(16px,3vw) 40px;background:var(--chrome);border-top:1px solid var(--rule);color:var(--dim)}.foot p{max-width:70ch;margin:0 0 8px}.foot b{color:var(--glow)}.foot .num{font-size:12.5px}@media (max-width: 980px){.ship{grid-template-columns:minmax(0,1fr)}.stage{height:52vh;height:52dvh;min-height:320px;z-index:3;border-bottom:1px solid var(--rule)}.rail{min-height:0;border-left:0}.card{left:10px;bottom:10px;width:min(300px,calc(100% - 20px));max-height:calc(100% - 20px);padding:10px 12px}.card h3{font-size:19px}.legend{top:auto;bottom:8px;left:10px;font-size:11px}.card{z-index:2}.particulars{grid-template-columns:repeat(2,minmax(0,1fr))}.deck-section{grid-template-columns:minmax(0,1fr);padding-top:40px}.deck-figure{position:static;max-width:420px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.grid{grid-template-columns:minmax(0,1fr)}.stack li{grid-template-columns:128px minmax(0,1fr)}.strip a{display:none}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
