:root{--line-height: 1.45;--bg: #080c17;--bg-raised: #0f1524;--bg-panel: #121a2c;--border: #222d48;--border-bright: #2e3c60;--text: #e8eeff;--text-muted: #8b9ac0;--accent: #62d29a;--accent-dim: #3f8f6b;--accent-soft: rgba(98, 210, 154, .16);--warn: #ffd479;--warn-soft: rgba(255, 212, 121, .16);--danger: #ff7a7a;--danger-soft: rgba(255, 122, 122, .16);--owner-mine: #62d29a;--owner-mine-soft: rgba(98, 210, 154, .16);--owner-other: #c98bdd;--owner-other-soft: rgba(201, 139, 221, .16);--selected: #5ec8e0;--supply: #f2c14e;--supply-soft: rgba(242, 193, 78, .16);--demand: #ff6b8a;--demand-soft: rgba(255, 107, 138, .16);--radius: 8px;--panel-width: 460px;--topbar-height: 56px;--statusbar-height: 28px;--rail-width: 52px;--sheet-height: 50%;--sheet-min-map: 88px;--split-panel-min: 320px;--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--z-map-overlay: 10;--z-guide: 20;--z-sheet: 30;--z-toasts: 40;--z-topbar: 50;--z-celebration: 60;--z-dialog: 70;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}#root{height:100dvh;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:var(--line-height);overscroll-behavior:none}h1,h2,h3{margin:0;font-weight:600}h2{font-size:1.1rem}h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px}p{margin:0 0 8px}.muted{color:var(--text-muted)}.small{font-size:.8rem}.strong{font-weight:600}.error{color:var(--danger)}.ok{color:var(--accent)}.app{display:grid;grid-template-rows:calc(var(--topbar-height) + var(--safe-t)) 1fr calc(var(--statusbar-height) + var(--safe-b));height:100dvh;overflow-x:clip}.topbar{display:flex;align-items:center;gap:16px;padding-top:var(--safe-t);padding-inline:max(14px,var(--safe-l)) max(14px,var(--safe-r));background:var(--bg-raised);border-bottom:1px solid var(--border);min-width:0;flex-wrap:nowrap;overflow-x:clip;position:relative;z-index:var(--z-topbar)}.brand{display:flex;align-items:baseline;gap:10px;white-space:nowrap;min-width:0;overflow:hidden}.show-narrow{display:none}.lang-switch{flex:none;padding:4px 6px;min-width:44px}.topnav{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:nowrap;overflow-x:clip;flex:0 0 auto}.workspace{position:relative;overflow:hidden}.statusbar{display:flex;align-items:center;gap:16px;padding-bottom:var(--safe-b);padding-inline:max(14px,var(--safe-l)) max(14px,var(--safe-r));background:var(--bg-raised);border-top:1px solid var(--border);font-variant-numeric:tabular-nums;flex-wrap:nowrap;overflow-x:clip}.map-host{position:absolute;top:0;right:0;bottom:0;left:0}.map-host canvas{display:block}.map-tooltip{position:absolute;pointer-events:none;background:#080c17eb;border:1px solid var(--border-bright);border-radius:4px;padding:2px 7px;font-size:.78rem;font-family:ui-monospace,monospace;white-space:nowrap;z-index:var(--z-map-overlay)}.map-hint-card{max-width:16rem;white-space:normal;padding:6px 8px;line-height:1.35}.map-hint-title{color:var(--text);font-weight:600}.map-hint-owner,.map-hint-label{color:var(--text-muted);font-size:.72rem}.map-hint-label{margin-top:4px;text-transform:uppercase;letter-spacing:.04em}.map-hint-mine{margin-top:2px;color:var(--owner-mine);font-size:.72rem}.map-hint-player,.map-hint-ports li{display:flex;align-items:center;gap:5px}.map-hint-player{margin-top:3px}.map-hint-player img,.map-hint-ports img{border-radius:3px;flex:none;object-fit:cover}.map-hint-section{margin-top:4px}.map-hint-ports,.map-hint-cargo{list-style:none;margin:0;padding:0}.map-hint-cargo li{display:flex;align-items:center;gap:5px}.map-hint-cargo.supply{color:var(--supply)}.map-hint-cargo.demand{color:var(--demand)}.map-hint-cargo li.map-hint-natural{opacity:.62}.map-hint-level{margin-left:auto;color:var(--text-muted);font-variant-numeric:tabular-nums}.map-hint-closed{color:var(--danger);font-size:.7rem}.map-hint-none{color:var(--text-muted);font-size:.72rem}.map-hint{position:absolute;left:12px;bottom:12px;color:var(--text-muted);font-size:.78rem;pointer-events:none}.map-controls{position:absolute;right:calc(var(--panel-width) + 24px + var(--safe-r));bottom:calc(12px + var(--safe-b));display:flex;flex-direction:column;gap:6px;transition:right .15s ease}.workspace:has(.panel.reading) .map-controls{right:calc(min(620px,100%) + 24px + var(--safe-r))}.workspace:not(:has(.panel)) .map-controls{right:max(12px,var(--safe-r))}.map-controls button{width:34px;height:34px;font-size:1rem;padding:0}.workspace:has(.map-search) .map-legend{display:none}.map-search{position:absolute;top:calc(8px + var(--safe-t));left:max(8px,var(--safe-l));right:max(8px,var(--safe-r));z-index:var(--z-sheet);display:flex;gap:6px;align-items:flex-start}.map-search .search{flex:1;min-width:0}.map-search>button{flex:none;min-width:44px;min-height:44px}.map-search input{width:100%}.feed-stalled{border-color:var(--warn)}.panel{position:absolute;top:0;right:0;bottom:0;width:var(--panel-width);max-width:100%;overflow-y:auto;overscroll-behavior:contain;padding:14px;padding-inline-end:max(14px,var(--safe-r));background:var(--bg-panel);border-left:1px solid var(--border);display:flex;flex-direction:column;gap:14px;z-index:var(--z-sheet)}.panel section{border-top:1px solid var(--border);padding-top:12px}.panel section>*+*{margin-top:10px}.panel section.cargo-columns>*+*,.panel section.stat-grid>*+*,.panel section.profile-links>*+*,.panel section.chat-pane>*+*,.panel section.pnl-headline>*+*{margin-top:0}.panel section>p{margin-bottom:0}.panel-caption{display:flex;flex-direction:column;gap:2px}.panel-caption>p{margin:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.panel-head p:last-child{margin-bottom:0}.panel .panel-head:has(h2) button:not(.link),.panel>.panel-head-sticky>button:not(.link){font-size:1.2rem;line-height:1;padding:2px 8px}.panel-head h2 .panel-name{white-space:nowrap}.panel-head h2 .panel-kind{color:var(--text-muted);font-size:.68em;font-weight:600;text-transform:uppercase;letter-spacing:.07em;margin-right:7px;vertical-align:.08em}.panel-actions{display:flex;flex-wrap:wrap;gap:6px}.confirm-pair{justify-content:flex-end}.need-credits{margin:0;display:flex}.need-credits>button{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.panel-summary{display:flex;flex-wrap:nowrap;gap:8px;overflow:hidden;flex:none}.panel-summary-figure{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.panel-hero+.panel-section{border-top:none;padding-top:0}.panel-section{border-top:1px solid var(--border);padding-top:12px}.panel-section-head{cursor:pointer;list-style-position:outside}.panel-section-head>h3{display:inline}.panel-section-figure{margin-left:6px}.panel-section-body>*+*{margin-top:10px}.panel-section[open]>.panel-section-head{margin-bottom:10px}.panel-action-bar{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:10px;position:sticky;bottom:calc(-14px - var(--safe-b));margin-bottom:calc(-14px - var(--safe-b));padding-bottom:calc(14px + var(--safe-b));background:var(--bg-panel);border-top:1px solid var(--border);box-shadow:0 -10px 16px -2px var(--bg-panel)}.panel:has(.panel-action-bar){scroll-padding-bottom:76px}.panel:has(.panel-action-figure){scroll-padding-bottom:120px}.panel-action-figure{display:flex;justify-content:space-between;gap:10px;font-weight:600;font-variant-numeric:tabular-nums}.panel-action-bar-row{display:flex;flex-wrap:wrap;gap:6px}.panel-action-bar-row>button{flex:1 1 auto;min-width:0}.panel-action-refusal{margin:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.panel-hero{display:flex;align-items:flex-start;gap:12px;padding:0;container:panel-hero / inline-size}.panel-hero-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.panel-hero-body .portrait-facts{font-size:.86rem}@container panel-hero (max-width: 300px){.panel-hero{flex-wrap:wrap}.panel-hero-body{flex-basis:100%}}.panel-portrait{display:flex;align-items:flex-start;gap:12px;padding:2px 0 12px}.portrait-button{flex:none;padding:0;border:0;background:none;line-height:0;border-radius:6px;cursor:pointer;transition:filter .12s ease}.portrait-button:focus-visible{outline:2px solid var(--accent, #6b78a8);outline-offset:2px}@media(prefers-reduced-motion:reduce){.portrait-button{transition:none}}.portrait-svg,.portrait-canvas{flex:none;border-radius:6px;box-shadow:0 1px 10px #00000073}.portrait-facts{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:.86rem}.portrait-facts .portrait-fact{display:flex;justify-content:space-between;gap:8px;white-space:nowrap;overflow:hidden}.portrait-facts .portrait-fact span:first-child{color:var(--text-muted)}.portrait-facts .portrait-fact span:last-child{text-overflow:ellipsis;overflow:hidden}.portrait-facts .portrait-fact.portrait-fact-wrap{white-space:normal;overflow:visible;align-items:baseline}.portrait-facts .portrait-fact.portrait-fact-wrap span:last-child{text-overflow:clip;overflow:visible;overflow-wrap:anywhere;text-align:right}@keyframes wormhole-fall{0%{transform:scale(1.35);opacity:0}25%{opacity:.9}to{transform:scale(.18);opacity:0}}.wormhole-ring{transform-origin:center;animation:wormhole-fall 3.6s linear infinite}@keyframes star-twinkle{0%{opacity:.2}50%{opacity:.85}to{opacity:.2}}.portrait-star{animation:star-twinkle 3.1s ease-in-out infinite}@keyframes stars-streak{0%{transform:translateY(0)}to{transform:translateY(24px)}}.stars-streak{animation:stars-streak 2.6s linear infinite}@keyframes wormhole-tunnel{0%{transform:scale(.82);opacity:.65}to{transform:scale(1.18);opacity:.09}}.wormhole-tunnel{transform-box:fill-box;transform-origin:50% 50%;animation:wormhole-tunnel 3.4s ease-out infinite}@media(prefers-reduced-motion:reduce){.wormhole-tunnel{animation:none}}@keyframes plume-burn{0%{transform:scaleY(.72);opacity:.65}40%{transform:scaleY(1.12);opacity:1}70%{transform:scaleY(.88);opacity:.8}to{transform:scaleY(.72);opacity:.65}}.plume-burn{transform-box:fill-box;transform-origin:center top;animation:plume-burn .9s ease-in-out infinite}@keyframes hull-beacon{0%,40%{opacity:.15}55%,80%{opacity:1}to{opacity:.15}}.hull-beacon{animation:hull-beacon 2.2s ease-in-out infinite}.hull-clamp-light{animation:berth-blink 1.9s ease-in-out infinite;animation-delay:-.9s}@keyframes berth-blink{0%,70%{opacity:.18}85%{opacity:1}to{opacity:.18}}.port-berth-light{animation:berth-blink 2.4s ease-in-out infinite}.port-tower-light{animation:hull-beacon 3.7s ease-in-out infinite}@keyframes port-approach{0%{transform:translate(0);opacity:0}12%{opacity:.95}70%{opacity:.95}88%{transform:translate(6.2px,-8.4px);opacity:0}to{transform:translate(6.2px,-8.4px);opacity:0}}.port-approach{animation:port-approach 5.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.wormhole-ring{animation:none;opacity:.5}.portrait-star,.stars-streak,.plume-burn,.hull-beacon,.port-berth-light,.port-tower-light,.port-approach{animation:none}.port-approach{transform:translate(6.2px,-8.4px);opacity:.95}.plume-burn{transform:scaleY(1);opacity:.9}}.buy-confirm{border:1px solid var(--border);border-radius:6px;padding:10px 12px;background:var(--bg-raised);display:flex;flex-direction:column;gap:8px}.buy-confirm h4{margin:0;display:flex;align-items:center;gap:6px}button,select,input,textarea{font:inherit;color:var(--text);background:var(--bg-raised);border:1px solid var(--border-bright);border-radius:var(--radius);padding:6px 10px}button{cursor:pointer;white-space:nowrap}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--accent-dim);border-color:var(--accent);color:#07120d;font-weight:600}button.danger{border-color:var(--danger);color:var(--danger)}.danger-zone{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.danger-zone h3{margin:0 0 .25rem}.danger-zone.restart-zone{border-top-color:var(--danger)}.danger-zone.restart-zone h3,.danger-zone.restart-zone>button{color:var(--danger)}.danger-zone.restart-zone>button{border-color:var(--danger)}.restart-done{border-top-color:var(--accent)}.restart-done h3{color:var(--accent)}.loan-card{margin:.75rem 0;padding:.75rem;border:1px solid var(--border);border-radius:.5rem}.loan-card h3{margin:0 0 .35rem;font-size:.95rem}.loan-card p{margin:0 0 .35rem}.idle-advice{margin:.75rem 0;padding:.75rem;border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);border-radius:6px;background:color-mix(in srgb,var(--warn) 8%,transparent)}.idle-advice h3{margin:0 0 .4rem;font-size:.95rem}.idle-advice p{margin:.3rem 0}button.link,a.link{background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;white-space:normal;text-align:inherit}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.form{display:flex;flex-direction:column;gap:12px}.form label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--text-muted)}.form label input,.form label select{color:var(--text);font-size:.95rem}.switch{margin-top:-4px;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}.switch button.link+button.link:before,.switch a.link+button.link:before,.switch button.link+a.link:before{content:"·";margin-right:12px;color:var(--text-muted)}.provider-signin{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.provider-signin-title{margin:0;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.provider-list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.provider-button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-size:max(16px,.95rem);text-decoration:none}.provider-name{font-weight:500;flex:1 1 auto}.provider-mark{flex:0 0 auto;display:block}.provider-linked{font-size:.8rem;color:var(--text-muted)}.provider-button[aria-disabled=true]{opacity:.55;pointer-events:none}.provider-or{margin-top:10px}.credit-packs{margin-top:16px;container:credit-packs / inline-size}.credit-packs h3{margin:0 0 4px}.pack-list{list-style:none;margin:10px 0 8px;padding:0;display:flex;flex-direction:column;gap:8px}.pack-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised)}.pack-facts{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 12rem}.pack-price{font-size:1.05rem;color:var(--text-muted)}.pack-credits{color:var(--warn);font-size:1.05rem}.promo-note{margin:0 0 10px;padding:8px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);background:color-mix(in srgb,var(--warn) 10%,transparent);color:var(--text);line-height:1.45}.pack-price s{color:var(--text-muted);opacity:.7;margin-right:2px}.pack-days{white-space:normal}.pack-row button{min-height:44px;flex:0 0 auto}@container credit-packs (max-width: 420px){.pack-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(5.5rem,100%),1fr));gap:8px}.pack-row{flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:6px;padding:8px}.pack-facts{flex:0 0 auto;align-items:center;text-align:center}.pack-row button{width:100%;white-space:normal}.pack-days{display:none}}.provider-caveat{margin:2px 0 0;color:var(--warn)}.search{position:relative;flex:0 1 340px;min-width:120px}.search input{width:100%}.search-with-icon input{padding-right:30px}.search-icon{position:absolute;top:0;bottom:0;right:8px;display:flex;align-items:center;color:var(--text-muted);cursor:text}.search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:var(--z-topbar);margin:0;padding:4px;list-style:none;background:var(--bg-panel);border:1px solid var(--border-bright);border-radius:var(--radius);max-height:320px;overflow-y:auto}.search-results li button{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;text-align:left;font-family:ui-monospace,monospace}.kind{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;padding:1px 5px;border-radius:3px;background:var(--border);color:var(--text-muted);font-family:system-ui,sans-serif}.kind-planet{background:#23324f}.kind-player{background:var(--owner-other-soft);color:var(--owner-other)}.port-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.cargo-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start;container:cargo-columns / inline-size}.cargo-columns>div{min-width:0}@container cargo-columns (max-width: 340px){.cargo-columns{grid-template-columns:1fr}}.cargo-row{min-width:0}.cargo-row-head,.cargo-row-foot{display:flex;justify-content:space-between;gap:8px}.cargo-row-head>.cargo-icon-row{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cargo-row-figures{display:flex;align-items:baseline;gap:5px;flex:0 0 auto}.cargo-row-meter{display:flex;align-items:center;gap:6px;margin-top:3px}.cargo-row-meter>.meter{flex:1 1 auto;min-width:0;margin-top:0}.cargo-row-rate{opacity:.7;flex:0 0 auto;font-variant-numeric:tabular-nums;white-space:nowrap}.cargo-row-foot{margin-top:2px}.cargo-row-foot>*{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meter{height:5px;background:#1a2338;border-radius:3px;overflow:hidden;margin-top:3px}.meter-fill{height:100%;border-radius:3px;transition:width .9s linear}.meter-fill.supply{background:var(--supply)}.meter-fill.demand{background:var(--demand)}.meter-fill.ok{background:var(--accent)}.meter-fill.warn{background:var(--warn)}.meter-fill.bad{background:var(--danger)}.positive{color:var(--accent)}.warn{color:var(--warn)}.upgrade-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.upgrade-row{border:1px solid var(--border);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:4px}.buy-row{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-end;justify-content:flex-end}.upgrade-offer{display:flex;flex-direction:column;gap:4px}.upgrade-offer.paired{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.upgrade-offer.paired>p{margin-right:auto}.upgrade-offer.paired>.buy-row{align-self:center}.catalogue-stats em{font-style:normal;opacity:.65}.tier{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}.badge{display:inline-block;padding:1px 6px;border-radius:3px;background:#ffd47929;color:var(--warn);font-size:.72rem}.tag{display:inline-block;min-width:62px;padding:1px 6px;border-radius:3px;font-size:.72rem}.tag-surplus{background:var(--supply-soft);color:var(--supply)}.tag-shortage{background:var(--demand-soft);color:var(--demand)}.owner-mine{color:var(--owner-mine)}.owner-other{color:var(--owner-other)}.tag-own{background:var(--owner-mine-soft);color:var(--owner-mine)}.tag-other{background:var(--owner-other-soft);color:var(--owner-other)}.tag-staff{background:var(--warn-soft);color:var(--warn);font-weight:600}.tag-staff-admin{outline:1px solid var(--warn)}.badge-row{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 0}.tag-badge{min-width:0;background:var(--accent-soft);color:var(--accent);font-weight:600}.goal-dialog-badge{display:flex;align-items:center;justify-content:center;gap:6px;margin:0;color:var(--accent);font-weight:600}.badge-count{opacity:.75;margin-left:3px}.staff-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.staff-row{padding:10px;border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:6px}.staff-row-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;justify-content:space-between}.staff-excerpt{margin:0;padding:6px 10px;border-left:3px solid var(--border);background:var(--bg-raised);overflow-wrap:anywhere;white-space:pre-wrap;max-block-size:12rem;overflow-y:auto}.staff-reason{margin:0}.staff-note{margin:0;font-style:italic;color:var(--text-muted);overflow-wrap:anywhere}.staff-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.staff-actions label{display:flex;flex-direction:column;gap:4px}.staff-metrics{display:grid;grid-template-columns:1fr minmax(0,auto);gap:4px 12px;margin:8px 0}.staff-metrics dt{color:var(--text-muted)}.staff-metrics dd{margin:0;text-align:end;font-variant-numeric:tabular-nums}.staff-deciles{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:3px}.staff-deciles li{display:flex;align-items:center;gap:8px}.staff-decile-bar{display:block;block-size:10px;min-inline-size:2px;background:var(--accent);border-radius:2px}.custom-name{margin-left:6px;color:var(--warn);font-weight:400}.profile-name{margin:0;font-size:1.05rem;font-weight:600}.avatar{border-radius:10px;background:var(--bg-raised)}.avatar-sm{border-radius:5px;vertical-align:middle}.credits{font-variant-numeric:tabular-nums;color:var(--warn);white-space:nowrap}.nav-rail-item.credits .nav-rail-short,.nav-rail-item.credits .nav-rail-tiny{font-size:.9rem;font-weight:600}.credits.credits-negative{color:var(--danger);font-weight:600}.nav-rail-item.credits{color:var(--warn)}.nav-rail-item.credits.credits-negative{color:var(--danger)}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-grid>div{display:flex;flex-direction:column}.stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.stat-value{font-size:.95rem}.load-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 8px}.load-row-note{grid-column:1}.load-row-stepper{grid-column:2;grid-row:1 / span 2;display:flex;align-items:center;gap:4px}.load-row-stepper button{min-width:44px;min-height:44px;padding:0;font-size:1.2rem;line-height:1}.load-row-stepper input{width:3.5rem;text-align:center;font-variant-numeric:tabular-nums}.load-row-stepper input{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.load-row-stepper input::-webkit-outer-spin-button,.load-row-stepper input::-webkit-inner-spin-button{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin:0}.quote-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-variant-numeric:tabular-nums}.quote-list li{display:flex;justify-content:space-between;gap:10px}.warship-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.warship-row{display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid var(--border);border-radius:var(--radius)}.warship-state{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.warship-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.warship-rules{display:flex;flex-direction:column;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.warship-rule-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.warship-rule-row input[type=number]{max-width:9ch;text-align:right}.warship-fact{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.warship-record,.warship-tours{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.warship-tours{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.warship-order-reason{margin:0 0 6px}.warship-order-bar{margin-top:auto;padding-top:10px;position:sticky;bottom:calc(-14px - var(--safe-b));margin-bottom:calc(-14px - var(--safe-b));padding-bottom:calc(14px + var(--safe-b));background:var(--bg-panel);border-top:1px solid var(--border);box-shadow:0 -10px 16px -2px var(--bg-panel)}.warship-orders{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:6px}.warship-share-field{display:flex;flex-direction:column;gap:4px}.warship-share-field input[type=range],.warship-arm{width:100%;min-height:44px}.warship-orders button{white-space:normal;min-height:44px}.escort-band{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.escort-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.escort-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.escort-who{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px;min-width:0}.escort-terms{display:flex;align-items:center;gap:8px;margin-left:auto}.fleet-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.fleet-row{padding:8px;border:1px solid var(--border);border-radius:var(--radius)}.route-ordinal{min-width:1.5em;font-variant-numeric:tabular-nums}.route-list .fleet-row-head>.link.strong{flex:1;text-align:start}.route-add>.link{grid-column:1 / -1;justify-self:start}.route-cargo{display:flex;flex-direction:column;gap:8px}.route-min{display:flex;align-items:center;justify-content:space-between;gap:8px}.fleet-row-head,.fleet-row-foot{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.fleet-row-foot{margin-top:3px}.fleet-actions{display:inline-flex;gap:10px}.fleet-captain{display:inline-flex;align-items:center;gap:4px;flex:none;padding:1px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.8rem}.fleet-captain.error{background:var(--danger-soft);color:var(--danger)}.fleet-captain.warn{background:var(--warn-soft);color:var(--warn)}.tab-row{flex-wrap:nowrap;gap:0;border-bottom:1px solid var(--border)}.tab-row>button{flex:1 1 auto;min-width:0;background:none;border:none;border-radius:0;border-bottom:2px solid transparent;padding:4px;line-height:20px;font-size:.8rem;text-align:center;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.tab-row>button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tab-row-sub>button{font-size:.75rem}.tab-row-sub>button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent);font-weight:inherit}.nav-rail{display:flex;align-items:center;min-width:0;gap:4px;margin-left:auto;flex:0 0 auto}.nav-rail-item{display:flex;flex:none;flex-direction:row;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:2px 8px;background:none;border:1px solid transparent;line-height:1.1;color:var(--text-muted);position:relative}.nav-rail-icon{flex:none}.nav-rail-short,.nav-rail-tiny,.nav-rail-unit{display:none}.nav-rail-full{max-width:20ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-rail-badge{position:absolute;top:1px;right:1px;min-width:15px;padding:0 3px;border-radius:999px;background:var(--accent);color:#07120d;font-size:.6rem;font-weight:600;line-height:15px;text-align:center}.nav-rail-marker{position:absolute;top:3px;right:3px;width:8px;height:8px;border-radius:50%;background:var(--warn)}.fleet-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:6px}.picking-banner{position:absolute;top:12px;left:max(12px,var(--safe-l));right:max(12px,var(--safe-r));margin-inline:auto;width:fit-content;z-index:var(--z-toasts);display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:999px;background:var(--accent-dim);border:1px solid var(--accent);color:#07120d;font-size:.85rem;box-shadow:0 4px 16px #0006;max-width:min(calc(100vw - 24px),32rem);flex-wrap:wrap;justify-content:center;text-align:center}.workspace.panel-open .picking-banner{right:calc(var(--panel-width) + max(12px,var(--safe-r)))}.picking-banner .link{color:#07120d;font-weight:600}.destination-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;max-height:210px;overflow-y:auto}.dispatch-controls,.warship-targets-controls{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px;align-items:center}.warship-targets-find{position:relative;min-width:0}.dispatch-filters,.dispatch-order{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:5px;min-width:0}.dispatch-order.routing-toggle{justify-content:flex-start}.dispatch-controls button,.dispatch-order button,.warship-targets-controls button{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:44px;border-radius:var(--radius);padding:5px 3px}.dispatch-controls>button{min-width:6.5rem;justify-content:flex-start}.dispatch-controls .name-picker{min-width:0}.dispatch-controls .name-picker input,.warship-targets-controls .search-with-icon input{width:100%;padding:4px 6px 4px 20px;font-size:.85rem}.dispatch-controls .search-icon,.warship-targets-controls .search-icon{left:4px;right:auto}.dispatch-destinations>.dispatch-controls+*{margin-top:4px}.dispatch-step-head{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;padding-right:6px}.dispatch-step-head .destination-beat,.dispatch-to .destination-beat{max-width:100%}.dispatch-to{display:flex;flex-direction:column;gap:2px;margin-bottom:0}.dispatch-to-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;min-width:0}.destination-beat-where{display:block;text-align:right}.panel section.dispatch-cargo{border-top-color:var(--border-bright)}.panel section.dispatch-destinations{border-top:none;padding-top:0}.tab-head{margin-bottom:-12px;align-items:center;gap:0}.tab-head .tab-row{flex:1;min-width:0;margin-bottom:0}.tab-head>button{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px}.boost-head{display:flex;align-items:baseline;gap:10px}.boost-head h3{flex:none;margin:0}.boost-field{flex:1;min-width:0}.scouting-form{display:flex;flex-direction:column;gap:7px}.scouting-form .field{flex-direction:row;align-items:center;gap:7px}.scouting-form .field>span{flex:0 0 auto;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scouting-form .field>:not(span){flex:1 1 0;min-width:0}.scouting-range-value{flex:none;white-space:nowrap;font-variant-numeric:tabular-nums}.scouting-buy{width:100%;margin-top:7px}.scouting-fresh{margin:4px 0;padding-left:10px;border-left:3px solid var(--accent)}.scouting-leads{list-style:none;margin:0;padding:0}.scouting-lead{display:flex;align-items:baseline;gap:7px;padding:3px 0;min-width:0}.scouting-lead-name{flex:1 1 auto;min-width:0;text-align:left;font-family:ui-monospace,monospace}.scouting-lead-distance,.scouting-lead-cargo{flex:none}.scouting-cargo-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px;min-width:0}.scouting-floor input{width:7ch}.scouting-radius{width:100%;min-height:44px}button.link.boost-explain{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--border-bright);border-radius:50%;font-weight:600;line-height:1;text-decoration:none}@media(pointer:coarse){button.link.boost-explain{width:44px;height:44px}button.link.boost-explain:after{min-width:44px;min-height:44px}}.dispatch-step-back{align-self:flex-start;text-align:left;padding-left:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-head:has(.dispatch-step-back){gap:0}.destination-list.solo{max-height:none;overflow-y:visible}.destination{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;background:none;border:1px solid transparent;padding:5px 7px}.destination.selected{border-color:var(--accent);background:var(--bg-raised)}.destination-name{display:flex;align-items:center;gap:7px;width:100%;font-family:ui-monospace,monospace}.destination-beat{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-family:system-ui,sans-serif}.destination-marks{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:5px}.destination-planet{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.destination-cargo{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:2px}.leg-tag{color:var(--text-muted);font-size:.85em}.asset-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}.asset{display:flex;flex-direction:column;gap:5px;padding:8px;border:1px solid var(--border);border-radius:var(--radius)}.asset-more>summary{cursor:pointer;padding:.15rem 0;list-style-position:inside;color:var(--accent);text-decoration:underline}.asset-head,.asset-more>summary,.asset-meta{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.asset-more>summary::-webkit-details-marker{display:none}.notice{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:var(--z-toasts);display:flex;align-items:center;gap:12px;padding:8px 14px;border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--accent);font-size:.85rem}.catalogue-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.catalogue-divider{display:flex;align-items:center;gap:8px;margin:2px 0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--text-muted)}.catalogue-divider:before,.catalogue-divider:after{content:"";flex:1;height:1px;background:var(--border)}.catalogue-row{border:1px solid var(--border);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:6px}.hull-hero{display:flex;align-items:flex-start;gap:12px;container:hull-hero / inline-size;--hull-title-row-gap: 4px;--hull-main-gap: 3px}.catalogue-row .hull-hero .portrait-svg,.panel-hero.hull-hero-size .portrait-svg{--hull-picture: 96px;--hull-picture-narrow: 80px;width:var(--hull-picture);height:var(--hull-picture)}.fleet-row .hull-hero,.warship-row .hull-hero{--hull-row-height: calc( var(--line-height) * 1em + var(--hull-title-row-gap) + 2 * var(--line-height) * .8rem + 2px + var(--hull-main-gap) + var(--line-height) * .8rem )}.fleet-row .hull-hero .portrait-svg,.warship-row .hull-hero .portrait-svg{width:var(--hull-row-height);height:var(--hull-row-height)}.hull-hero-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.hull-hero-split{flex-direction:row;align-items:flex-start;gap:10px}.hull-hero-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--hull-main-gap, 3px)}.fleet-row-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--hull-title-row-gap, 4px) 8px;min-width:0}.fleet-row-title>button{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-row-title>.fleet-captain{flex:0 1 auto;min-width:0}.fleet-captain-mark{display:inline-flex;align-items:center;flex:none;color:var(--accent)}.fleet-captain-mark.error{color:var(--danger)}.fleet-captain-mark.warn{color:var(--warn)}.hull-hero-aside{flex:0 1 auto;max-width:50%;display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.hull-hero-body .fleet-row-head{flex-wrap:wrap}.hull-hero-body p:last-child{margin:0}@container hull-hero (max-width: 340px){.catalogue-row .hull-hero .portrait-svg{width:var(--hull-picture-narrow);height:var(--hull-picture-narrow)}}@container panel-hero (max-width: 340px){.panel-hero.hull-hero-size .portrait-svg{width:var(--hull-picture-narrow);height:var(--hull-picture-narrow)}}.catalogue-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px}.catalogue-throughput{color:var(--accent);flex:1 1 auto;min-width:0}.catalogue-buy{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 10px}.rename-form,.repaint-form{display:flex;flex-direction:column;gap:6px}.panel-anchor{scroll-margin-top:3.5rem}.stake-form{display:flex;flex-direction:column;gap:6px;margin-top:8px}.field{display:flex;flex-direction:column;gap:4px;color:var(--text-muted)}.field select,.field input{color:var(--text)}button.link.danger{color:var(--danger)}.panel-notice{color:var(--accent)}.cargo-icon-row{display:inline-flex;align-items:center;gap:4px}.icon-supply{color:var(--supply)}.icon-demand{color:var(--demand)}.icon-cargo{color:var(--text)}.owner-dot{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;vertical-align:middle;flex:none}.owner-dot.mine{background:var(--owner-mine)}.owner-dot.other{background:var(--owner-other)}.port-list>li.port-row{display:flex;flex-direction:column;gap:3px}.port-row-head,.port-row-foot{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.port-hero{display:flex;align-items:flex-start;gap:10px;--port-hero-size: max( 44px, calc(var(--line-height) * 1em + 3px + var(--line-height) * .8rem + 2px) )}.port-hero .portrait-svg{width:var(--port-hero-size);height:var(--port-hero-size)}.port-hero-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.share-formula summary{cursor:pointer;color:var(--text-muted)}.share-formula p{margin:6px 0 0}.destination.out-of-range{opacity:.45;cursor:not-allowed}.pnl-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:2px 0}.pnl-row>span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.pnl-bucket{align-items:center}.pnl-bucket h3{margin:0}.pnl-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid var(--border);margin-top:4px;padding-top:6px;font-weight:600}.pnl-total>span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.pnl-headline .pnl-total{border-top:none;font-size:1.05rem}.pnl-list{list-style:none;margin:6px 0 0;padding:0}.pnl-detail>summary{list-style:none;cursor:pointer;min-height:44px;align-items:center}.pnl-detail>summary::-webkit-details-marker{display:none}@media(hover:hover){.pnl-detail>summary:hover{color:var(--accent)}}.pnl-entries{list-style:none;margin:2px 0 8px;padding:0 0 0 12px;border-left:1px solid var(--border)}.pnl-note{display:block}.money-in{color:var(--accent)}.money-out{color:var(--danger)}.chip{padding:3px 10px;border-radius:999px;font-size:.85rem}.chip-active{background:var(--accent-dim);border-color:var(--accent);color:#07120d;font-weight:600}.flight-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.flight-log-row{border-bottom:1px solid var(--border);padding-bottom:8px}.flight-log-head{width:100%;display:flex;justify-content:space-between;align-items:baseline;gap:10px;background:none;border:none;padding:0;text-align:left;font-variant-numeric:tabular-nums}.flight-log-route{display:inline-flex;align-items:center;flex-wrap:wrap;min-width:0;gap:5px}.flight-log-head>:last-child{flex:none}.flight-log-sub{display:flex;justify-content:space-between;gap:10px}.flight-log-detail{margin-top:8px;padding:8px;border-radius:var(--radius);background:var(--bg-raised)}.cargo-icon-list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:4px 12px}.cargo-icon-list li{display:inline-flex;align-items:center;gap:4px}.notice.arrival{border-color:var(--accent);gap:14px}.map-legend{position:absolute;left:12px;bottom:40px;z-index:var(--z-map-overlay);font-size:.8rem}.workspace:has(.tutorial-guide) .map-legend{display:none}.map-legend ul{list-style:none;margin:6px 0 0;padding:8px 10px;border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--border);display:flex;flex-direction:column;gap:5px}.map-legend li{display:flex;align-items:center;gap:8px;white-space:nowrap}.map-legend li.legend-group{margin-top:5px;padding-top:6px;border-top:1px solid var(--border)}.legend-dot{width:10px;height:10px;border-radius:50%;border:1.5px solid;flex:none}.legend-dot-large{width:15px;height:15px}.legend-dot-ring{border-style:dashed;width:13px;height:13px}.growth-people{display:flex;flex-direction:column;gap:2px;margin:0 0 6px}.growth-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.growth-list li{display:flex;flex-direction:column;gap:1px}.growth-hint{margin:0 0 4px}.growth-starved{color:var(--warn);font-size:.92em}.growth-shrinking{color:var(--danger);font-size:.92em}.growth-next{margin:8px 0 0;color:var(--accent)}.port-choice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.port-choice-button{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:none;border:1px solid var(--border);border-radius:var(--radius);padding:8px;color:inherit;cursor:pointer}.port-choice.selected .port-choice-button{border-color:var(--accent);background:#ffffff0a}.panel.landing .lede{font-size:1.05rem;line-height:1.5}.panel.landing .cta{border-top:1px solid var(--border-bright);display:flex;flex-direction:column;gap:8px}.panel.landing .cta .primary{padding:10px 14px;font-size:1rem}.tutorial-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.tutorial-steps li{padding:8px 10px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-raised)}.tutorial-step-go{display:flex;flex-direction:column;align-items:stretch;gap:3px;width:100%;text-align:left;background:none;border:none;border-radius:0;padding:0;color:inherit;font:inherit;cursor:pointer;white-space:normal}.tutorial-step-title{display:flex;align-items:baseline;gap:6px;width:100%;font-size:.95rem;font-weight:600}.tutorial-step-how{color:var(--text)}.tutorial-step-chevron{margin-left:auto;opacity:.5}.tutorial-steps li.done{opacity:.55}.tutorial-steps li.done .tutorial-step-title{color:var(--accent)}.tutorial-steps li.next{border-color:var(--accent);background:var(--owner-mine-soft);scroll-margin-top:72px}.panel.tutorial{gap:10px}.tutorial-hints .hint{border-left:3px solid var(--supply);padding-left:10px;margin-bottom:10px}.tutorial-hints .hint h4{margin:0 0 2px;font-size:.9rem}.tutorial-complete{border-top:1px solid var(--border-bright);scroll-margin-top:72px}.guest-badge{border-color:var(--supply);color:var(--supply)}.notice.maintenance{border-color:var(--warn)}.notice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.notice-list li{padding:6px 8px;border-radius:var(--radius);border-left:3px solid var(--border-bright);background:var(--bg-raised);font-size:.85rem}.notice-list li.warning{border-left-color:var(--warn)}.notice-list li.critical{border-left-color:var(--danger)}.todo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.todo-list li{padding:8px;border-radius:var(--radius);border-left:3px solid var(--border-bright);background:var(--bg-raised);font-size:.85rem;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px}.todo-list li.warning{border-left-color:var(--warn)}.todo-list li.critical{border-left-color:var(--danger)}.todo-row-text{flex:1 1 12rem;line-height:1.45}.digest-reasons{list-style:none;margin:0;padding:0;font-size:.85rem}.digest-reasons li{display:flex;justify-content:space-between;gap:12px;padding:3px 0}.digest-reasons .positive{color:var(--accent)}.digest-reasons .negative{color:var(--danger)}.digest-pitch{margin-top:4px;padding-left:10px;border-left:2px solid var(--accent)}.digest-pitch h3{margin-bottom:2px}.static-page{max-width:46rem;margin:0 auto;padding:24px 18px 64px}.static-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--border)}.static-head .brand{font-weight:600;font-size:1.1rem;text-decoration:none}.static-head nav{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:baseline}.static-page main section{border-top:1px solid var(--border);padding-top:14px;margin-top:18px}.static-page h1{margin-top:18px}.static-page .lede{font-size:1.1rem;color:var(--text-muted)}.static-page p{line-height:1.6}.static-page a.primary{display:inline-block;padding:8px 14px;border-radius:var(--radius);background:var(--accent-dim);color:var(--text);text-decoration:none}.static-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:48px;padding-top:18px;border-top:1px solid var(--border)}.age-mark{flex:none;padding:2px 8px;border:1px solid var(--border);border-radius:6px;font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-muted)}.static-page main.legal{max-width:68ch;line-height:1.65}.static-page main.legal h2{margin-top:34px;padding-top:14px;border-top:1px solid var(--border);font-size:1.15rem}.static-page main.legal h3{margin-top:22px;font-size:1rem;color:var(--text-muted)}.static-page main.legal li{margin-bottom:8px;line-height:1.6}.static-page main.legal blockquote{margin:0 0 22px;padding:12px 16px;border-left:3px solid var(--warn);background:var(--bg-raised);border-radius:0 var(--radius) var(--radius) 0}.static-page main.legal blockquote p{margin:0 0 8px}.static-page main.legal blockquote p:last-child{margin:0}.table-scroll{overflow-x:auto;margin:0 0 18px;min-width:0;max-width:100%}.table-scroll table{border-collapse:collapse;width:100%;font-size:.92rem}.table-scroll th,.table-scroll td{text-align:left;vertical-align:top;padding:8px 12px;border-bottom:1px solid var(--border)}.table-scroll th{color:var(--text-muted);font-weight:600;white-space:nowrap}.legal-line{margin-top:10px}.legal-line a{white-space:nowrap}.cargo-list{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:4px 16px;font-size:.9rem}.cargo-columns .cargo-list{grid-template-columns:1fr}.cargo-glyph{vertical-align:-.15em;margin-right:7px;color:var(--accent)}.tutorial-guide{position:absolute;left:16px;bottom:16px;z-index:var(--z-guide);width:min(360px,calc(100vw - 32px));padding:12px 14px;border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--accent);box-shadow:0 8px 28px #00000073;display:flex;flex-direction:column;gap:6px}.tutorial-guide-head{display:flex;align-items:center;gap:16px;font-size:.75rem}.tutorial-guide-count{color:var(--accent);font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-right:auto}.tutorial-guide h3{margin:0;font-size:1.05rem;line-height:1.25}.tutorial-guide-how{margin:0;font-size:.92rem;line-height:1.45}.tutorial-guide-how strong{color:var(--accent);font-weight:600}.tutorial-guide .primary{margin-top:4px;padding:9px 12px;font-size:.95rem}.tutorial-celebration,.purchase-thanks,.signin-welcome,.seat-welcome,.goal-dialog,.friday-promo{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-celebration);display:grid;place-items:safe center;overflow-y:auto;overscroll-behavior:contain;padding:12px 0;background:#04070eb8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.tutorial-celebration-card,.purchase-thanks-card,.signin-welcome-card,.seat-welcome-card,.goal-dialog-card,.friday-promo-card{width:min(440px,calc(100vw - 32px));padding:24px;border-radius:12px;background:var(--bg-panel);border:1px solid var(--accent);box-shadow:0 18px 60px #0009;display:flex;flex-direction:column;gap:10px;text-align:center}.tutorial-celebration-card h2,.purchase-thanks-card h2,.signin-welcome-card h2,.seat-welcome-card h2,.goal-dialog-card h2,.friday-promo-card h2{margin:0;font-size:1.35rem}.tutorial-celebration-card p,.purchase-thanks-card p,.signin-welcome-card p,.seat-welcome-card p,.goal-dialog-card p,.friday-promo-card p{margin:0;line-height:1.5}.friday-promo-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:6px}.friday-promo-actions button{min-height:44px;flex:1 1 auto}.tutorial-celebration-reward,.purchase-thanks-credits{font-size:1.6rem;font-weight:700;color:var(--accent)}.tutorial-celebration-next{margin-top:6px;padding-top:12px;border-top:1px solid var(--border-bright);font-weight:600}.tutorial-celebration-card .primary,.purchase-thanks-card .primary,.signin-welcome-card .primary,.seat-welcome-card .primary,.goal-dialog-card .primary,.friday-promo-card .primary{padding:10px 14px;font-size:1rem}.profile-links{display:flex;gap:16px;font-size:.85rem}.profile-signout{border-top:1px solid var(--border);padding-top:12px}.toast-stack{display:flex;flex-direction:column;gap:8px;width:100%;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--border-bright);border-left-width:4px;box-shadow:0 6px 20px #0006;font-size:.9rem;pointer-events:auto}.toast-text{flex:1;line-height:1.35}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:0 2px}.toast-good{border-left-color:var(--accent)}.toast-info{border-left-color:var(--selected)}.toast-warning{border-left-color:var(--warn)}.toast-critical{border-left-color:var(--danger)}.panel.reading{width:min(620px,100%)}.panel.reading h3{margin:14px 0 4px}.panel.reading p{line-height:1.6}.static-page .lede,.panel .lede{font-size:1.05rem;color:var(--text-muted)}.arrival-card{width:100%;padding:12px 14px;border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--accent);box-shadow:0 10px 32px #00000080;display:flex;flex-direction:column;gap:8px;pointer-events:auto}.arrival-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.arrival-card-net{font-size:1.3rem;color:var(--accent)}.arrival-card-net.loss{color:var(--danger)}.arrival-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.map-overlay-top{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:var(--z-toasts);width:min(460px,calc(100vw - 32px));display:flex;flex-direction:column;gap:8px;pointer-events:none}.workspace.panel-open .map-overlay-top{left:calc(50% - var(--panel-width) / 2)}.explain>summary{cursor:pointer;list-style-position:outside}.explain-body{padding:4px 0 2px 14px}.explain-para{margin:0 0 4px}.panel>.tab-head+section,.panel>.tab-head+.panel-summary+section{border-top:none;padding-top:0}.chat-pane{display:flex;flex-direction:column;gap:10px;flex:1 1 auto;min-height:0}.chat-log{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-height:8rem;overflow-y:auto;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-sunken, rgba(0, 0, 0, .12))}.chat-older{align-self:center;margin:0 0 4px}.chat-day{display:flex;align-items:center;gap:8px;width:100%;margin:10px 0 6px}.chat-day:before,.chat-day:after{content:"";flex:1 1 auto;border-top:1px solid var(--border)}.chat-day>span{color:var(--text-muted);font-size:.72rem;flex:0 0 auto}.chat-line{padding:2px 4px;border-radius:3px;line-height:1.4}.chat-line>*{margin-right:5px}.chat-line-own{background:var(--owner-mine-soft)}.chat-line-own .chat-author{color:var(--owner-mine)}.chat-author{font-weight:600;color:var(--owner-other)}.chat-author:after{content:":";color:var(--text-muted)}.chat-time{font-size:.68rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.chat-body{overflow-wrap:anywhere;white-space:pre-wrap}.chat-delete{color:var(--text-muted);text-decoration:none;font-size:.8rem;line-height:1;margin-left:4px}.chat-compose{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:end}.chat-compose textarea{width:100%;min-width:0;line-height:1.4;max-height:5rem;overflow-y:auto;resize:none}.chat-unread-dot{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:currentColor;vertical-align:.1em}.tab-row>button .chat-unread-dot{margin-right:0;margin-left:6px}.chat-preview{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-highlight{border-left:3px solid var(--owner-mine)}.permit-ask{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-raised)}.field-inline{display:flex;align-items:center;gap:6px}.field-inline input[type=checkbox]{width:18px;height:18px;margin:0}.destination-denied{opacity:.55;cursor:not-allowed}.destination-decayed{padding:0 0 .35rem .6rem;margin:-.15rem 0 .2rem;line-height:1.35}.destination-decayed .link{white-space:nowrap}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-dialog);display:grid;place-items:center;background:#04070eb8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:16px}.dialog-card{width:min(420px,100%);padding:20px;border-radius:12px;background:var(--bg-panel);border:1px solid var(--border-bright);box-shadow:0 18px 60px #0009;display:flex;flex-direction:column;gap:10px}.dialog-card h2{margin:0;font-size:1.05rem;line-height:1.4}.dialog-card p{margin:0;line-height:1.5}.dialog-card.dialog-grave{border-color:var(--danger);background:linear-gradient(#ff5a5a1a,#ff5a5a1a),var(--bg-panel)}.dialog-card.dialog-grave h2{color:var(--danger)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.name-picker{position:relative}.option-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left}.name-options{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:var(--z-topbar);margin:0;padding:4px;list-style:none;background:var(--bg-panel);border:1px solid var(--border-bright);border-radius:var(--radius);max-height:240px;overflow-y:auto}.name-option{display:flex;align-items:baseline;justify-content:space-between;gap:8px;width:100%;background:none;border:none;text-align:left}.name-option-active{background:var(--bg-raised)}.name-picked{display:flex;align-items:baseline;gap:8px;padding:6px 8px;border:1px solid var(--border-bright);border-radius:var(--radius);background:var(--bg-raised)}.name-picked>span:first-child{flex:1 1 auto}.access-default{border-left:2px solid var(--border-bright)}@media(hover:hover){.portrait-button:hover{filter:brightness(1.12)}button:hover:not(:disabled){border-color:var(--accent-dim)}button.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 18%,transparent)}.search-results li button:hover,.destination:hover{background:var(--bg-raised)}button.credits:hover{color:var(--accent)}.port-choice-button:hover{border-color:var(--accent)}.tutorial-step-go:hover .tutorial-step-chevron{opacity:1;color:var(--accent)}.explain>summary:hover{color:var(--text)}.name-option:hover{background:var(--bg-raised)}.chat-delete:hover{color:var(--danger)}}@media(pointer:coarse){input,select,textarea,.form label input,.form label select,.load-row input,.chat-compose textarea{font-size:max(16px,1rem)}button:not(.link),select,summary,[role=button]:not(.link){min-height:44px}.panel-section-head,button.flight-log-head,.asset-more>summary{min-height:0}.dispatch-controls button,.dispatch-controls input:not([type=range]):not([type=checkbox]):not([type=radio]),.warship-targets-controls button,.warship-targets-controls input:not([type=range]):not([type=checkbox]):not([type=radio]){min-height:0}.dispatch-controls .name-picker input,.warship-targets-controls .search-with-icon input{font-size:max(16px,1rem)}input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea{min-height:44px}input[type=checkbox],input[type=radio],label.field-inline input[type=checkbox],label.checkbox-row input[type=checkbox],label.checkbox-row input[type=radio],.consent-boxes label input[type=checkbox]{width:24px;height:24px}.map-controls button{width:44px;height:44px}.panel-head button:not(.link),.tab-head>button{min-width:44px;min-height:44px}button.link,a.link,.static-head nav a{position:relative}button.link:after,a.link:after,.static-head nav a:after{content:"";position:absolute;top:-14px;right:-8px;bottom:-14px;left:-8px;min-width:24px;min-height:24px}.static-head .brand,.static-page a.primary{display:inline-flex;align-items:center;min-height:44px}.switch{flex-direction:column;align-items:flex-start;gap:16px}.switch button.link:before,.switch a.link:before{content:none}.switch button.link:after,.switch a.link:after{top:-6px;right:-6px;bottom:-6px;left:-6px}.fleet-actions,.profile-links,.panel-actions,.tutorial-guide-head,.static-head nav{gap:24px;row-gap:12px}.tab-row{gap:0;row-gap:0}.static-head nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}}.search-results,.name-options,.chat-log,.destination-list,.tutorial-celebration-card,.purchase-thanks-card,.signin-welcome-card,.seat-welcome-card,.goal-dialog-card,.friday-promo-card,.dialog-card{overscroll-behavior:contain}.pwa-setup{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:10px}.pwa-setup h3,.pwa-setup h4{margin:0}.pwa-block{display:flex;flex-direction:column;gap:6px}.pwa-setup ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.tutorial-celebration-card .pwa-setup .panel-actions,.signin-welcome-card .pwa-setup .panel-actions{justify-content:center}.tutorial-celebration-card .pwa-setup ol,.signin-welcome-card .pwa-setup ol{text-align:left}.pwa-setup-highlight{border-left:3px solid var(--accent);padding-left:12px}.offline-banner{position:absolute;top:calc(8px + var(--safe-t));left:50%;transform:translate(-50%);z-index:var(--z-toasts);margin:0;max-width:min(30rem,calc(100% - 24px));padding:8px 14px;border:1px solid var(--warn);border-radius:var(--radius);background:var(--bg-panel);color:var(--warn);font-size:.85rem;text-align:center}.consent-catchup{display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--border);border-radius:8px;padding:.85rem;margin:.6rem 0}.consent-catchup h3{margin:0;font-size:.95rem}.consent-catchup button{align-self:start}label.checkbox-row{display:grid;grid-template-columns:auto 1fr;gap:.55rem;align-items:start;font-size:.85rem;line-height:1.4;color:var(--text);cursor:pointer;margin:.2rem 0 0}.checkbox-row input[type=checkbox],.checkbox-row input[type=radio]{width:18px;height:18px;margin:0}.checkbox-row small{display:block;margin-top:.15rem}.radio-inline{display:flex;flex-wrap:wrap;gap:.35rem 1rem}.radio-inline label.checkbox-row{margin:0}.density-choice,.sound-choice,.arrival-choice{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.density-choice>legend,.sound-choice>legend,.arrival-choice>legend{float:left;width:100%;padding:0;margin-bottom:.2rem;color:var(--text-muted, inherit)}.consent-boxes{display:flex;flex-direction:column;gap:.45rem;border:0;padding:0;margin:.4rem 0 0}.consent-boxes label{display:grid;grid-template-columns:auto 1fr;gap:.55rem;align-items:start;font-size:.85rem;line-height:1.4;cursor:pointer}.consent-boxes input[type=checkbox]{width:18px;height:18px;margin-top:.15rem;flex:none}@media(max-width:860px){:root{--panel-width: 100%}.hide-narrow{display:none}.show-narrow{display:inline-flex}.topbar{gap:8px;padding-inline:max(8px,var(--safe-l)) max(8px,var(--safe-r))}.nav-rail{flex:1 1 auto;justify-content:space-between;gap:0;margin-left:0}.nav-rail-item{flex:1 1 0;flex-direction:column;gap:1px;padding:2px;font-size:.65rem}.nav-rail-item.credits{flex-grow:1.7;flex-basis:0}.nav-rail-short{min-width:0}.nav-rail-icon-only{flex-grow:0}.nav-rail-short{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-rail-unit{display:inline;font-size:.7rem;font-weight:600;color:var(--text-muted)}.nav-rail-item.credits{flex-direction:row;align-items:center;justify-content:center;gap:3px}.nav-rail-full{display:none}.topnav{flex:0 0 auto}.brand{flex:0 1 auto;min-width:0}.brand-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search{flex:1 1 110px;min-width:110px}.brand{display:none}.app{grid-template-rows:calc(var(--topbar-height) + var(--safe-t)) 1fr 0}.statusbar{display:none}.panel{top:auto;height:min(var(--sheet-height),calc(100% - var(--sheet-min-map)));width:100%;border-left:none;border-top:1px solid var(--border-bright);border-radius:12px 12px 0 0;padding-inline:max(14px,var(--safe-l)) max(14px,var(--safe-r));padding-bottom:calc(14px + var(--safe-b))}.workspace.aiming .panel,.workspace.aiming .map-controls{display:none}.workspace.aiming .map-legend{top:calc(60px + var(--safe-t))}.panel .panel-head:has(h2),.panel>.panel-head-sticky{position:sticky;top:-14px;z-index:1;margin-top:-14px;margin-left:-14px;margin-right:-14px;padding:0 14px;background:var(--bg-panel)}.map-controls{top:calc(8px + var(--safe-t));bottom:auto;right:max(8px,var(--safe-r))}.map-controls button:not(.show-narrow){display:none}.map-controls button.show-narrow{background:none;border:0;align-items:center;justify-content:center}.workspace:has(.map-search) .map-controls{display:none}.tutorial-guide{left:max(8px,var(--safe-l));right:calc(64px + var(--safe-r));bottom:calc(8px + var(--safe-b));width:auto}.workspace:has(.panel) .tutorial-guide{top:8px;bottom:auto}.workspace:has(.panel) .tutorial-guide>:not(.tutorial-guide-head):not(h3){display:none}.workspace:has(.panel) .tutorial-guide h3{font-size:.9rem;margin:0}.map-legend{top:8px;bottom:auto;left:max(8px,var(--safe-l))}.workspace:has(.tutorial-guide) .map-legend{display:block}.workspace:has(.panel) .map-legend{display:none}.panel.landing .cta{position:sticky;bottom:calc(-14px - var(--safe-b));margin-bottom:calc(-14px - var(--safe-b));padding-bottom:calc(14px + var(--safe-b));padding-top:10px;background:var(--bg-panel);border-top:1px solid var(--border);box-shadow:0 -10px 16px -2px var(--bg-panel)}.chat-pane{flex:0 1 auto}.chat-log{overscroll-behavior:auto}.chat-compose{position:sticky;bottom:calc(-14px - var(--safe-b));margin-bottom:calc(-14px - var(--safe-b));padding-bottom:calc(14px + var(--safe-b));padding-top:10px;background:var(--bg-panel);border-top:1px solid var(--border);box-shadow:0 -10px 16px -2px var(--bg-panel)}.workspace.panel-open .map-overlay-top{left:50%}.workspace.panel-open .picking-banner{right:max(12px,var(--safe-r))}.workspace:has(.panel):has(.tutorial-guide) .map-overlay-top,.workspace:has(.panel):has(.tutorial-guide) .offline-banner{top:calc(84px + var(--safe-t))}@media(orientation:landscape){.app{grid-template-columns:calc(var(--rail-width) + var(--safe-l)) 1fr;grid-template-rows:1fr}.topbar{flex-direction:column;align-items:stretch;gap:6px;padding-top:calc(4px + var(--safe-t));padding-bottom:calc(4px + var(--safe-b));padding-inline:max(4px,var(--safe-l)) 4px;border-bottom:none;border-right:1px solid var(--border);overflow:hidden}.nav-rail{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none}.nav-rail::-webkit-scrollbar{display:none}.nav-rail-item{flex:none;max-width:100%}.nav-rail-short{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15}.nav-rail-item:has(.nav-rail-tiny) .nav-rail-short{display:none}.nav-rail-item.credits{flex-direction:column;align-items:center;justify-content:center;gap:0}.nav-rail-unit{display:block;font-size:.6rem;font-weight:600;line-height:1.1;color:var(--text-muted)}.nav-rail-tiny{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topnav .primary{padding:6px 1px;font-size:.62rem;white-space:nowrap;line-height:1.15}.topnav{flex-direction:column;align-items:stretch;flex:none;margin-left:0;margin-top:auto}.panel{top:0;right:0;bottom:0;height:auto;width:max(50%,var(--split-panel-min));border-top:none;border-left:1px solid var(--border);border-radius:0;padding-bottom:calc(14px + var(--safe-b))}.panel.reading{width:max(50%,var(--split-panel-min))}.workspace:has(.panel) .map-overlay-top,.workspace:has(.panel) .offline-banner{right:calc(max(50%,var(--split-panel-min)) + 12px);bottom:calc(12px + var(--safe-b));top:auto}.workspace:has(.panel) .map-search{right:calc(max(50%,var(--split-panel-min)) + 12px)}.workspace:has(.panel) .map-legend{display:none}}.panel-hero{align-items:center}.panel-hero.hull-hero-size{align-items:flex-start}}
