:root{color-scheme:dark;--bg:#0a1725;--panel:#142b3b;--line:#355264;--ink:#e6eff1;--muted:#a1b8c6;--mint:#8cdbc5;--gold:#e5b979;--danger:#ffa9a0}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 75% 0,#214454,transparent 55%),var(--bg);color:var(--ink);font:16px/1.55 system-ui,sans-serif}header,main,footer{max-width:1500px;margin:auto;padding:24px 4vw}header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.12em}header a{letter-spacing:0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:18px;font-weight:700;color:var(--ink)}a{color:var(--mint)}button,input,select{font:inherit}button{background:#243e4e;color:var(--ink);border:1px solid #547182;border-radius:9px;padding:11px 15px;cursor:pointer;text-align:left}button:hover:enabled{border-color:var(--mint);background:#2f5360}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--mint);color:#0b2d30;border-color:var(--mint);font-weight:750}.primary:hover:enabled{background:#b9f2df;color:#0b2d30}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,canvas:focus-visible{outline:3px solid var(--gold);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(35px,5vw,70px);line-height:1.05;letter-spacing:-.05em;margin-bottom:25px}h1 em{font-style:normal;color:var(--mint)}h2{font-size:25px;line-height:1.2;letter-spacing:-.025em}h3{font-size:18px}p{color:#bacbd5}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--gold);margin-bottom:15px}.lede{font-size:19px;max-width:660px}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center;padding:6vh 0}.start-actions{display:flex;gap:12px;flex-wrap:wrap}.small,small{font-size:13px;color:var(--muted)}.poster{min-height:400px;border:1px solid #54817e;border-radius:24px;background:linear-gradient(135deg,#315a64,#112d40);position:relative;padding:30px;overflow:hidden;box-shadow:0 25px 80px #0005}.poster h2{font-size:36px;position:relative;z-index:1;max-width:290px}.poster>p{font:11px/1.4 monospace;letter-spacing:.12em;color:#bce4dc}.stamp{display:block;font-size:10px;letter-spacing:.15em;color:var(--gold);margin-top:25px}.mast-art{position:absolute;right:-10px;top:10px;width:220px;height:320px;opacity:.65}.mast-art span{position:absolute;left:100px;top:15px;height:290px;width:8px;transform:rotate(12deg);background:linear-gradient(#8ce1d1,#426779)}.mast-art i,.mast-art b{position:absolute;width:140px;height:55px;border:7px solid #bad8d9;border-radius:50%;transform:rotate(-25deg);top:45px;left:30px}.mast-art b{top:135px;width:200px;height:85px;left:0;border-color:#6aa69f}.crew-row{display:flex;gap:12px;position:relative;margin-top:80px}.portrait{display:inline-grid;place-items:center;background:linear-gradient(145deg,var(--crew),#203c50);color:#0b2130;width:45px;height:50px;clip-path:polygon(20% 0,85% 0,100% 30%,90% 100%,10% 100%,0 30%);font-weight:850;margin-right:9px}.brief{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:30px 0}.brief article{border-top:1px solid var(--line);padding:25px 0}.brief b{color:var(--mint);font-size:12px}.brief h2{margin-top:15px}.saved button{margin:5px}details{border:1px solid var(--line);border-radius:12px;padding:18px;margin:20px 0}summary{cursor:pointer;font-weight:650}details p:first-of-type{margin-top:20px}.game-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.game-top h1{font-size:36px;margin:0}.game-top .eyebrow{margin-bottom:8px}.hud{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:15px;margin:20px 0 10px;border:1px solid var(--line);background:#153142;border-radius:15px;padding:15px}.hud small{display:block;font-size:10px;letter-spacing:.12em}.hud strong{display:block;color:var(--mint);font-size:22px;word-break:break-word}.game-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:22px;align-items:start}.world-wrap{position:relative;border:1px solid #456777;border-radius:15px;overflow:hidden;background:#0a1421}:is(#world,#net-world){display:block;width:100%;height:clamp(340px,45vw,590px);touch-action:pan-y}.world-caption{display:flex;justify-content:space-between;gap:10px;color:#c4d9df;padding:8px 12px;font-size:10px;background:#132b3b}.console{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;max-height:710px;overflow-y:auto}.console nav{display:flex;background:#0f2130;padding:10px;gap:6px;position:sticky;top:0;z-index:1}.console nav button{flex:1;text-align:center;padding:8px}#panel{padding:24px}#panel label{display:block;color:var(--muted);font-size:13px;margin:15px 0}input,select{display:block;width:100%;min-width:0;background:#0b2130;color:var(--ink);border:1px solid #587a8c;border-radius:7px;padding:10px;margin:7px 0}#panel>button{margin:6px 0}.claim{border:1px solid var(--line);border-radius:9px;padding:13px;margin:15px 0}.claim .portrait{float:right}.claim p{font-size:14px}.tag{color:var(--mint);font-size:13px}.dispatch{display:block;width:100%;margin:10px 0}.power-gauge{height:22px;background:#294251;border-right:3px solid var(--gold);border-radius:7px;overflow:hidden;margin-bottom:20px}.power-gauge span{display:block;height:100%;background:var(--mint)}.pause{position:absolute;inset:0;background:#071927df;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;z-index:2}.pause[hidden]{display:none}.pause p{max-width:400px}.travel{margin:25px 0}.travel h2{font-size:18px}.travel>div{display:flex;gap:8px;flex-wrap:wrap}.travel p{font-size:12px;margin:12px 0}.lower-controls{display:flex;gap:8px;flex-wrap:wrap}.message{margin:20px 0;padding:16px;border-left:3px solid var(--mint);background:#173143}.error:empty,.life-alert:empty{display:none}.error{color:var(--danger)}.life-alert{font-weight:800;color:var(--danger);height:25px;opacity:0;transition:opacity .2s}.life-alert.flash{opacity:1}.outcome{position:absolute;inset:0;overflow:auto;background:#0c2131f5;padding:35px;z-index:3;border:2px solid var(--danger)}.outcome.won{border-color:var(--mint)}.outcome h2{font-size:32px}.outcome details{background:#152c3c}.outcome article{border-bottom:1px solid var(--line);padding:10px 0}.outcome p{font-size:14px}footer{font-size:11px;color:#96afbd;text-align:center;border-top:1px solid var(--line);margin-top:30px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:absolute;top:-100px;left:15px}.skip:focus{top:10px;z-index:9;padding:10px;background:#193849}@media(max-width:850px){.intro,.game-layout{grid-template-columns:1fr}.intro{padding:30px 0}.poster{min-height:300px}.brief{grid-template-columns:1fr;gap:0}.console{max-height:none}.hud{grid-template-columns:1fr 1fr}.hud strong{font-size:20px}header>span{display:none}header,main{padding:18px}.game-top h1{font-size:28px}.game-top button{font-size:12px;padding:8px}.outcome{padding:22px}.crew-row{margin-top:35px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
