.wayfarer{max-width:1000px;margin:0 auto;padding:.6rem .7rem calc(5.2rem + env(safe-area-inset-bottom))}.top{display:flex;align-items:center;gap:.6rem}.top .title{flex:1;text-align:center;font-size:1.1rem;margin:0}.top-controls{display:flex;gap:.4rem}.back{text-decoration:none;font-size:.9rem;white-space:nowrap}button.ghost{background:var(--panel);color:var(--text);padding:.4em .7em;font-size:.85rem;border:1px solid #2c3546}button.ghost:disabled{opacity:.4}.control-bar{position:fixed;left:0;right:0;bottom:0;z-index:5;display:flex;justify-content:center;padding:.5rem .7rem calc(.5rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(17,21,28,0),var(--bg) 45%);pointer-events:none}.pause-big{pointer-events:auto;width:min(30rem,100%);padding:.85em 1em;font-size:1.05rem;font-weight:700;border-radius:12px;background:var(--panel);color:var(--text);border:1px solid #3a4657}.pause-big:disabled{opacity:.35}.battlefield{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:.6rem;margin-top:.6rem}.ship-panel{background:var(--panel);border-radius:14px;border:1px solid #2c3546;padding:.55rem .6rem .65rem}.ship-panel.enemy{border-color:#5b2b33;background:linear-gradient(180deg,#241a20,var(--panel))}.ship-panel.player{border-color:#23414d;background:linear-gradient(180deg,#16222a,var(--panel))}.ship-name{font-weight:700;font-size:.95rem}.ship-status{font-size:.68rem;color:var(--accent);min-height:.95rem;margin-bottom:.25rem}.ship-status.crippled{color:var(--danger);font-weight:700}.ship-status.turning{color:#e6c65c}.come-about{margin-top:.35rem;font-size:.68rem;color:var(--accent)}.come-about.turning{color:#e6c65c}.ship-svg{display:block;width:100%;height:auto;max-height:120px;margin-bottom:.4rem}.ship-hull{fill:#38445a;stroke:#63769044;stroke-width:1.5}.enemy .ship-hull{fill:#4a3542;stroke:#7a556355}.ship-hull-dmg{fill:var(--danger);opacity:0;pointer-events:none}.ship-nacelle{fill:#2a3140;stroke:#5b6b82;stroke-width:1.2}.ship-nacelle.damaged{fill:#4a2028;stroke:var(--danger)}.ship-engine-glow{fill:var(--accent);filter:blur(2.5px)}.ship-engine-glow.dead{fill:var(--danger)}.ship-mount{fill:#0d1119;stroke:#6a7c93;stroke-width:1.4}.ship-mount.ready{fill:var(--accent-2);stroke:var(--accent-2);filter:drop-shadow(0 0 3px var(--accent-2))}.ship-mount.bearing{stroke:var(--accent);stroke-width:2.4}.ship-mount.ready.bearing{filter:drop-shadow(0 0 5px var(--accent-2))}.ship-mount.disarmed{opacity:.3!important}.ship-edge{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;opacity:0;transition:opacity .15s}.ship-edge.lit{opacity:.85}.ship-shield{fill:none;stroke:var(--accent);stroke-width:1.4;opacity:.08;transition:opacity .2s}.ship-shield.up{opacity:.55}.ship-part.targetable{cursor:pointer}.ship-svg-enemy .targetable:hover{stroke:var(--danger);stroke-width:2.4}.bar{position:relative;height:16px;border-radius:8px;background:#0d1119;border:1px solid #2c3546;overflow:hidden;margin-bottom:.45rem}.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-2),#b9e778);transition:width .12s linear}.enemy .bar-fill{background:linear-gradient(90deg,#e57373,#f0a58f)}.bar-txt{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#04121b;mix-blend-mode:screen}.shields{display:flex;gap:3px;min-height:10px;margin-bottom:.4rem;flex-wrap:wrap}.pip{width:12px;height:9px;border-radius:2px;background:#0d1119;border:1px solid #2c3546}.pip.shield.on{background:var(--accent);border-color:var(--accent);box-shadow:0 0 5px #4fc3f799}.pip.sys.on{background:#d7b64a;border-color:#d7b64a}.pip.sys.broken{background:#2a1416;border-color:var(--danger)}.systems{display:flex;flex-direction:column;gap:.28rem;margin-bottom:.45rem}.sys-row{display:flex;align-items:center;gap:.4rem;padding:2px 4px;border-radius:7px}.sys-label{font-size:.72rem;color:var(--muted);width:54px;flex:none}.sys-pips{display:flex;gap:3px;flex-wrap:wrap}.sys-eff{font-size:.66rem;color:var(--muted);margin-left:auto;white-space:nowrap}.sys-row.targetable{cursor:pointer;border:1px dashed transparent}.sys-row.targetable:hover,.sys-row.targetable:active{border-color:var(--danger);background:#e5737314}.sys-row.hull-target .sys-label{color:#c98b8b}.weapons{display:flex;flex-direction:column;gap:.3rem}.wep-hint{font-size:.6rem;color:var(--muted);opacity:.7;margin-bottom:.1rem}.wep-chip{display:flex;align-items:center;gap:.4rem;font-size:.72rem}.wep-chip.armable{cursor:pointer;border-radius:6px;padding:1px 3px;margin:0 -3px;border:1px solid transparent}.wep-chip.armable:hover,.wep-chip.armable:active{border-color:#3a4459;background:#d7b64a0f}.wep-name{width:78px;flex:none;color:var(--muted)}.wep-cost{display:flex;gap:2px;flex:none}.pip.pwr{width:6px;height:10px;border-radius:2px}.wep-cost.on .pip.pwr{background:#d7b64a;border-color:#d7b64a}.wep-bar{flex:1;height:8px;border-radius:5px;background:#0d1119;border:1px solid #2c3546;overflow:hidden}.wep-bar-fill{height:100%;width:0;background:var(--accent);transition:width .1s linear}.wep-chip.bearing .wep-name:after{content:" ◀ bears";color:var(--accent);font-weight:700;font-size:.62rem}.wep-chip:not(.bearing):not(.disarmed):not(.unpowered){opacity:.6}.wep-chip.ready .wep-name{color:var(--accent-2);font-weight:700}.wep-chip.ready .wep-bar-fill{background:var(--accent-2);box-shadow:0 0 6px #81c784b3}.wep-chip.disarmed{opacity:.4}.wep-chip.disarmed .wep-name:after{content:" · off";color:var(--muted);font-size:.62rem}.wep-chip.unpowered{opacity:.85}.wep-chip.unpowered .wep-name{color:var(--danger)}.wep-chip.unpowered .wep-name:after{content:" · no power";color:var(--danger);font-size:.62rem}.range-wrap{margin:.6rem 0 .4rem}.range-strip{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;height:26px;border-radius:8px;overflow:hidden;border:1px solid #2c3546}.range-strip .rb{display:flex;align-items:center;justify-content:center;font-size:.64rem;letter-spacing:.03em;color:var(--muted);border-right:1px solid #2c3546}.range-strip .rb.long{border-right:none}.range-strip .rb.knife{background:#e573731f}.range-strip .rb.medium{background:#d7b64a1a}.range-strip .rb.long{background:#4fc3f714}.range-marker{position:absolute;top:-3px;bottom:-3px;width:3px;margin-left:-1px;background:var(--text);box-shadow:0 0 6px #e6edf3cc;transition:left .12s linear}.jump-line{display:none;margin-top:.3rem;font-size:.72rem;font-weight:700;color:var(--danger);text-align:center}.jump-line.show{display:block}.log-wrap{margin-bottom:.5rem}.log{list-style:none;margin:0;padding:.4rem .55rem;height:88px;overflow-y:auto;background:#0d1119;border:1px solid #2c3546;border-radius:10px;font-size:.74rem;line-height:1.5}.log-player{color:var(--accent)}.log-enemy{color:#e79c9c}.log-system{color:var(--text);font-weight:600}.stations{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.station{background:var(--panel);border:1px solid #2c3546;border-left-width:4px;border-radius:12px;padding:.5rem .6rem .6rem}.station:last-child{grid-column:1 / -1}.station.good{border-left-color:var(--accent-2)}.station.ok{border-left-color:#d7b64a}.station.poor{border-left-color:var(--danger)}.station-head{display:flex;align-items:baseline;justify-content:space-between}.station-role{font-weight:700;font-size:.85rem}.station-grade{font-weight:800;font-size:.9rem}.station.good .station-grade{color:var(--accent-2)}.station.ok .station-grade{color:#e6c65c}.station.poor .station-grade{color:var(--danger)}.station-officer{font-size:.7rem;color:var(--muted);margin-bottom:.4rem}.seg-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:.35rem 0 .2rem}.seg{display:flex;gap:4px;flex-wrap:wrap}.seg-btn{flex:1;min-width:42px;background:#0d1119;color:var(--text);border:1px solid #2c3546;border-radius:8px;padding:.45em .3em;font-size:.74rem;font-weight:600}.seg-btn.active{background:var(--accent);color:#04121b;border-color:var(--accent)}.power-block{margin-top:.15rem}.power-head{font-size:.66rem;color:var(--muted);margin-bottom:.3rem}.power-row{display:flex;align-items:center;gap:.35rem;margin-bottom:.28rem}.pwr-label{font-size:.7rem;color:var(--muted);width:52px;flex:none}.pwr-btn{width:26px;height:26px;padding:0;font-size:1rem;line-height:1;background:#0d1119;color:var(--text);border:1px solid #2c3546;border-radius:7px;flex:none}.power-row .sys-eff{margin-left:0;width:62px;text-align:right}.actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}.action-btn{flex:1;min-width:120px;background:var(--panel);color:var(--text);border:1px solid #3a4657;border-radius:10px;padding:.6em .5em;font-size:.8rem;font-weight:600}.action-btn.active{background:#3a2c14;border-color:#d7b64a;color:#f0d98a}.action-btn.capture{border-color:var(--accent-2);color:var(--accent-2)}.action-btn.yield{border-color:var(--danger);color:#f0a5a5}.commands{display:flex;gap:.5rem;margin-top:.5rem}.cmd-btn{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.12rem;background:var(--panel);color:var(--text);border:1px solid #3a4657;border-radius:10px;padding:.5em .35em;text-align:center}.cmd-name{font-size:.82rem;font-weight:700}.cmd-blurb{font-size:.58rem;color:var(--muted);line-height:1.15}.cmd-cd{font-size:.62rem;font-weight:700;color:var(--accent);letter-spacing:.02em}.cmd-btn.active{border-color:var(--accent-2);background:#16301c;box-shadow:0 0 10px #81c78459}.cmd-btn.active .cmd-name,.cmd-btn.active .cmd-cd{color:var(--accent-2)}.cmd-btn.cooling{opacity:.5}.cmd-btn.cooling .cmd-cd{color:var(--muted)}.cmd-btn:not(:disabled):active{transform:translateY(1px)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:1.5rem;text-align:center;background:#090c12eb;z-index:10}.overlay.show{display:flex}.overlay h2{margin:0}.overlay p{max-width:30rem;color:var(--muted);margin:0}.overlay-actions{display:flex;flex-direction:column;gap:.55rem;width:min(20rem,100%)}.overlay-actions button{width:100%}.crew-overlay{overflow-y:auto;justify-content:flex-start;padding-top:2rem}.crew-list{display:grid;grid-template-columns:1fr;gap:.6rem;width:min(30rem,100%)}.crew-card{background:var(--panel);border:1px solid #2c3546;border-left-width:4px;border-radius:12px;padding:.6rem .75rem;text-align:left}.crew-card.good{border-left-color:var(--accent-2)}.crew-card.ok{border-left-color:#d7b64a}.crew-card.poor{border-left-color:var(--danger)}.crew-head{display:flex;justify-content:space-between;align-items:baseline}.crew-role{font-weight:700}.crew-rating{font-weight:800;color:var(--accent)}.crew-name{font-size:.8rem;color:var(--muted);margin-bottom:.35rem}.stat-head{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:.35rem}.stat-row{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.2rem}.stat{font-size:.72rem;background:#0d1119;border:1px solid #2c3546;border-radius:6px;padding:.15em .45em}.crew-traits{margin-top:.4rem;font-size:.72rem;color:var(--accent-2);font-style:italic}@media (min-width: 720px){.stations{grid-template-columns:1fr 1fr 2fr}.station:last-child{grid-column:auto}}
