/* After-hours arcade finish. Viewport, camera and scrolling belong to immersive.css. */
:root { --polish-ink:#111a2a; --polish-panel:#202d42; --polish-raised:#293950; --polish-line:#51627a; --polish-cream:#f5efdf; --polish-muted:#b4c2d2; --polish-rose:#e9a5b5; --polish-mint:#bce5cc; --polish-gold:#efd298; }
body { color:var(--polish-cream); background:#111a2a; }
canvas { image-rendering:pixelated; }
button, summary { -webkit-tap-highlight-color:transparent; }
button:focus-visible, summary:focus-visible, a:focus-visible { outline:2px solid var(--polish-cream); outline-offset:3px; }
button { transition:background-color .15s,border-color .15s,box-shadow .15s; }
button:disabled { cursor:default; }
.site-header { border-color:#39485f; }
.site-header .brand strong, .section-heading h3 { color:var(--polish-cream); }
.site-header .nav-item, .site-header .sound-button, .brand small { color:var(--polish-muted); }
.site-header .nav-item.active { color:var(--polish-rose); }
.site-header button { min-height:44px; }
.eyebrow { color:var(--polish-mint); }

/* Lobby: crisp edges, legible labels, one clear launch action. */
body.immersive-game .start-screen { background:radial-gradient(ellipse at 12% 0%,#70607935,transparent 54%),radial-gradient(ellipse at 95% 100%,#426d6630,transparent 60%),linear-gradient(150deg,#1b263a,#111a2b 68%); }
body.immersive-game .lobby-topline { gap:12px; }
body.immersive-game .season-tag { color:#b5c3d4; font-size:9px; letter-spacing:1px; }
body.immersive-game .season-tag i { background:var(--polish-mint); box-shadow:none; }
body.immersive-game .coin-wallet { min-height:44px; padding:8px 12px; gap:9px; border:1px solid #8b7959; border-radius:6px; background:#30333b; color:#ffe2a8; box-shadow:inset 0 1px #ffffff0d,0 3px #0a1221; font-size:12px; }
body.immersive-game .coin-wallet > span:last-child { color:#ead4aa; }
body.immersive-game .lobby-brand { margin:12px 0 16px; }
body.immersive-game .campaign-lobby .lobby-brand h2 { font-size:clamp(30px,4vw,39px); line-height:1.2; letter-spacing:2px; color:var(--polish-cream); text-shadow:0 3px #090f1c; }
body.immersive-game .campaign-lobby .lobby-brand h2 span { color:var(--polish-rose); }
body.immersive-game .campaign-lobby .lobby-brand h2 i { color:var(--polish-gold); font-size:15px; }
body.immersive-game .campaign-lobby .pixel-subtitle { color:#bac5d4; font-size:8px; line-height:1.8; letter-spacing:1px; }
body.immersive-game .lobby-tabs { gap:4px; padding:4px; border-color:#46556f; border-radius:7px; background:#0f192b; box-shadow:inset 0 1px 3px #07101b55; }
body.immersive-game .lobby-tabs button { min-height:44px; font-size:9px; color:#acb9cc; gap:7px; border-radius:4px; }
body.immersive-game .lobby-tabs strong { font-size:12px; letter-spacing:.3px; }
body.immersive-game .lobby-tabs button.active { background:#35445b; color:var(--polish-rose); box-shadow:inset 0 -2px var(--polish-rose),inset 0 1px #ffffff12; }
body.immersive-game .lobby-tabs button.active strong { color:var(--polish-cream); }
body.immersive-game .lobby-panel { scrollbar-color:#75849a #172238; }
body.immersive-game #lobby-scroll-hint { color:#bbc9d7; font-size:11px; }
body.immersive-game .hero-stage { height:184px; border:1px solid #687186; border-radius:8px; background:#23384b; box-shadow:inset 0 0 0 3px #101c2e66,0 4px #09132150; }
body.immersive-game .hero-stage > canvas#lobby-map-scene { opacity:.94; }
body.immersive-game .hero-stage-shade { background:linear-gradient(90deg,#111f2b12 18%,#13203275 49%,#111c30eb 100%),linear-gradient(0deg,#122033d9,transparent 55%); }
body.immersive-game .hero-serial { position:absolute; left:13px; top:12px; z-index:2; padding:4px 6px; color:#e0e9e6; background:#122235bc; border-left:2px solid var(--character-accent); font:9px/1.3 var(--sans); letter-spacing:1.2px; }
body.immersive-game .hero-pedestal { left:calc(27% - 52px); bottom:20px; width:104px; height:19px; border-width:1px; border-radius:50%; background:#101e2ca8; box-shadow:0 3px #0d152977,0 0 22px #c7e6cf18; }
body.immersive-game .campaign-lobby .hero-stage .character-preview { left:calc(27% - 60px); bottom:26px; width:120px; height:120px; filter:drop-shadow(0 5px 0 #09152544); }
body.immersive-game .hero-caption { left:51%; right:12px; top:30px; }
body.immersive-game .hero-caption > span { color:#c9d6db; font:9px/1.3 var(--sans); letter-spacing:1.1px; }
body.immersive-game .hero-caption strong { margin:6px 0; color:#fff3e0; font-size:30px; line-height:1.2; letter-spacing:2px; text-shadow:0 2px #122034; }
body.immersive-game .hero-caption .hero-specialty { display:inline-block; padding:2px 6px; color:#e8b9c3; background:#352b3dba; border-left:2px solid var(--polish-rose); font:10px/1.5 var(--sans); letter-spacing:.5px; }
body.immersive-game .hero-weapon { display:flex; align-items:center; gap:7px; min-width:0; margin-top:7px; }
body.immersive-game .hero-weapon canvas { flex:0 0 40px; width:40px; height:40px; background:#152437c9; border:1px solid #5d71856b; border-radius:5px; }
body.immersive-game .hero-caption small { color:#e3dfd4; font-size:11px; line-height:1.5; }
body.immersive-game .hero-map-badge { bottom:10px; right:10px; padding:4px 7px; border:1px solid #77949a55; background:#122335dc; color:#d0e6de; font-size:9px; letter-spacing:.5px; }
body.immersive-game .campaign-lobby .starter-label { margin-bottom:9px; color:#e1e6e9; font-size:12px; }
body.immersive-game .campaign-lobby .starter-label > span { color:#b1c0d2; font:10px var(--sans); letter-spacing:0; }
body.immersive-game .campaign-lobby .starting-weapons { gap:7px; }
body.immersive-game .campaign-lobby .starter-weapon.character-option { position:relative; min-height:100px; gap:4px; padding:7px 2px; border-color:#4c5e77; border-radius:6px; background:linear-gradient(#29384e,#202d42); box-shadow:inset 0 1px #ffffff09; }
body.immersive-game .campaign-lobby .character-option canvas { width:48px; height:48px; }
body.immersive-game .campaign-lobby .character-option strong { color:#eeeade; font-size:12px; line-height:1.3; letter-spacing:.3px; }
body.immersive-game .campaign-lobby .character-option small { color:#b6c5d7; font-size:10px; line-height:1.3; }
body.immersive-game .campaign-lobby .character-option.selected { border-color:var(--weapon-color); background:linear-gradient(#3e4358,#303c50); box-shadow:inset 0 -3px var(--weapon-color),0 3px #09132266; }
body.immersive-game .campaign-lobby .character-option.selected::after { content:'✓'; position:absolute; top:4px; right:4px; display:grid; place-items:center; width:15px; height:15px; color:#172335; background:var(--weapon-color); border-radius:2px; font:700 11px/1 var(--sans); }
body.immersive-game .campaign-lobby .character-option.selected strong { color:#fff5e5; }
body.immersive-game .campaign-lobby .character-option.selected small { color:#e6d8df; }
body.immersive-game .campaign-lobby .starter-description { min-height:32px!important; margin:9px 0 0!important; color:#becbd9!important; font-size:11px!important; line-height:1.65!important; }
body.immersive-game .campaign-lobby .starting-loadout { color:#cce9d5!important; font-size:11px!important; background:#253e384f; }
body.immersive-game .equipment-guide-link { min-height:44px; padding:10px 12px; border-color:#536a7e; background:#22394b; color:#d4e6e7; font-size:11px; line-height:1.6; }
body.immersive-game .selected-map-button { min-height:68px; gap:11px; padding:9px 11px; border-color:#596980; background:linear-gradient(110deg,#293c50,#223147); box-shadow:inset 0 1px #ffffff0b; }
body.immersive-game #selected-map-preview { flex:0 0 64px; width:64px; height:43px; border:1px solid #74889a80; border-radius:4px; background:#1b3042; }
body.immersive-game .selected-map-button small { color:#bacbd9; font-size:10px; letter-spacing:.4px; margin-bottom:4px; }
body.immersive-game .selected-map-button strong { color:var(--polish-cream); font-size:13px; }
body.immersive-game .selected-map-button .map-area { color:#b9c7d8; font:10px/1.5 var(--sans); white-space:normal; text-align:right; max-width:88px; }
body.immersive-game .selected-map-button > b { color:var(--polish-mint); }
body.immersive-game .campaign-lobby .mobile-modes .difficulty { min-height:48px; padding:9px; border-color:#4f627b; color:#c2cddd; background:#1c2b40; font-size:12px; }
body.immersive-game .campaign-lobby .mobile-modes .difficulty span { color:inherit; font:10px/1.5 var(--sans); margin-left:6px; }
body.immersive-game .campaign-lobby .mobile-modes .difficulty.active { border-color:#a4cbb7; background:#314c48; color:#e5f4e6; box-shadow:inset 0 -2px #90bca8; }
body.immersive-game .lobby-launch { background:linear-gradient(transparent,#142033 22%); }
body.immersive-game .campaign-lobby #start-button { min-height:54px; color:#183b35; background:linear-gradient(#d0eedb,#abd6c0); border:1px solid #e4f6e9; border-radius:6px; box-shadow:0 4px #527d70,inset 0 1px #ffffff77; font-size:16px; font-weight:800; letter-spacing:.6px; }
body.immersive-game .campaign-lobby #start-button:active { transform:translateY(2px); box-shadow:0 2px #527d70; }
body.immersive-game .lobby-bottomline { color:#b2c0d0; margin-top:8px; font-size:10px; gap:6px; }
body.immersive-game .lobby-bottomline > div { gap:5px; }
body.immersive-game .lobby-bottomline button { min-width:44px; min-height:44px; padding:8px 4px; color:#cbd6e1; font-size:11px; }
body.immersive-game .panel-heading > span { color:var(--polish-mint); font:10px/1.5 var(--sans); letter-spacing:1.1px; }
body.immersive-game .panel-heading h3 { color:var(--polish-cream); font-size:21px; line-height:1.5; }
body.immersive-game .campaign-lobby .panel-heading p { color:#bac8d7; font-size:12px; line-height:1.75; }
body.immersive-game .map-card { border-color:#50627a; background:#233349; border-radius:7px; box-shadow:0 3px #0c14234d; }
body.immersive-game .map-card.selected { border-color:var(--district-color); box-shadow:0 0 0 1px var(--district-color),0 3px #0c14234d; }
body.immersive-game .map-card-art { height:112px; }
body.immersive-game .map-card-info { padding:12px; }
body.immersive-game .map-card-info > strong { color:var(--polish-cream); font-size:14px; }
body.immersive-game .map-card-info > small { color:#b5c5d8; font-size:10px; line-height:1.6; }
body.immersive-game .map-card-bottom { flex-wrap:wrap; gap:5px; }
body.immersive-game .map-card-bottom em, body.immersive-game .map-card-status { font-size:10px; line-height:1.4; color:#c1cedc; }
body.immersive-game .map-selection-note { color:#c2d0de; font-size:12px; }

/* Permanent research keeps its category colors but reads like the same game. */
body.immersive-game .research-summary { border-color:#53647c; background:#23354b; }
body.immersive-game .research-summary small { color:#bccad9; font-size:11px; }
body.immersive-game .research-summary b { color:#ffe0a3; font-size:18px; }
body.immersive-game .meta-filters { background:#172337f5; }
body.immersive-game .meta-filters button { min-height:44px; font-size:11px; color:#c8d3df; border-color:#52667e; background:#24354a; }
body.immersive-game .meta-filters button span { color:#b2c2d4; font-size:10px; }
body.immersive-game .meta-filters button[aria-pressed='true'] { border-color:#c4b793; background:#4b493e; color:#fff0c7; }
body.immersive-game .campaign-lobby .meta-category-status { color:#c0cddd!important; font-size:11px!important; }
body.immersive-game .meta-card { background:linear-gradient(#293b51,#223248); border-color:#52637d; border-left-color:var(--track-color); padding:14px; }
body.immersive-game .meta-icon { width:36px; height:36px; background:#182a3f; border:1px solid #60718b66; border-radius:5px; }
body.immersive-game .meta-card h4 { font-size:13px; color:#f0ecdf; }
body.immersive-game .meta-card-top small { color:#bdcbdc; font-size:10px; }
body.immersive-game .meta-card-top > b { color:#f1d7a3; font-size:12px; }
body.immersive-game .meta-card-top > b i { color:#bcc8d5; font-size:10px; }
body.immersive-game .campaign-lobby .meta-card .meta-description { color:#c0cddd!important; font-size:11px!important; line-height:1.7!important; }
body.immersive-game .meta-price-tag { color:#d5c5a5; font-size:10px; }
body.immersive-game .meta-pips i { height:5px; background:#526079; }
body.immersive-game .meta-pips i.filled { background:#edc883; }
body.immersive-game .meta-card-bottom > span { color:#d5dfe6; font-size:11px; }
body.immersive-game .meta-card-bottom > button { min-height:44px; min-width:86px; padding:9px 10px; color:#ffe3ae; border-color:#b29969; background:#544838; font-size:11px; box-shadow:inset 0 1px #ffffff0d; }
body.immersive-game .meta-card-bottom > button:disabled { color:#b1bccb; background:#29384c; border-color:#59667a; box-shadow:none; }
body.immersive-game .meta-card.maxed { border-color:#92a688; }
body.immersive-game .meta-card.maxed .meta-card-bottom > button { color:#d6e8c7; }
body.immersive-game .meta-price-guide { color:#e5d2ab; border-color:#83765b; background:#30353c; font-size:11px; }
body.immersive-game .meta-price-guide summary { min-height:44px; line-height:1.7; }
body.immersive-game .meta-price-guide h4 { color:#eadabd; font-size:11px; }
body.immersive-game .meta-price-ladder > span { background:#42423f; }
body.immersive-game .meta-price-ladder small { color:#d3c8b4; font-size:10px; }
body.immersive-game .campaign-lobby .meta-price-guide p { color:#d3c8b4!important; font-size:10px!important; line-height:1.7!important; }
body.immersive-game .campaign-lobby .economy-note, body.immersive-game .campaign-lobby .save-note { font-size:11px; color:#b7c6d7; line-height:1.7; }
body.immersive-game .campaign-lobby .meta-migration-note { font-size:11px!important; }
body.immersive-game .reset-progress-link { min-height:44px; color:#d4afb9; font-size:11px; }

/* Battle overlays retain their existing positions and footprints. */
body.immersive-game .screen-tool, body.immersive-game #pause-button, body.immersive-game .health-block, body.immersive-game .run-clock { border-color:#8498b077; background:#14243ce8; box-shadow:inset 0 1px #ffffff12,0 2px #08142144; color:#f3eedf; border-radius:6px; }
body.immersive-game .health-block { padding:5px 7px; }
body.immersive-game .hp-title { font:600 10px/12px var(--sans); margin-bottom:3px; color:#f4eddf; }
body.immersive-game .hp-title b { font:10px/12px var(--sans); font-variant-numeric:tabular-nums; }
body.immersive-game .health-meter { height:4px; background:#47516a; }
body.immersive-game .health-meter i { background:linear-gradient(90deg,#d888a2,#edb3bc); }
body.immersive-game .defense-status { margin-top:2px; color:#d0ebe8; font:9px/10px var(--sans); }
body.immersive-game .weapon-slot { border-color:#6a7c957a; background:#17283fe0; border-radius:5px; box-shadow:inset 0 1px #ffffff0b; }
body.immersive-game .weapon-slot.owned { border-color:var(--weapon-color); }
body.immersive-game .weapon-slot.locked canvas { opacity:.4; }
body.immersive-game .weapon-slot span { right:2px; bottom:1px; padding:1px 2px; color:#f8efdf; background:#101d30ed; font:9px/11px var(--sans); }
body.immersive-game .weapon-slot.evolved { border-color:#f1d798; box-shadow:inset 0 -2px #eacb79; }
body.immersive-game .weapon-slot.evolved span { color:#ffe5a6; }
body.immersive-game .mobile-objective { color:#f0e8e5; font:11px/14px var(--sans); letter-spacing:0; text-shadow:0 1px 3px #081426,0 0 5px #081426; }
body.immersive-game .boss-hud { border-color:#b78a9d88; background:#24243ce8; border-radius:6px; }
body.immersive-game .boss-hud span { color:#f4dbe2; font:600 10px/14px var(--sans); }
body.immersive-game .boss-hud .meter { background:#544254; }
body.immersive-game .boss-hud .meter i { background:linear-gradient(90deg,#bf7895,#e6a3b5); }
body.immersive-game .xp-bar i { background:#b1dfbf; box-shadow:none; }
body.immersive-game .control-center #mobile-level, body.immersive-game .control-center #xp-label { color:#e5ede7; font:10px/1.5 var(--sans); }
body.immersive-game .joystick { border-color:#d6e8df88; background:#25455b40; }
body.immersive-game .joystick span { background:#c0dace8f; border-color:#e7f7e1aa; }
body.immersive-game #touch-dash { color:#f3fff2; border-color:#ccebd0b0; background:#68998ac9; text-shadow:0 1px #355b53; }
body.immersive-game .toast { color:#eff2e7; border-color:#8caeaa; background:#263b4df5; font:12px/1.6 var(--sans); box-shadow:0 4px 12px #08131c44; }

/* Upgrade cards: icon, type, benefit and pairing have distinct visual levels. */
body.immersive-game .modal-layer { background:#071322b8; }
body.immersive-game .game-modal { border:1px solid #8993a4; border-radius:9px; background:linear-gradient(155deg,#2c3a50,#19283c 72%); color:var(--polish-cream); box-shadow:inset 0 0 0 3px #101d2c66,0 16px 48px #050e1d99; }
body.immersive-game .game-modal .modal-eyebrow { color:#c6dad5; font:10px/1.6 var(--sans); letter-spacing:1.2px; }
body.immersive-game .game-modal h2 { color:#fff0df; line-height:1.5; }
body.immersive-game .game-modal > p { color:#c8d1df; font-size:12px; line-height:1.75; }
body.immersive-game .game-modal .upgrade-option { --card-accent:var(--polish-rose); position:relative; border:1px solid #6e7b90; border-left:3px solid var(--card-accent); border-radius:6px; background:linear-gradient(145deg,#344259,#28364c); color:#f9f1e4; box-shadow:inset 0 1px #ffffff0c,0 3px #101c2d66; }
body.immersive-game .game-modal .support-upgrade { --card-accent:var(--polish-mint); background:linear-gradient(145deg,#304849,#263b44); }
body.immersive-game .game-modal .basic-upgrade { --card-accent:#b6c9ec; }
body.immersive-game .game-modal .evolution-card { --card-accent:#f2d58b; border-color:#c7a76e; background:linear-gradient(145deg,#544a3e,#3b3543); box-shadow:inset 0 0 0 1px #efd48e22,0 3px #101c2d66; }
body.immersive-game .game-modal .upgrade-option > canvas, body.immersive-game .game-modal .upgrade-option > .support-icon { border:1px solid #8494a755; border-radius:5px; background:#18293bb3; color:#d3c4df; }
body.immersive-game .game-modal .upgrade-num { color:#d4c6dd; font:10px/1.4 var(--sans); }
body.immersive-game .game-modal .upgrade-option strong { color:#fff2de; font-size:15px; line-height:1.5; }
body.immersive-game .game-modal .upgrade-option small { color:#cbd5e1; font-size:12px; line-height:1.65; }
body.immersive-game .game-modal .upgrade-option .upgrade-pairing { display:flex; align-items:flex-start; gap:6px; min-height:0; margin-top:7px; padding-top:6px; border-top:1px solid #a6bfcc33; color:#cee8dd; font-size:11px; }
body.immersive-game .game-modal .upgrade-pairing canvas { position:static; flex:0 0 20px; width:20px; height:20px; margin:0; border:0; background:transparent; }
body.immersive-game .game-modal .upgrade-pairing > span { min-width:0; overflow-wrap:anywhere; }
body.immersive-game .game-modal .upgrade-subtitle { color:#d0dce5; }
body.immersive-game .game-modal .upgrade-subtitle > span { color:var(--polish-mint); padding:0 2px; font-weight:700; }
body.immersive-game .game-modal .upgrade-kind { position:absolute; top:9px; right:9px; padding:3px 5px; background:#142335b8; border:1px solid #b5c4cd33; color:var(--card-accent); font:600 10px/1.2 var(--sans); border-radius:3px; }
body.immersive-game .game-modal .evolution-card .upgrade-num, body.immersive-game .game-modal .evolution-card .upgrade-pairing { color:#f6dfa9; }
body.immersive-game .game-modal .rank-dots { gap:4px; }
body.immersive-game .game-modal .rank-dots i { height:5px; background:#57677e; }
body.immersive-game .game-modal .rank-dots i.filled { background:var(--card-accent,var(--polish-rose)); }
body.immersive-game .game-modal .upgrade-footnote { color:#bfccda; font:10px/1.65 var(--sans); letter-spacing:.2px; }
body.immersive-game .game-modal .primary-button { min-height:44px; color:#193e36; background:#bedfcb; border-color:#e0f0db; box-shadow:0 3px #527c6b; }
body.immersive-game .game-modal .secondary-button { min-height:44px; background:#24364c; border-color:#8a9bb3; color:#e2e8ec; }
body.immersive-game .game-modal .result-lobby-link { min-height:44px; color:#cfdfeb; font-size:12px; }
body.immersive-game .game-modal .weapon-next, body.immersive-game .game-modal .recipe-progress { background:#1a2b40; border-color:#64758c; color:#d3dfeb; }
body.immersive-game .game-modal .recipe-row { color:#dde5e8; font-size:12px; }
body.immersive-game .game-modal .recipe-progress > p { color:#c2e5d1; font-size:11px; }
body.immersive-game .support-inventory-item { border-color:#5b6d84; background:#293c51; }
body.immersive-game .support-inventory-item h3 { color:#f1eddf; font-size:13px; }
body.immersive-game .support-inventory-item p { color:#c3d0df; font-size:11px; }
body.immersive-game .support-inventory-item small { color:#e5d2aa; font-size:10px; }
body.immersive-game .coin-reward { border-color:#a8926855; background:#b4994920; }
body.immersive-game .coin-reward > span, body.immersive-game .coin-reward small { font-size:11px; color:#e0d0ae; }
body.immersive-game .reward-breakdown { gap:8px; flex-wrap:wrap; color:#c4cedb; font-size:10px; }
body.immersive-game .result-stats span { color:#c0cddd; font-size:11px; }

/* Handbook and collections share the night palette; their page scrolling is untouched. */
body .secondary-view, body.mobile-game .secondary-view { background:#172337; color:#e9e9de; border:1px solid #41546d; }
body .secondary-view .secondary-toolbar { position:sticky; top:0; z-index:5; display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:56px; margin:0 0 22px; padding:6px 0; background:#172337fa; border-bottom:1px solid #52657b; }
body .secondary-view .secondary-back { flex-shrink:0; min-height:44px; padding:10px 13px; border:1px solid #71849b; border-radius:5px; background:#293d51; color:#e9eede; font:600 12px var(--sans); }
body .secondary-view .secondary-toolbar > span { color:#b3cad4; font:9px/1.6 var(--sans); letter-spacing:.6px; text-align:right; }
body .secondary-view #equipment-guide { scroll-margin-top:112px; }
body .secondary-heading h2 { color:#f6efdf; line-height:1.5; }
body .secondary-heading p { color:#becbdc; font-size:13px; line-height:1.8; }
body .secondary-view .eyebrow { color:#bcdccc; font:10px/1.6 var(--sans); letter-spacing:1px; }
body .secondary-view .section-heading h3 { color:#f4eadd; font-size:16px; line-height:1.6; }
body .secondary-view .section-heading > span { color:#c3d0de; font-size:11px; white-space:normal; }
body .secondary-view .collection-tabs button { min-height:44px; border-color:#5f7188; background:#24384c; color:#ced9e6; }
body .secondary-view .collection-tabs button[aria-pressed='true'] { border-color:#d6a6b9; background:#554454; color:#fff1e8; box-shadow:inset 0 -2px #d5a0b6; }
body .secondary-view .enemy-card, body .secondary-view .guide-grid article { border-color:#53657e; background:#243449; box-shadow:0 3px #0f192a55; }
body .secondary-view .enemy-card h3, body .secondary-view .guide-grid h3 { color:#f3ecdf; line-height:1.6; }
body .secondary-view .enemy-card p, body .secondary-view .guide-grid p { color:#c5d1df; font-size:12px; line-height:1.8; }
body .secondary-view .enemy-type, body .secondary-view .guide-grid article > span { color:#e1b5c2; font:10px/1.6 var(--sans); letter-spacing:.4px; }
body .secondary-view .enemy-card .enemy-tip { color:#cbe6d6; background:#1c2c3e; border-color:#657888; font-size:11px; line-height:1.7; }
body .secondary-view .encounter-art { border:1px solid #5e718155; background:radial-gradient(ellipse at 50% 65%,#50627988,#1c2c41 75%); }
body .secondary-view .encounter-art canvas { background:transparent; }
body .secondary-view .encounter-art > span { color:#d4e0e5; background:#142338e8; border:1px solid #71879a55; font-size:10px; }
body .secondary-view .boss-route li { background:#25354b; border-color:#596980; border-top-color:var(--encounter-color); }
body .secondary-view .boss-route b { color:#efd4a5; }
body .secondary-view .boss-route span { color:#bbccdb; font-size:10px; }
body .secondary-view .boss-route strong { color:#eee9df; font-size:12px; }
body .secondary-view .boss-queue-note { color:#bfccdb; font-size:12px; line-height:1.8; }
body .secondary-view .weapon-catalog-card, body .secondary-view .support-catalog-card { background:#25364b; border-color:#566b83; border-top-color:var(--weapon-color); border-radius:6px; align-items:flex-start; }
body .secondary-view .weapon-catalog-card canvas, body .secondary-view .support-catalog-card canvas { background:#192a3e; border:1px solid #6b80955e; border-radius:5px; }
body .secondary-view .weapon-catalog-card h3, body .secondary-view .support-catalog-card h3 { color:#f7eddf; font-size:14px; line-height:1.5; }
body .secondary-view .weapon-catalog-card p, body .secondary-view .support-catalog-card p { color:#c7d3df; font-size:12px; line-height:1.8; }
body .secondary-view .support-catalog-card small { color:#c4e2cf; font-size:11px; }
body .secondary-view .catalog-index { display:block; margin-bottom:6px; color:#acbfd2; font:9px/1.5 var(--sans); letter-spacing:1.1px; }
body .secondary-view .evolution-recipe { border-color:#71869a66; color:#d2c0d4; font-size:11px; line-height:1.8; }
body .secondary-view .evolution-recipe strong { color:#f0d8a2; }
body .secondary-view .equipment-intro { color:#becfdf; font-size:12px; }
body .secondary-view .guide-note { background:#243c43; border:1px solid #72938a; border-radius:6px; padding:12px; color:#d5e8d8; font-size:12px; line-height:1.8; }
body .secondary-view .text-button { min-height:44px; color:#e8c2cf; font-size:13px; }

@media (max-width:520px) {
  body.immersive-game .lobby-brand { margin:8px 0 12px; }
  body.immersive-game .lobby-tabs { margin-bottom:10px; }
  body.immersive-game .hero-stage { height:156px; margin-bottom:10px; }
  body.immersive-game .hero-caption { top:17px; left:50%; }
  body.immersive-game .hero-caption strong { font-size:26px; margin:4px 0; }
  body.immersive-game .hero-weapon { gap:6px; margin-top:5px; }
  body.immersive-game .hero-weapon canvas { flex-basis:32px; width:32px; height:32px; }
  body.immersive-game .campaign-lobby .hero-stage .character-preview { left:calc(27% - 54px); bottom:23px; width:108px; height:108px; }
  body.immersive-game .hero-pedestal { bottom:17px; }
  body.immersive-game .campaign-lobby .starter-picker { margin-bottom:8px; }
  body.immersive-game .campaign-lobby .starter-label { margin-bottom:7px; }
  body.immersive-game .campaign-lobby .starting-weapons { gap:6px; }
  body.immersive-game .campaign-lobby .starter-weapon.character-option { min-height:88px; gap:3px; padding:5px 2px; }
  body.immersive-game .campaign-lobby .character-option canvas { width:46px; height:46px; }
  body.immersive-game .campaign-lobby .character-option strong { font-size:11px; }
  body.immersive-game .campaign-lobby .character-option small { font-size:9px; }
  body.immersive-game .campaign-lobby .starter-description { margin-top:6px!important; min-height:30px!important; }
  body.immersive-game .equipment-guide-link { margin:6px 0 8px; }
  body.immersive-game .selected-map-button { min-height:60px; padding:7px 10px; }
  body.immersive-game .campaign-lobby .mobile-modes { margin-top:8px; }
  body.immersive-game .lobby-bottomline > span { font-size:9px; }
  body.immersive-game .map-card-info { padding:10px; }
  body.immersive-game .game-modal .upgrade-option { min-height:120px; padding:32px 12px 12px 72px; text-align:left; }
  body.immersive-game .game-modal .upgrade-option > canvas, body.immersive-game .game-modal .upgrade-option > .support-icon { position:absolute; left:13px; top:35px; width:44px; height:44px; margin:0; }
  body.immersive-game .game-modal .upgrade-num { position:static; margin:0 0 3px; text-align:left; max-width:none; }
  body.immersive-game .game-modal .upgrade-kind { top:8px; right:10px; }
  body.immersive-game .game-modal .upgrade-option strong { font-size:15px; }
  body.immersive-game .game-modal .upgrade-option small { font-size:11px; }
  body .secondary-view .bestiary { gap:10px; }
  body .secondary-view .enemy-card { padding:12px; }
  body .secondary-view .weapon-research .section-heading { flex-wrap:wrap; gap:4px; }
}
@media (max-width:359px) {
  body.immersive-game .campaign-lobby .character-option canvas { width:44px; height:44px; }
  body.immersive-game .campaign-lobby .starter-label > span { font-size:9px; }
  body.immersive-game .lobby-tabs button { gap:4px; }
  body.immersive-game .lobby-tabs strong { font-size:11px; }
  body.immersive-game .lobby-bottomline { flex-wrap:wrap; justify-content:center; gap:0; }
  body.immersive-game .lobby-bottomline > span { display:none; }
  body.immersive-game .lobby-bottomline > div { justify-content:space-between; width:100%; }
  body.immersive-game .selected-map-button .map-area { max-width:60px; font-size:9px; }
  body.immersive-game .campaign-lobby .mobile-modes .difficulty span { display:block; margin:3px 0 0; }
  body.immersive-game .mobile-objective { font-size:10px; }
  body.immersive-game .game-modal { padding:16px 12px; }
  body.immersive-game .game-modal .upgrade-option { padding-left:63px; }
  body.immersive-game .game-modal .upgrade-option > canvas, body.immersive-game .game-modal .upgrade-option > .support-icon { left:10px; width:40px; height:40px; }
}
@media (min-width:521px) {
  body.immersive-game .game-modal .upgrade-option { padding:39px 12px 14px; text-align:center; }
  body.immersive-game .game-modal .upgrade-option > canvas, body.immersive-game .game-modal .upgrade-option > .support-icon { position:static; width:48px; height:48px; margin:0 auto 9px; }
}
@media (max-height:640px) and (orientation:portrait) {
  body.immersive-game .lobby-brand { margin:6px 0 10px; }
  body.immersive-game .campaign-lobby .lobby-brand h2 { font-size:29px; }
  body.immersive-game .campaign-lobby .starter-weapon.character-option { min-height:94px; }
  body.immersive-game .campaign-lobby #start-button { min-height:48px; font-size:14px; }
  body.immersive-game .lobby-launch { padding-top:8px; }
}
@media (orientation:landscape) and (max-height:600px) {
  body.immersive-game .season-tag { font-size:8px; letter-spacing:.2px; }
  body.immersive-game .lobby-brand { margin-top:12px; }
  body.immersive-game .campaign-lobby .lobby-brand h2 { font-size:33px; }
  body.immersive-game .campaign-lobby .pixel-subtitle { font-size:8px; }
  body.immersive-game .lobby-tabs { padding:0; }
  body.immersive-game .lobby-tabs button { min-height:44px; gap:4px; font-size:8px; }
  body.immersive-game .lobby-tabs strong { font-size:11px; }
  body.immersive-game .campaign-lobby .starter-weapon.character-option { min-height:94px; }
  body.immersive-game .lobby-bottomline { flex-wrap:wrap; gap:0; }
  body.immersive-game .lobby-bottomline > div { gap:3px; }
  body.immersive-game .lobby-bottomline button { min-height:44px; font-size:10px; }
  body.immersive-game .game-modal .upgrade-option { padding:35px 11px 12px; text-align:center; }
  body.immersive-game .game-modal .upgrade-option > canvas, body.immersive-game .game-modal .upgrade-option > .support-icon { position:static; width:40px; height:40px; margin:0 auto 8px; }
  body.immersive-game .game-modal .upgrade-num { text-align:center; }
  body.immersive-game .game-modal .upgrade-option strong { font-size:14px; }
  body.immersive-game .game-modal .upgrade-option small { font-size:11px; }
}
@media (hover:hover) and (pointer:fine) {
  body.immersive-game .lobby-tabs button:hover, body.immersive-game .screen-tool:hover { background:#3a4d65; }
  body.immersive-game .campaign-lobby .character-option:hover { border-color:var(--weapon-color); background:#36465d; transform:translateY(-1px); }
  body.immersive-game .selected-map-button:hover, body.immersive-game .map-card:hover { border-color:#bfd6d2; }
  body.immersive-game .game-modal .upgrade-option:hover { border-color:var(--card-accent); background:#3b4a60; box-shadow:inset 0 0 0 1px var(--card-accent),0 3px #101c2d66; }
  body.immersive-game .campaign-lobby #start-button:hover { background:#d4efdd; }
}
@media (prefers-reduced-motion:reduce) {
  button, .character-option, .research-progress i { transition:none!important; }
  body.immersive-game .campaign-lobby .character-option:hover, body.immersive-game .campaign-lobby #start-button:active { transform:none; }
}
