:root{color-scheme:dark;--bg-deep: #081018;--bg-panel: rgba(11, 22, 31, .96);--bg-panel-soft: rgba(17, 31, 42, .94);--bg-accent: rgba(24, 51, 65, .94);--line: rgba(120, 177, 198, .28);--line-bright: rgba(193, 228, 242, .78);--text-main: #edf5f8;--text-soft: #bfd0da;--text-dim: #8ea8b7;--accent-solar: #f3d672;--accent-mineral: #80c9f6;--accent-scrap: #f0ad8a;--accent-good: #98dfbc;--accent-cta: #2c7286;--accent-cta-strong: #3b8ea7;--accent-brass: #b08d57;--glow-soft: rgba(89, 186, 214, .18);--glow-cta: rgba(103, 214, 236, .34);font-family:Trebuchet MS,Verdana,sans-serif;background:radial-gradient(circle at top left,rgba(112,175,211,.18),transparent 28%),radial-gradient(circle at bottom right,rgba(240,208,122,.08),transparent 22%),linear-gradient(180deg,#09131b,#050a10)}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%}body{min-height:100vh;color:var(--text-main);overflow:hidden}button{font:inherit}strong,h1,h2,h3{font-family:Georgia,serif}.app-shell{position:relative;isolation:isolate;width:100%;height:100vh;padding:8px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;overflow:clip}.app-shell:before,.app-shell:after{content:"";position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;pointer-events:none;z-index:-1}.app-shell:before{background-image:radial-gradient(circle at 14% 22%,rgba(216,241,255,.85) 0 1px,transparent 1.7px),radial-gradient(circle at 32% 74%,rgba(176,141,87,.7) 0 1.1px,transparent 1.8px),radial-gradient(circle at 56% 18%,rgba(216,241,255,.66) 0 1px,transparent 1.9px),radial-gradient(circle at 74% 46%,rgba(216,241,255,.8) 0 1.1px,transparent 1.8px),radial-gradient(circle at 88% 68%,rgba(176,141,87,.64) 0 1px,transparent 1.8px);opacity:.24;animation:sky-drift 120s linear infinite}.app-shell:after{background-image:radial-gradient(circle at 18% 38%,rgba(216,241,255,.9) 0 1.3px,transparent 2px),radial-gradient(circle at 44% 86%,rgba(216,241,255,.78) 0 1px,transparent 1.8px),radial-gradient(circle at 63% 28%,rgba(176,141,87,.7) 0 1.2px,transparent 1.9px),radial-gradient(circle at 82% 58%,rgba(216,241,255,.76) 0 1px,transparent 1.8px);opacity:.16;animation:sky-drift-reverse 170s linear infinite}.hud-strip{display:grid;grid-template-columns:minmax(200px,1.2fr) repeat(4,minmax(120px,.72fr)) minmax(260px,1.55fr);gap:8px;align-items:stretch}.hud-card,.dock-nav,.dock-panel,.canvas-shell,.core-panel,.mission-bar,.modal-card,.tutorial-card{position:relative;background:linear-gradient(180deg,#111f2afa,#08121af5);border:1px solid rgba(120,177,198,.22);box-shadow:inset 0 1px #ffffff0d,inset 0 -18px 28px #0000002e,0 0 0 1px #4283990f,0 18px 32px #0000003d,0 0 28px var(--glow-soft)}.hud-card{border-radius:12px;padding:5px 10px;display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0;min-height:52px}.hud-card strong{font-size:clamp(15px,1.05vw,18px);line-height:1.05}.threat-headline{font-size:clamp(13px,.92vw,16px);line-height:1.05}.hud-card.resource.solar strong{color:var(--accent-solar)}.hud-card.resource.minerals strong{color:var(--accent-mineral)}.hud-card.resource.scrap strong{color:var(--accent-scrap)}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim)}.play-layout{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(400px,480px) minmax(0,1fr);gap:10px}.dock-shell{min-width:0;display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;min-height:0}.dock-nav{border-radius:18px;padding:8px;display:flex;flex-direction:column;gap:8px}.dock-button,.ui-button,.module-card,.upgrade-card,.reward-card,.mission-button{position:relative;border:1px solid rgba(134,193,214,.24);border-radius:14px;background:linear-gradient(180deg,#1f3d4df5,#142a37f5);color:var(--text-main);padding:11px 12px;cursor:pointer;text-align:left;transition:background .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease,box-shadow .18s ease}.upgrade-card{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.dock-button:hover,.ui-button:hover,.module-card:hover,.upgrade-card:hover,.reward-card:hover,.mission-button:hover{transform:translateY(-1px);border-color:#97e2bea3;box-shadow:0 0 18px #54c2da2e}.dock-button{min-height:44px;text-align:center;display:flex;align-items:center;justify-content:center;padding:6px;font-size:13px}.dock-button.selected,.ui-button.selected,.module-card.selected,.mission-button.selected{background:#305668f5;border-color:#f0cf7db8}button:disabled,.module-card:disabled,.upgrade-card:disabled,.reward-card:disabled,.mission-button:disabled,.dock-button:disabled{cursor:default;opacity:.72;color:#9fb4c0;background:repeating-linear-gradient(135deg,#1f2e38f5 0,#1f2e38f5 8px,#1a2831f5 8px,#1a2831f5 16px);transform:none;border-color:#86c1d62e}.dock-panel,.core-panel{border-radius:20px;padding:16px}.dock-panel{min-height:0;overflow:auto;display:flex;flex-direction:column;gap:12px}.panel-block{position:relative;border-radius:16px;padding:14px;background:linear-gradient(180deg,#162836f0,#0c1822f0);border:1px solid rgba(120,177,198,.16);box-shadow:inset 0 1px #ffffff0a,inset 0 -14px 24px #00000024}.panel-block strong,.core-panel strong,.modal-card strong,.tutorial-card h2{display:block;margin-top:4px;font-size:22px;color:#f2e7c5}.panel-block p,.core-panel p,.modal-card p,.tutorial-card p,.hud-card span{line-height:1.35;color:var(--text-soft)}.hud-card span{font-size:12px}.emphasis-block{background:linear-gradient(180deg,#19303ef5,#111f2af5);border-color:#f0cf7d38}.selection-copy{margin:8px 0 0}.message-list,.upgrade-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:12px}.scroll-stack,.button-stack{display:flex;flex-direction:column;gap:10px}.message-list,.scroll-stack{min-height:0;overflow:auto}.message-entry,.discovery-entry,.bot-card,.artifact-card{border-radius:14px;padding:12px;background:#0d1822e6;border:1px solid rgba(120,177,198,.14)}.discovery-entry{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start}.discovery-entry.discovered{border-color:#f0cf7d52}.discovery-entry.known_mastered_lite{border-color:#97e2be6b}.state-pill{align-self:start;display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#264354eb;font-size:12px}.board-column{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;justify-items:center;align-content:stretch;gap:8px}.canvas-shell{width:100%;height:100%;max-width:1260px;min-height:0;align-self:stretch;border-radius:24px;padding:8px 10px 10px;background:linear-gradient(180deg,#0d1822fa,#070f16fa);display:flex;align-items:center;justify-content:center;overflow:hidden}#game-canvas{width:min(100%,1180px);max-width:100%;aspect-ratio:3 / 2;min-height:0;display:flex;align-items:center;justify-content:center;margin:0 auto;align-self:center}#game-canvas canvas{width:100%!important;height:auto!important;max-width:100%;max-height:100%;aspect-ratio:3 / 2;border-radius:16px}.core-rail{min-width:0;min-height:0;display:flex;flex-direction:column;gap:12px;overflow:auto}.module-grid.compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.module-card strong,.upgrade-card strong,.reward-card strong,.bot-card strong,.artifact-card strong{font-size:18px;margin:0 0 4px}.module-card span,.upgrade-card span,.reward-card span,.bot-card span,.artifact-card span,.ui-button span,.upgrade-card small,.module-card small,.reward-card small,.bot-card small{display:block;color:var(--text-soft)}.doctrine-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.compact-stats,.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-stats strong,.summary-grid strong{font-size:18px;margin-top:2px}.fine-print{font-size:12px;color:var(--text-dim)}.full-width{width:100%}.mission-bar-wrap{width:100%;display:flex;justify-content:center}.mission-bar{width:min(760px,100%);border-radius:20px;padding:9px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;bottom:0;background:linear-gradient(180deg,#111f2afa,#0b161ffa)}.mission-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.mission-copy strong{font-size:19px;line-height:1.05}.mission-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;flex:0 0 auto}.mission-controls .mission-button{min-width:220px;padding:16px 20px;border-radius:16px;font-size:20px;text-align:center;background:linear-gradient(135deg,var(--accent-cta-strong),var(--accent-cta));border-color:var(--line-bright);box-shadow:0 0 18px #2f85a02e}.mission-hint{font-size:13px;line-height:1.18;color:var(--text-soft)}.mission-button{min-width:220px;padding:16px 20px;border-radius:16px;font-size:20px;text-align:center;background:linear-gradient(135deg,var(--accent-cta-strong),var(--accent-cta));border-color:var(--line-bright);box-shadow:0 0 18px #2f85a02e}.mission-bar.running .mission-copy{flex:1 1 auto}.mission-bar.running .mission-copy strong{font-size:18px}.mission-bar.running .mission-hint{font-size:12px}.mission-bar.running .mission-button{min-width:220px;padding:16px 20px;border-radius:16px;font-size:20px;text-align:center;background:linear-gradient(135deg,var(--accent-cta-strong),var(--accent-cta));border-color:var(--line-bright);box-shadow:0 0 18px #2f85a02e}.mission-bar.running .mission-button.selected{background:#305668f5;border-color:#f0cf7db8;box-shadow:inset 0 0 0 1px #f0cf7d2e}.mission-button.muted{background:linear-gradient(135deg,#39596a,#2a4352)}.empty-state{color:var(--text-dim)}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:auto;pointer-events:none;display:flex;align-items:center;justify-content:center;padding:18px}.modal-card,.tutorial-card{pointer-events:auto}.modal-card{width:min(780px,calc(100vw - 36px));max-height:calc(100vh - 36px);overflow:auto;border-radius:24px;padding:22px;background:#0d1822fa}.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.reward-card{min-height:160px}.tutorial-shade{position:fixed;top:0;right:0;bottom:0;left:0;background:#04090ead;z-index:54}.tutorial-card{position:fixed;left:50%;top:14px;transform:translate(-50%);width:min(760px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;border-radius:16px;padding:10px 12px;background:#0b161ffa;z-index:90;display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;row-gap:2px;align-items:center}.tutorial-card h2{grid-column:2;margin:0;font-size:16px;line-height:1.1}.tutorial-card .eyebrow{grid-column:1;grid-row:1 / span 2;align-self:start;padding-top:3px;font-size:12px;letter-spacing:.14em}.tutorial-card p{grid-column:2;margin:0;font-size:12px;line-height:1.2}.tutorial-actions{grid-column:3;grid-row:1 / span 2;display:grid;grid-auto-flow:column;grid-auto-columns:max-content;align-items:center;justify-content:end;gap:8px;margin-top:0}.tutorial-actions .ui-button{min-width:0;padding:7px 10px;border-radius:10px;font-size:12px;line-height:1.1;white-space:nowrap;text-align:center}.tutorial-highlight{position:relative;z-index:56;box-shadow:0 0 0 3px #f0cf7de6,0 0 0 10px #f0cf7d29}.menu-mode .play-layout{grid-template-columns:1fr}.menu-mode .board-column{justify-items:center}.menu-mode .canvas-shell{height:min(100%,calc(100vh - 44px));max-width:920px;padding:12px}.menu-mode #game-canvas{width:min(100%,960px);max-width:100%}.menu-mode .dock-shell,.menu-mode .core-rail,.menu-mode .side-rail,.menu-mode .mission-bar-wrap,.menu-mode .match-header,.menu-mode .build-tray{display:none}@media (max-width: 1480px){.play-layout{grid-template-columns:minmax(360px,420px) minmax(0,1fr)}.hud-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1180px){body{overflow:auto}.app-shell{height:auto;min-height:100vh}.play-layout,.dock-shell{grid-template-columns:1fr}.dock-nav{flex-direction:row;flex-wrap:wrap}.board-column{order:-1}}@media (max-width: 760px){.hud-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.hud-card{min-height:48px;padding:5px 8px}.hud-card strong{font-size:14px}.threat-headline{font-size:12px;line-height:1.1}.hud-card span{font-size:12px}.module-grid.compact,.reward-grid,.compact-stats,.doctrine-grid{grid-template-columns:1fr}.mission-bar{flex-direction:column;align-items:stretch}.mission-button{width:100%;min-width:0}.tutorial-card{top:10px;width:min(560px,calc(100vw - 12px));max-height:calc(100vh - 16px);padding:9px 10px;grid-template-columns:auto minmax(0,1fr) auto;column-gap:8px}.tutorial-card h2{font-size:15px}.tutorial-card p{font-size:12px}.tutorial-actions{gap:6px}.tutorial-actions .ui-button{padding:6px 8px;font-size:12px}}@media (min-width: 1600px) and (min-height: 900px){.tutorial-card{top:14px;width:min(420px,calc(100vw - 40px));padding:12px 14px}}.ambient-panel:before,.ambient-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit}.ambient-panel:before{background:linear-gradient(180deg,rgba(113,195,218,.08),transparent 30%,transparent 72%,rgba(176,141,87,.05));animation:panel-breathe var(--panel-breathe-duration, 8s) ease-in-out infinite;animation-delay:var(--panel-breathe-delay, 0s)}.ambient-panel:after{background:radial-gradient(circle at 12px 12px,rgba(176,141,87,.5) 0 1.6px,transparent 2.2px),radial-gradient(circle at calc(100% - 12px) 12px,rgba(176,141,87,.5) 0 1.6px,transparent 2.2px),radial-gradient(circle at 12px calc(100% - 12px),rgba(176,141,87,.5) 0 1.6px,transparent 2.2px),radial-gradient(circle at calc(100% - 12px) calc(100% - 12px),rgba(176,141,87,.5) 0 1.6px,transparent 2.2px);opacity:.3}.ambient-button{overflow:hidden}.ambient-button:before{content:"";position:absolute;inset:-35% auto -35% -65%;width:58%;transform:skew(-18deg);background:linear-gradient(180deg,transparent,rgba(201,238,247,.18),transparent);animation:button-shimmer var(--button-shimmer-duration, 10s) linear infinite;animation-delay:var(--button-shimmer-delay, 0s);pointer-events:none;opacity:.55}.ambient-button:hover{box-shadow:0 0 22px #54c2da33,inset 0 0 0 1px #c9eef70d}.ambient-primary-cta{overflow:visible}.ambient-primary-cta.ready{animation:cta-pulse 3.4s ease-in-out infinite}.ambient-primary-cta.ready:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border-radius:22px;border:1px solid rgba(111,214,236,.16);animation:cta-ring-spin 16s linear infinite;pointer-events:none}.counter-pulse{animation:counter-surge .7s ease-out}.counter-pulse strong{text-shadow:0 0 14px rgba(125,222,242,.32)}@keyframes sky-drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-2.5%,-1.6%,0) scale(1.03)}}@keyframes sky-drift-reverse{0%{transform:translateZ(0) scale(1.04)}to{transform:translate3d(2.8%,1.8%,0) scale(1.08)}}@keyframes panel-breathe{0%,to{opacity:.42}50%{opacity:.8}}@keyframes button-shimmer{0%,78%,to{transform:translate(-145%) skew(-18deg)}88%{transform:translate(245%) skew(-18deg)}}@keyframes counter-surge{0%{transform:scale(1);filter:brightness(1)}38%{transform:scale(1.03);filter:brightness(1.16)}to{transform:scale(1);filter:brightness(1)}}@keyframes cta-pulse{0%,to{box-shadow:0 0 16px #2f85a02e}50%{box-shadow:0 0 30px var(--glow-cta)}}@keyframes cta-ring-spin{0%{transform:rotate(0);opacity:.32}to{transform:rotate(360deg);opacity:.12}}:root{--go: #3fd6a8;--go-strong: #1fb88b;--friendly: #7fe0ff;--hostile: #ff6b6b;--loot: #f6cf62;--hull: #e9d78d}.icon{display:inline-flex;width:1.05em;height:1.05em;flex:0 0 auto}.icon svg{width:100%;height:100%}.is-empty{display:none!important}kbd,.hotkey{display:none;min-width:18px;padding:1px 4px;border-radius:5px;border:1px solid rgba(201,238,247,.32);background:#050c12b3;color:var(--text-soft);font:600 12px/1.3 system-ui,sans-serif;text-align:center}.hotkey-legend kbd,#app[data-layout=arena] .hotkey{display:inline-block}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border-radius:12px;border:1px solid rgba(134,193,214,.28);background:#142a37f5;color:var(--text-main);font-weight:700;cursor:pointer}.icon-button.selected{border-color:var(--loot);color:var(--loot)}.hud-strip{display:block}.resource-strip{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.resource-pill{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:4px 12px;border-radius:999px;background:#0a151eeb;border:1px solid rgba(120,177,198,.2)}.resource-pill strong{font:700 20px/1 system-ui,sans-serif;font-variant-numeric:tabular-nums}.resource-pill small{color:var(--text-dim);font-size:12px}.resource-pill .icon{width:20px;height:20px}.resource-pill.solar,.cost.solar,.gain.solar{color:var(--accent-solar)}.resource-pill.minerals,.cost.minerals,.gain.minerals{color:var(--accent-mineral)}.resource-pill.scrap,.cost.scrap,.gain.scrap{color:var(--accent-scrap)}.resource-pill.stars{color:var(--loot)}.sound-toggle,.menu-toggle{margin-left:auto}.delta-float{position:fixed;transform:translate(-50%);font:800 15px/1 system-ui,sans-serif;text-shadow:0 2px 6px rgba(0,0,0,.7);animation:delta-rise 1.1s ease-out forwards}.delta-float.solar{color:var(--accent-solar)}.delta-float.minerals{color:var(--accent-mineral)}.delta-float.scrap{color:var(--accent-scrap)}.delta-float.spend{color:#ff9a9a}@keyframes delta-rise{0%{opacity:0;transform:translate(-50%,4px) scale(.8)}20%{opacity:1;transform:translate(-50%,10px) scale(1.15)}to{opacity:0;transform:translate(-50%,34px) scale(1)}}.fx-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:120}.match-header{width:100%;max-width:1260px}.scoreboard{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 12px;border-radius:16px;background:linear-gradient(180deg,#0e1b25fa,#081119fa);border:1px solid rgba(120,177,198,.22)}.scoreboard.is-hit .score-side.friendly{animation:hull-hit .35s ease-out}@keyframes hull-hit{0%{transform:translate(0);filter:brightness(1.8) saturate(1.6)}25%{transform:translate(-4px)}50%{transform:translate(3px)}to{transform:translate(0);filter:none}}.score-side{display:grid;gap:4px;min-width:0}.score-side.hostile{text-align:right}.side-label{font:700 12px/1.1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--friendly)}.side-label.enemy{color:var(--hostile)}.score-center{display:grid;justify-items:center;gap:1px;text-align:center}.encounter-kicker{font:700 12px/1.1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.encounter-name{font-size:17px;color:#f2e7c5}.clock{font:800 22px/1 system-ui,sans-serif;font-variant-numeric:tabular-nums}.chest-count{display:inline-flex;align-items:center;gap:3px;color:var(--loot);font-weight:700}.next-wave,.telegraph{font-size:12px;color:var(--text-soft)}.telegraph{color:#ff8fa3;font-weight:700;animation:telegraph-blink .6s steps(2) infinite}.telegraph.soft{animation:none;color:var(--text-dim)}@keyframes telegraph-blink{50%{opacity:.55}}.stat-bar{position:relative;height:18px;border-radius:6px;overflow:hidden;background:#040a0fe6;border:1px solid rgba(255,255,255,.08)}.stat-bar.thin{height:10px}.stat-bar-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#c9b25e,var(--hull));transition:width .18s ease}.stat-bar.shield .stat-bar-fill,.stat-bar.enemy-shield .stat-bar-fill{background:linear-gradient(90deg,#3aa5c8,var(--friendly))}.stat-bar.enemy-hull .stat-bar-fill{background:linear-gradient(90deg,#c94a4a,var(--hostile))}.stat-bar.moon .stat-bar-fill{background:linear-gradient(90deg,#8b8577,#d6c085)}.score-side.hostile .stat-bar-fill{inset:0 0 0 auto}.stat-bar-label,.stat-bar-value{position:relative;z-index:1;padding:0 6px;font:700 12px/18px system-ui,sans-serif;color:#0b1720;text-shadow:0 0 4px rgba(255,255,255,.35)}.stat-bar-value{position:absolute;right:0;top:0;font-variant-numeric:tabular-nums}.stat-bar.thin .stat-bar-label,.stat-bar.thin .stat-bar-value{display:none}.header-controls{display:flex;gap:6px}.route-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.route-intel{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.route-tip{font-size:13px;color:var(--text-soft)}.chip{padding:2px 8px;border-radius:999px;font:700 12px/1.5 system-ui,sans-serif;background:#ffffff14;text-transform:capitalize}.chip-laser{color:#ff8a96}.chip-missile{color:#ffb27a}.chip-beam{color:#fff;background:#ff28508c}.chip-enemy{color:#f7b098}.sector-map{display:grid;gap:4px}.route-name{font-size:16px;color:#f2e7c5}.sector-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;border-radius:14px;background:linear-gradient(180deg,#050c12e6,#0a161ee6);border:1px solid rgba(120,177,198,.18)}.sector-svg{display:block;width:100%;height:auto;max-height:128px}.map-edge{stroke:#ffffff24;stroke-width:2}.map-edge.open{stroke:#f6cf628c;stroke-dasharray:5 5}.map-edge.planned{stroke:var(--loot);stroke-width:3;stroke-dasharray:6 4}.map-edge.taken{stroke:var(--loot);stroke-width:3}.map-node{color:var(--route-color, #9fb4c0);--route-color: #9fb4c0}.map-node.route-swarm{--route-color: #f7b098}.map-node.route-duel{--route-color: #ff6b6b}.map-node.route-nebula{--route-color: #b58cff}.map-node.route-derelict{--route-color: #9fd3c7}.map-node.route-boss{--route-color: #ff4d6d}.map-hit{fill:transparent}.map-disc{fill:#0b1720;stroke:var(--route-color);stroke-width:2}.map-node.route-boss .map-disc{stroke:var(--loot);stroke-width:3;fill:#2a0f16}.map-node.visited .map-disc{fill:color-mix(in srgb,var(--route-color) 35%,#0b1720)}.map-node.current .map-disc{stroke:#fff;stroke-width:3}.map-node.skipped{opacity:.2}.map-node:not(.visited):not(.reachable):not(.skipped):not(.route-boss){opacity:.45}.map-node[data-action]{cursor:pointer}.map-node.reachable .map-disc{animation:node-pulse 1.4s ease-in-out infinite}.map-node[data-action]:hover .map-disc{fill:color-mix(in srgb,var(--route-color) 30%,#0b1720)}.map-node.selected .map-disc{stroke:var(--loot);stroke-width:4;animation:none;filter:drop-shadow(0 0 6px rgba(246,207,98,.8))}@keyframes node-pulse{50%{stroke-width:4}}.map-label{fill:var(--text-dim);font:700 11px system-ui,sans-serif;text-anchor:middle}.map-label.now{fill:var(--loot)}.canvas-shell{position:relative}.battle-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:grid;place-items:center;z-index:5}.battle-overlay>*{grid-area:1 / 1}.battle-overlay button,.tutorial-bubble{pointer-events:auto}.launch-card{display:grid;justify-items:center;gap:4px;padding:18px 28px;border-radius:18px;background:#060e14e0;border:1px solid rgba(246,207,98,.4);animation:card-slide .45s cubic-bezier(.2,1.4,.4,1);text-align:center}.launch-card strong{font-size:26px;color:#f2e7c5}.launch-card.stamp{background:transparent;border:0}.launch-stamp{font:900 64px/1 system-ui,sans-serif!important;color:var(--go)!important;letter-spacing:.04em;text-shadow:0 6px 0 #0b5c48,0 0 30px rgba(63,214,168,.6);animation:stamp-in .35s cubic-bezier(.2,1.8,.4,1)}@keyframes card-slide{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:none}}@keyframes stamp-in{0%{opacity:0;transform:scale(2.4) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(-3deg)}}.announcement{align-self:start;margin-top:12%;display:grid;justify-items:center;font:900 34px/1.1 system-ui,sans-serif;letter-spacing:.06em;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.6),0 0 26px rgba(255,107,107,.6);animation:stamp-in .4s cubic-bezier(.2,1.6,.4,1);text-align:center}.announcement small{font:600 14px/1.4 system-ui,sans-serif;letter-spacing:.04em;color:var(--text-soft)}.announcement.boss{color:var(--loot)}.pause-veil{top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;border-radius:16px;background:#040a0f8c;color:#fff;display:grid;place-content:center;justify-items:center;gap:8px;font:700 18px/1.2 system-ui,sans-serif;cursor:pointer}.pause-veil .icon{width:56px;height:56px}.lance-alarm:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 3px #ff28508c,inset 0 0 70px #ff285073;animation:alarm-pulse .5s ease-in-out infinite alternate;z-index:4}@keyframes alarm-pulse{0%{opacity:.35}to{opacity:1}}.tutorial-bubble{align-self:start;justify-self:center;margin-top:10px;display:flex;align-items:center;gap:12px;max-width:min(560px,calc(100% - 20px));padding:10px 12px;border-radius:16px;background:#08121af2;border:1px solid rgba(246,207,98,.5);box-shadow:0 10px 30px #00000073;animation:card-slide .35s ease-out}.tutorial-bubble strong{display:block;font-size:16px;color:var(--loot)}.tutorial-bubble p{margin:2px 0 0;font-size:14px;color:var(--text-main)}.tutorial-bubble .tutorial-actions{display:flex;gap:6px}.ui-button.primary,.mission-button.primary-cta{background:linear-gradient(180deg,var(--go),var(--go-strong));border-color:#dcfff099;color:#052a20;font-weight:800;text-align:center}.ui-button.primary:disabled,.mission-button.primary-cta:disabled{color:#9fb4c0}.ui-button.ghost{background:transparent;color:var(--text-dim)}.ghost-hand{position:fixed;width:44px;height:44px;opacity:0;transform:translate(-20%,-10%);transition:left .3s ease,top .3s ease,opacity .2s ease;filter:drop-shadow(0 4px 6px rgba(0,0,0,.6))}.ghost-hand.visible{opacity:1;animation:hand-tap 1.1s ease-in-out infinite}@keyframes hand-tap{0%,to{transform:translate(-20%,-10%) scale(1)}45%{transform:translate(-28%,-22%) scale(1.08)}60%{transform:translate(-20%,-10%) scale(.92)}}.build-tray{width:100%;max-width:1260px;display:grid;gap:6px;padding:8px 10px;border-radius:16px;background:linear-gradient(180deg,#0e1b25fa,#081119fa);border:1px solid rgba(120,177,198,.22)}.doctrine-row{display:flex;align-items:center;gap:8px;min-width:0}.doctrine-chips{display:flex;gap:6px;min-width:0;overflow-x:auto}.chip-button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 12px;border-radius:999px;border:1px solid rgba(134,193,214,.26);background:#142a37f5;color:var(--text-soft);font:600 13px/1 system-ui,sans-serif;white-space:nowrap;cursor:pointer}.chip-button.selected{border-color:var(--loot);color:#1b1405;background:linear-gradient(180deg,#ffe08a,var(--loot))}.commitment-meter{position:relative;margin-left:auto;width:96px;height:22px;flex:0 0 auto;border-radius:999px;overflow:hidden;background:#040a0fe6;border:1px solid rgba(255,255,255,.1)}.commitment-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#3aa5c8,var(--go))}.commitment-meter span{position:relative;display:block;text-align:center;font:800 12px/22px system-ui,sans-serif;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.packet-row{--key-travel: 4px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,1fr);gap:6px;overflow-x:auto;padding:6px 6px 10px;border-radius:16px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;background:linear-gradient(180deg,#03080c,#0a161e);box-shadow:inset 0 3px 8px #000000bf,inset 0 -1px #ffffff0f}.packet{--key-edge: color-mix(in srgb, var(--packet-color) 40%, #03080c);position:relative;display:grid;justify-items:center;gap:2px;min-height:72px;padding:6px 4px;border-radius:12px;border:2px solid color-mix(in srgb,var(--packet-color) 55%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--packet-color) 26%,#16303d),#0c1820);color:var(--text-main);cursor:pointer;box-shadow:0 var(--key-travel) 0 var(--key-edge),0 calc(var(--key-travel) + 3px) 6px #00000080;transition:transform .09s cubic-bezier(.3,1.6,.5,1),box-shadow .09s ease,filter .12s ease}.packet:after{content:"";position:absolute;top:5px;right:6px;width:6px;height:6px;border-radius:50%;background:#ffffff1f;box-shadow:inset 0 1px 1px #0009;transition:background .12s ease,box-shadow .12s ease}.packet:hover{filter:brightness(1.12)}.packet:active,.packet.selected{transform:translateY(var(--key-travel));box-shadow:0 0 0 var(--key-edge),inset 0 3px 7px #00000080}.packet.selected{border-color:color-mix(in srgb,var(--packet-color) 85%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--packet-color) 34%,#102530),#0a1820)}.packet.selected:after{background:var(--packet-color);box-shadow:0 0 4px 1px var(--packet-color),0 0 10px 2px color-mix(in srgb,var(--packet-color) 60%,transparent)}.packet.unaffordable{filter:grayscale(.7) brightness(.75)}.packet.locked{border-style:dashed;box-shadow:0 2px 0 var(--key-edge)}.packet .hotkey{position:absolute;top:3px;left:3px}.packet-glyph{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--packet-color);color:#0b1720;font:900 15px/1 system-ui,sans-serif;box-shadow:inset 0 -3px #00000040}.packet-glyph .icon{width:16px;height:16px}.packet-name{font:700 12px/1.1 system-ui,sans-serif}.packet-cost{display:flex;gap:4px;font:600 12px/1 system-ui,sans-serif;color:var(--text-dim)}.cost{display:inline-flex;align-items:center;gap:2px;font-variant-numeric:tabular-nums}.cost .icon{width:12px;height:12px}.tray-body{height:134px;display:grid;grid-template-rows:auto 1fr;gap:6px;overflow:hidden}.tray-details,.merge-copy p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.tray-details{margin:0;font-size:13px;line-height:1.3;color:var(--text-soft)}.merge-strip{grid-row:1 / -1;display:flex;align-items:center;gap:12px;min-height:0}.merge-copy{min-width:0;flex:1}.merge-copy strong{display:block;font-size:18px;color:#f2e7c5}.merge-copy p{margin:2px 0;font-size:13px;color:var(--text-soft)}.merge-strip .ui-button{min-height:48px;padding:10px 18px;white-space:nowrap}.mission-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(760px,100%)}.mission-bar .mission-hint{font-size:14px;color:var(--text-soft)}.mission-bar .mission-button{min-width:0;min-height:52px;padding:10px 28px;font-size:20px;border-radius:16px;display:inline-flex;align-items:center;gap:10px}.modal-layer:has(.modal-card){pointer-events:auto;background:#03080c99;z-index:60}.debrief{width:min(560px,calc(100vw - 24px));display:grid;justify-items:center;gap:14px;text-align:center;animation:card-slide .4s cubic-bezier(.2,1.3,.4,1)}.debrief h2{margin:0;font-size:30px;color:#f2e7c5}.debrief.failed h2{color:#ff9a9a}.debrief-stars{display:flex;gap:18px}.debrief-star{display:grid;justify-items:center;gap:4px;color:#ffffff24;width:92px}.debrief-star .icon{width:56px;height:56px}.debrief-star small{font-size:12px;color:var(--text-dim)}.debrief-star.earned{color:var(--loot);animation:star-pop .45s cubic-bezier(.2,1.8,.4,1) both;animation-delay:var(--star-delay);filter:drop-shadow(0 0 12px rgba(246,207,98,.55))}.debrief.settled .debrief-star.earned{animation:none}.debrief-star.earned small{color:var(--text-main)}@keyframes star-pop{0%{transform:scale(0) rotate(-40deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.debrief-gains{display:flex;gap:18px}.gain{display:inline-flex;align-items:center;gap:6px;font:800 24px/1 system-ui,sans-serif;font-variant-numeric:tabular-nums}.gain .icon{width:24px;height:24px}.gain strong{font:inherit;margin:0;color:inherit}.mvp-card{width:100%;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:16px;text-align:left;border:2px solid color-mix(in srgb,var(--packet-color) 60%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--packet-color) 22%,#0d1a23),#0d1a23)}.mvp-card strong{margin:0;font-size:18px}.mvp-card small{color:var(--text-dim);text-transform:capitalize}.mvp-badge{padding:6px 10px;border-radius:10px;background:var(--loot);color:#1b1405;font:900 14px/1 system-ui,sans-serif}.mvp-stats{margin-left:auto;display:flex;gap:10px;font-size:13px;color:var(--text-soft)}.mvp-stats b{color:#fff;font-size:16px}.chest-row{display:flex;align-items:center;gap:14px}.chest-stack{display:flex;gap:4px;color:var(--loot)}.chest-icon{width:34px;height:34px;animation:chest-wiggle 1.4s ease-in-out infinite}.chest-icon:nth-child(2){animation-delay:.2s}.chest-icon:nth-child(3){animation-delay:.4s}@keyframes chest-wiggle{0%,70%,to{transform:rotate(0)}78%{transform:rotate(-10deg) translateY(-3px)}86%{transform:rotate(8deg) translateY(-3px)}}.debrief .mission-button{min-width:260px;min-height:54px;font-size:20px;justify-content:center}.chest-open{position:absolute;animation:card-slide .4s cubic-bezier(.2,1.5,.4,1);text-align:center}.chest-burst{display:grid;place-items:center;color:var(--loot)}.chest-burst .icon{width:64px;height:64px;animation:chest-burst .6s cubic-bezier(.2,1.8,.4,1);filter:drop-shadow(0 0 22px rgba(246,207,98,.8))}@keyframes chest-burst{0%{transform:scale(.2) rotate(-30deg)}to{transform:scale(1) rotate(0)}}.upgrade-head{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.upgrade-head strong{margin:0;font-size:16px}.level-pips{display:flex;gap:3px}.level-pips i{width:8px;height:8px;border-radius:2px;background:#ffffff1f}.level-pips i.on{background:var(--loot)}.upgrade-cost{display:flex;gap:8px}.module-card,.bot-card{border-left:4px solid var(--packet-color, rgba(120, 177, 198, .3))}.module-card.selected{grid-column:1 / -1}.bot-card{display:grid;gap:4px}.bot-card span{text-transform:capitalize;color:var(--text-soft);font-size:13px}.mini-bar{height:6px;border-radius:3px;background:#040a0fe6;overflow:hidden}.mini-bar div{height:100%;background:#a8f29e}.upgrade-card .icon,.module-card .icon,.upgrade-card .cost,.module-card .cost{display:inline-flex}.upgrade-card .upgrade-head,.upgrade-card .level-pips,.upgrade-card .upgrade-cost,.module-card small{display:flex;gap:8px}.upgrade-card .level-pips{gap:3px}.doctrine-chips{flex:1 1 auto}.overlay-controls,.sheet-close,.side-rail{display:none}.rail-block{display:grid;gap:6px;padding:12px;border-radius:16px;background:linear-gradient(180deg,#0e1b25fa,#081119fa);border:1px solid rgba(120,177,198,.2)}.wave-timeline,.killfeed{display:grid;gap:6px}.wave-row{display:grid;grid-template-columns:1fr auto;gap:2px 8px;font-size:13px}.wave-row small{font-variant-numeric:tabular-nums;color:var(--text-soft)}.wave-row.deployed{opacity:.45}.wave-row.capital span{color:var(--hostile);font-weight:700}.wave-progress{grid-column:1 / -1;height:4px;border-radius:2px;background:#ffffff14;overflow:hidden}.wave-progress div{height:100%;background:linear-gradient(90deg,#f7b098,var(--hostile))}.kill-row{display:flex;gap:6px;font-size:13px}.kill-row.fresh{animation:card-slide .25s ease-out}.kill-row span:last-child{color:#f7b098}#app[data-layout=arena] .play-layout{grid-template-columns:minmax(280px,320px) minmax(0,1fr) 250px}#app[data-layout=arena] .side-rail{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto}#app[data-layout=arena] .board-column,#app[data-layout=compact] .board-column{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"header header" "canvas canvas" "tray launch";align-items:end}#app[data-layout=arena] .match-header,#app[data-layout=compact] .match-header{grid-area:header}#app[data-layout=arena] .canvas-shell,#app[data-layout=compact] .canvas-shell{grid-area:canvas}#app[data-layout=arena] .build-tray,#app[data-layout=compact] .build-tray{grid-area:tray}#app[data-layout=arena] .mission-bar-wrap,#app[data-layout=compact] .mission-bar-wrap{grid-area:launch;align-self:stretch}#app[data-layout=arena] .mission-bar,#app[data-layout=compact] .mission-bar{height:100%;flex-direction:column;justify-content:center;width:200px;padding:8px}#app[data-layout=arena] .mission-bar .mission-hint,#app[data-layout=compact] .mission-bar .mission-hint{font-size:12px;text-align:center}#app[data-layout=arena] .dock-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}#app[data-layout=arena] .dock-nav{flex-direction:row}#app[data-layout=arena] .dock-button{flex:1;min-height:36px}#app[data-layout=compact] .board-column{height:calc(100dvh - 64px);min-height:480px}#app[data-layout=compact] #game-canvas{width:auto;height:100%}#app[data-layout=compact] #game-canvas canvas{width:auto!important;height:100%!important}#app[data-layout=pocket] .app-shell{height:100dvh;padding:6px;gap:6px;overflow:hidden}#app[data-layout=pocket] .app-shell{grid-template-columns:minmax(0,1fr)}#app[data-layout=pocket] .play-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-width:0}#app[data-layout=pocket] .resource-strip{gap:4px;min-width:0}#app[data-layout=pocket] .resource-pill .icon{width:16px;height:16px}#app[data-layout=pocket] .board-column{order:0;gap:6px;min-height:0;grid-template-columns:minmax(0,1fr)}#app[data-layout=pocket] .board-column>*{min-width:0;max-width:100%}#app[data-layout=pocket] .route-heading{gap:6px}#app[data-layout=pocket] .route-name{font-size:14px}#app[data-layout=pocket] .mission-bar{flex-direction:row;padding:4px 4px 4px 10px}#app[data-layout=pocket] .resource-pill{min-height:36px;padding:2px 8px}#app[data-layout=pocket] .resource-pill strong{font-size:17px}#app[data-layout=pocket] .resource-pill.cycle,#app[data-layout=pocket] .menu-toggle{display:none}#app[data-layout=pocket] .dock-button.menu-button{display:inline-flex;align-items:center;justify-content:center;min-width:40px}#app[data-layout=pocket] .dock-button.menu-button .icon{width:20px;height:20px}#app[data-layout=pocket] .resource-strip{padding-right:136px}#app[data-layout=pocket] .dock-shell{display:block}#app[data-layout=pocket] .dock-nav{position:fixed;top:6px;right:6px;z-index:40;flex-direction:row;gap:4px;padding:0;border:0;background:none;box-shadow:none}#app[data-layout=pocket] .dock-button{min-height:36px;padding:4px 8px;font-size:12px}#app[data-layout=pocket] .dock-panel{position:fixed;left:0;right:0;bottom:0;max-height:72dvh;z-index:80;border-radius:20px 20px 0 0;transform:translateY(105%);transition:transform .25s ease}#app[data-layout=pocket].sheet-open .dock-panel{transform:none;box-shadow:0 -20px 50px #0009}#app[data-layout=pocket] .sheet-close{display:block;align-self:flex-end;border:0;background:none;color:var(--text-soft);font-size:14px;min-height:36px}#app[data-layout=pocket] .canvas-shell{padding:4px;border-radius:16px}#app[data-layout=pocket] #game-canvas,#app[data-layout=pocket] #game-canvas canvas{aspect-ratio:2 / 3}#app[data-layout=pocket] #game-canvas{width:auto;height:100%;max-height:100%}#app[data-layout=pocket] #game-canvas canvas{width:auto!important;height:100%!important}#app[data-layout=pocket] .scoreboard{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"friendly center hostile" "controls controls controls";gap:4px 8px;padding:6px 8px}#app[data-layout=pocket] .score-side.friendly{grid-area:friendly}#app[data-layout=pocket] .score-center{grid-area:center}#app[data-layout=pocket] .score-side.hostile{grid-area:hostile}#app[data-layout=pocket] .header-controls{display:none}#app[data-layout=pocket] .overlay-controls{display:flex;flex-direction:column;gap:8px;align-self:end;justify-self:end;margin:10px;pointer-events:auto;z-index:6}#app[data-layout=pocket] .overlay-controls .icon-button{min-width:52px;min-height:52px;background:#0a151ee0}#app[data-layout=pocket] .match-header{position:relative}#app[data-layout=pocket] .scoreboard .encounter-kicker{display:none}#app[data-layout=pocket] .encounter-name{font-size:13px;max-width:120px}#app[data-layout=pocket] .clock{font-size:18px}#app[data-layout=pocket] .next-wave,#app[data-layout=pocket] .side-label{font-size:12px}#app[data-layout=pocket] .route-intel{display:none}#app[data-layout=pocket] .sector-svg{width:600px;height:auto}#app[data-layout=pocket] .build-tray{padding:6px;gap:4px}#app[data-layout=pocket] .doctrine-row .eyebrow{display:none}#app[data-layout=pocket] .chip-button{min-height:34px;padding:4px 10px;font-size:12px}#app[data-layout=pocket] .commitment-meter{width:64px}#app[data-layout=pocket] .packet-row{--key-travel: 3px;padding:4px 4px 8px;grid-auto-columns:64px}#app[data-layout=pocket] .packet{min-height:66px}#app[data-layout=pocket] .tray-body{height:120px;gap:4px}#app[data-layout=pocket] .tray-details{font-size:12px;-webkit-line-clamp:1}#app[data-layout=pocket] .merge-copy p,#app[data-layout=pocket] .merge-copy .fine-print{display:none}#app[data-layout=pocket] .mission-bar{width:100%;border-radius:16px}#app[data-layout=pocket] .mission-bar .mission-hint{font-size:12px}#app[data-layout=pocket] .mission-bar .mission-button{min-height:48px;padding:8px 20px;font-size:18px}#app[data-layout=pocket] .announcement{font-size:24px}#app[data-layout=pocket] .launch-stamp{font-size:44px!important}#app[data-layout=pocket] .tutorial-bubble{flex-direction:column;align-items:stretch;gap:6px;padding:8px 10px}#app[data-layout=pocket] .tutorial-bubble .tutorial-actions{justify-content:flex-end}#app[data-layout=pocket] .debrief-stars{gap:6px}#app[data-layout=pocket] .debrief-star .icon{width:44px;height:44px}#app[data-layout=pocket] .mvp-card{flex-wrap:wrap}#app[data-layout=pocket] .mvp-stats{margin-left:0}#app[data-layout=pocket] .reward-grid{grid-template-columns:1fr}#app[data-layout=pocket] .reward-card{min-height:0}#app[data-layout=pocket] .debrief .mission-button{min-width:0;width:100%}@media (max-width: 760px){.mission-controls{flex-wrap:wrap}.mission-controls .mission-button,.mission-bar.running .mission-button{min-width:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#app.menu-mode .side-rail,#app.menu-mode .dock-shell{display:none}#app.menu-mode .play-layout{grid-template-columns:minmax(0,1fr)}#app.menu-mode .board-column{height:auto;grid-template-columns:minmax(0,1fr);grid-template-areas:"canvas"}#app.menu-mode .canvas-shell{min-height:min(640px,calc(100dvh - 80px))}.menu-card{pointer-events:auto;display:grid;justify-items:center;gap:14px;width:min(560px,calc(100% - 24px));padding:28px 24px;border-radius:24px;text-align:center;background:#0a151ef0;border:1px solid rgba(246,207,98,.35);box-shadow:0 24px 60px #00000080;animation:card-slide .45s cubic-bezier(.2,1.3,.4,1)}.menu-card h1{margin:0;font-size:clamp(30px,7vw,46px);line-height:1.05;letter-spacing:.04em;text-transform:uppercase;color:#f2e7c5}.menu-tagline{margin:0;font-size:17px;color:var(--text-soft)}.menu-steps{display:grid;gap:8px;width:100%;margin:0;padding:0;list-style:none;counter-reset:step}.menu-steps li{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;text-align:left;background:#ffffff0a;counter-increment:step}.menu-steps li:before{content:counter(step);display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:10px;background:var(--loot);color:#1b1405;font:900 16px/1 system-ui,sans-serif}.menu-steps b{min-width:64px;font-size:16px;color:#fff}.menu-steps span{font-size:15px;color:var(--text-soft)}.menu-card .mission-button{min-width:260px;min-height:56px;font-size:21px;justify-content:center}.menu-actions{display:grid;gap:8px;width:100%}.menu-actions .mission-button,.menu-actions .ui-button{width:100%;justify-content:center;text-align:center}.uncharted-row{display:flex;gap:8px;width:100%}.seed-input{flex:1;min-width:0;min-height:44px;padding:0 12px;border-radius:12px;border:1px solid rgba(134,193,214,.35);background:#040a0fe6;color:var(--text-main);font:600 15px system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}.seed-input::placeholder{text-transform:none;letter-spacing:0;color:var(--text-dim)}.uncharted-locked{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border-radius:14px;border:1px dashed rgba(134,193,214,.35);color:var(--text-soft);text-align:left;font-size:14px}.uncharted-locked .icon{width:20px;height:20px;color:var(--text-dim)}.modal-layer:has(.dialog-card){align-items:flex-end;background:linear-gradient(180deg,#03080c00 40%,#03080cb3)}.dialog-card{width:min(720px,calc(100vw - 24px));display:flex;gap:16px;align-items:flex-start;margin-bottom:4vh;border:2px solid color-mix(in srgb,var(--speaker-color) 60%,transparent);animation:card-slide .3s ease-out}.dialog-portrait{display:grid;place-items:center;width:72px;height:72px;flex:0 0 auto;border-radius:20px;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--speaker-color) 85%,#fff),var(--speaker-color));color:#0b1720;font:900 22px/1 system-ui,sans-serif;box-shadow:inset 0 -5px #00000040,0 0 24px color-mix(in srgb,var(--speaker-color) 45%,transparent)}.dialog-portrait.small{width:40px;height:40px;border-radius:12px;font-size:14px}.dialog-body{display:grid;gap:10px;min-width:0;flex:1}.dialog-speaker{font:800 14px/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--speaker-color)}.dialog-text{margin:0;font-size:19px;line-height:1.4;color:var(--text-main);animation:line-in .25s ease-out}@keyframes line-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.dialog-options{display:grid;gap:8px}.dialog-option{display:flex;align-items:center;gap:10px;min-height:46px;font-size:16px;text-align:left}.dialog-option:hover{border-color:var(--speaker-color)}.dialog-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.dialog-controls .dialog-options{order:-1;flex:1 1 100%}.dialog-skip{margin-right:auto;min-height:44px;display:inline-flex;align-items:center;gap:8px}.debrief-tip{margin:0;padding:12px 16px;border-radius:14px;border:1px solid rgba(246,207,98,.45);background:#f6cf621a;color:#f2e7c5;font-size:16px;line-height:1.4;text-align:left}.menu-story{display:grid;gap:8px;width:100%;padding:14px;border-radius:16px;border:1px solid rgba(246,207,98,.3);background:#ffffff08;text-align:left}.menu-story p{margin:0;color:var(--text-soft);font-size:15px}.pause-menu{width:min(380px,calc(100vw - 32px));display:grid;gap:10px;text-align:center;animation:card-slide .3s cubic-bezier(.2,1.3,.4,1)}.pause-menu h2{margin:0 0 4px}.pause-menu .mission-button,.pause-menu .ui-button{width:100%;min-height:48px;justify-content:center;display:inline-flex;align-items:center;gap:8px}.pause-menu .icon{width:20px;height:20px}.dialog-next{justify-self:end;min-height:44px;padding:8px 20px;font-size:16px;display:inline-flex;align-items:center;gap:8px}.comm-panel{align-self:start;justify-self:start;margin:10px;max-width:min(420px,calc(100% - 20px));display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:#060e14e6;border:1px solid color-mix(in srgb,var(--speaker-color) 55%,transparent);box-shadow:0 8px 24px #0006;animation:card-slide .25s ease-out}.comm-panel b{font:800 13px/1.2 system-ui,sans-serif;color:var(--speaker-color)}.comm-panel p{margin:2px 0 0;font-size:15px;line-height:1.35;color:var(--text-main)}.stat-bar.escort .stat-bar-fill{background:linear-gradient(90deg,#7a5cff,#c59cff)}.stat-bar.escort{height:16px}.stat-bar.escort .stat-bar-label,.stat-bar.escort .stat-bar-value{line-height:16px}#app[data-layout=pocket] .dialog-card{gap:10px;padding:14px;margin-bottom:2vh}#app[data-layout=pocket] .dialog-portrait{width:52px;height:52px;font-size:18px}#app[data-layout=pocket] .dialog-text{font-size:16px}#app[data-layout=pocket] .comm-panel p{font-size:13px}
