@charset "UTF-8";:root{--bg-color: #000000;--text-color: #FFFFFF;--text-area-color: #0a0a0a;--border-color: rgba(255, 255, 255, .2);--border-color-strong: rgba(255, 255, 255, .45);--border-color-subtle: rgba(255, 255, 255, .1);--theme-purple: #6a4a8a;--theme-purple-glow: rgba(106, 74, 138, .4);--theme-purple-light: #9a8ab0;--theme-purple-mid: #c4b8d8;--theme-purple-lighter: #e0d0f0;--nav-bg: #0a0515;--theme-purple-a10: rgba(106, 74, 138, .1);--theme-purple-a15: rgba(106, 74, 138, .15);--theme-purple-a20: rgba(106, 74, 138, .2);--theme-purple-a25: rgba(106, 74, 138, .25);--theme-purple-a30: rgba(106, 74, 138, .3);--theme-purple-a35: rgba(106, 74, 138, .35);--theme-purple-a40: rgba(106, 74, 138, .4);--theme-purple-a50: rgba(106, 74, 138, .5);--theme-purple-a60: rgba(106, 74, 138, .6);--theme-purple-a70: rgba(106, 74, 138, .7);--theme-purple-a80: rgba(106, 74, 138, .8);--theme-purple-dark: rgba(42, 26, 58, .3);--theme-purple-dark-hover: rgba(52, 36, 68, .5);--theme-purple-dark-strong: rgba(42, 26, 58, .5);--theme-purple-dark-hover-strong: rgba(52, 36, 68, .7);--nav-bg-a60: rgba(10, 5, 21, .6);--nav-bg-a90: rgba(10, 5, 21, .9);--action-success: #50ff88;--action-success-bg: rgba(0, 180, 80, .25);--action-success-border: rgba(0, 220, 100, .5);--action-warning: #ffcc33;--action-danger: #ff6666;--action-danger-bg: rgba(180, 20, 20, .2);--action-danger-border: rgba(220, 50, 50, .4);--effect-burn: #ff6622;--effect-poison: #44ff22;--effect-slow: #4488ff;--game-primary: #444444;--game-secondary: #666666;--game-accent-orange: #FF9A66;--game-success: #00AA00;--game-error: #AA0000;--game-health: #ff4444;--game-gold: #ffd700;--game-gold-a08: rgba(255, 215, 0, .08);--game-gold-a15: rgba(255, 215, 0, .15);--game-gold-a25: rgba(255, 215, 0, .25);--game-gold-a40: rgba(255, 215, 0, .4);--game-gold-a50: rgba(255, 215, 0, .5);--game-gold-a60: rgba(255, 215, 0, .6);--game-victory: #00ff88;--game-defeat: #ff4444;--game-wave-text: #ff8888;--game-star-filled: #ffd700;--game-star-empty: rgba(255, 255, 255, .2);--enemy-color-basic: #ff4444;--enemy-color-fast: #ffff00;--enemy-color-heavy: #4444ff;--enemy-color-flying: #44ffff;--enemy-color-shield: #4488ff;--enemy-color-boss: #ff00ff;--enemy-color-swarm: #44ff44;--enemy-glow-basic: rgba(255, 68, 68, .6);--enemy-glow-fast: rgba(255, 255, 0, .6);--enemy-glow-heavy: rgba(68, 68, 255, .6);--enemy-glow-flying: rgba(68, 255, 255, .6);--enemy-glow-boss: rgba(255, 0, 255, .7);--enemy-glow-shielded: rgba(68, 136, 255, .6);--enemy-glow-swarm: rgba(68, 255, 68, .6);--tower-color-basic: #ff6600;--tower-color-sniper: #9900ff;--tower-color-splash: #00ff00;--tower-color-slow: #4488ff;--tower-color-chain: #ffdd00;--tower-color-mortar: #664422;--tower-glow-basic: rgba(255, 102, 0, .5);--tower-glow-sniper: rgba(153, 0, 255, .5);--tower-glow-splash: rgba(0, 255, 0, .5);--tower-glow-slow: rgba(68, 136, 255, .6);--tower-glow-chain: rgba(255, 221, 0, .7);--tower-glow-mortar: rgba(255, 100, 34, .4);--score-multiplier: #88aaff;--text-disabled: #8a8a9a;--theme-cyan: #00ffff;--theme-orange: #dd6600;--rainbow-red: #FF0000;--rainbow-orange: #FFA500;--rainbow-yellow: #FFFF00;--rainbow-green: #008000;--rainbow-gold: gold;--panel-blue-bg: rgba(20, 60, 120, .3);--panel-blue-hover: rgba(30, 90, 160, .45);--panel-blue-border: rgba(100, 200, 255, .3);--panel-blue-border-hover: rgba(100, 200, 255, .6);--panel-blue-accent: #88ddff;--panel-neutral-bg: rgba(80, 80, 80, .3);--panel-neutral-hover: rgba(120, 120, 120, .4);--text-muted: rgba(255, 255, 255, .65);--text-dim: rgba(255, 255, 255, .55);--text-faint: rgba(255, 255, 255, .45);--text-subtle: rgba(255, 255, 255, .5);--text-dimmer: rgba(255, 255, 255, .6);--glass-bg: rgba(0, 0, 0, .75);--border-structural: rgba(255, 255, 255, .08);--border-structural-subtle: rgba(255, 255, 255, .05);--border-interactive: rgba(255, 255, 255, .12);--border-interactive-hover: rgba(255, 255, 255, .22);--surface-subtle: rgba(255, 255, 255, .03);--surface-bar-track: rgba(255, 255, 255, .05);--surface-bar-track-alt: rgba(255, 255, 255, .08);--font-size-hero: 3rem;--font-size-large: 2rem;--font-size-title: 1.5rem;--font-size-base: 1rem;--font-size-small: .875rem;--font-size-xs: .8125rem;--font-size-2xs: .6875rem;--font-size-3xs: .625rem;--font-size-tiny: .5625rem;--spacing-xs: .3125rem;--spacing-sm: .625rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--border-width-thin: .0625rem;--border-width-medium: .125rem;--border-width-thick: .25rem;--border-radius-sm: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--shadow-sm: 0 0 .625rem;--shadow-md: 0 0 1.25rem;--shadow-lg: 0 0 2.5rem;--transition-fast: .2s;--transition-medium: .3s;--transition-slow: 1s;--z-index-base: 1;--z-index-overlay: 10;--z-index-modal: 100;--run-node-combat: var(--panel-blue-accent);--run-node-elite: var(--game-accent-orange);--run-node-boss: var(--game-health);--run-node-rest: var(--action-success);--run-node-shop: var(--game-gold);--run-node-event: var(--theme-purple-light);--run-node-unknown: var(--text-faint);--run-relic-common: var(--text-muted);--run-relic-uncommon: var(--panel-blue-accent);--run-relic-rare: var(--game-gold);--run-relic-common-bg: rgba(255, 255, 255, .06);--run-relic-uncommon-bg: rgba(100, 200, 255, .08);--run-relic-rare-bg: var(--game-gold-a08);--run-relic-common-border: var(--border-color);--run-relic-uncommon-border: var(--panel-blue-border);--run-relic-rare-border: var(--game-gold-a40)}@font-face{font-family:Orbitron;src:url(/assets/fonts/orbitron/Orbitron-Regular.ttf);font-weight:400;font-style:normal;font-display:swap}html,body{height:100%;margin:0;padding:0;box-sizing:border-box;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size-base);color:var(--text-color);background-color:var(--bg-color)}*,*:before,*:after{box-sizing:inherit}app-novarise,app-game,app-landing,app-run{flex:1;overflow:hidden;display:block}app-profile,app-settings{flex:1;overflow-y:auto;overflow-x:hidden;display:block;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.08) transparent}app-profile::-webkit-scrollbar,app-settings::-webkit-scrollbar{width:6px}app-profile::-webkit-scrollbar-track,app-settings::-webkit-scrollbar-track{background:transparent}app-profile::-webkit-scrollbar-thumb,app-settings::-webkit-scrollbar-thumb{background:rgba(255,255,255,.08);border-radius:3px}app-profile::-webkit-scrollbar-thumb:hover,app-settings::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}app-campaign{flex:1;overflow:hidden;display:block}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.2}p{margin:0;line-height:1.5}.text-hero{font-size:var(--font-size-hero)}.text-large{font-size:var(--font-size-large)}.text-title{font-size:var(--font-size-title)}.text-base{font-size:var(--font-size-base)}.text-small{font-size:var(--font-size-small)}.sr-only{position:absolute;width:.0625rem;height:.0625rem;padding:0;margin:-.0625rem;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes mode-indicator-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes scale-up-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes wave-clear-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}@keyframes wave-preview-in{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes tutorial-pulse{0%,to{box-shadow:0 0 0 3px #c8b8ffcc,0 0 15px #c8b8ff4d}50%{box-shadow:0 0 0 3px #c8b8ff,0 0 25px #c8b8ff99}}@keyframes tutorial-fade-in{0%{opacity:0}to{opacity:1}}@keyframes star-reveal{0%{transform:scale(0);opacity:0}50%{transform:scale(1.3);opacity:1}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes pulse-critical{0%{opacity:1}to{opacity:.4}}@keyframes hud-value-pulse{0%{transform:scale(1)}40%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes gold-change-float{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-1rem)}}@keyframes pulse-warn{0%{opacity:.8}to{opacity:1}}.wave-start-pulse{animation:wave-start-pulse var(--transition-medium) ease-out}@media (prefers-reduced-motion: reduce){.board-container .mode-indicator,.board-container .wave-preview .wave-income,.board-container .pause-overlay,.board-container .tower-info-panel .spec-choice-panel,.board-container .wave-preview,.board-container .wave-clear-banner,.wave-start-pulse{animation:none!important}}body.reduce-motion .tutorial-target-highlight,body.reduce-motion .tutorial-card,body.reduce-motion .toast,body.reduce-motion .board-container .overlay-content .overlay-star.filled,body.reduce-motion .board-container .mode-indicator,body.reduce-motion .board-container .wave-preview .wave-income,body.reduce-motion .board-container .pause-overlay,body.reduce-motion .board-container .tower-info-panel .spec-choice-panel,body.reduce-motion .board-container .wave-preview,body.reduce-motion .board-container .wave-clear-banner,body.reduce-motion .wave-start-pulse{animation:none!important}body.reduce-motion .board-container .overlay-content .overlay-star.filled{opacity:1}.board-container .game-hud{background:var(--glass-bg);border-radius:var(--border-radius-md);backdrop-filter:blur(.625rem);z-index:var(--z-index-overlay);font-family:Orbitron,sans-serif;position:absolute;top:var(--shell-hud-top);left:var(--shell-hud-left);max-width:min(55vw,26rem);display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:var(--spacing-sm) var(--spacing-lg);border:var(--border-width-thin) solid var(--border-color);-webkit-user-select:none;user-select:none}@media (max-width: 768px){.board-container .game-hud{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-small);max-width:min(50vw,22rem)}}.board-container .game-hud .hud-stats-row{display:flex;gap:var(--spacing-lg);align-items:center}@media (max-width: 768px){.board-container .game-hud .hud-stats-row{gap:var(--spacing-md)}}.board-container .hud-challenge-strip{position:absolute;top:calc(var(--shell-hud-top) + var(--shell-hud-height) + var(--spacing-xs));left:var(--shell-hud-left);display:flex;flex-wrap:wrap;gap:.25rem;max-width:min(55vw,26rem);pointer-events:none;z-index:var(--z-index-overlay)}.board-container .hud-wave-status{position:absolute;top:calc(var(--shell-end-turn-top) + 4.25rem);left:50%;transform:translate(-50%);pointer-events:none;z-index:var(--z-index-overlay);color:#f88c;font-family:Orbitron,sans-serif;font-size:.7rem;text-align:center;white-space:nowrap}.board-container .hud-wave-status .wave-enemy-count{font-weight:700;color:var(--game-wave-text)}.board-container .hud-wave-status--critical{color:#ffb450f2;font-weight:700;animation:wave-status-critical-pulse 1.4s ease-in-out infinite}.board-container .hud-wave-status--critical .wave-enemy-count{color:#ff783c;text-shadow:0 0 .5rem rgba(255,120,60,.7);font-size:1.15em}.board-container .hud-wave-status--cleared{color:#78dc8ce6;font-weight:700}.board-container .hud-wave-status--cleared .wave-enemy-count{color:#78dc8c;text-shadow:0 0 .4rem rgba(120,220,140,.6)}@keyframes wave-status-critical-pulse{0%,to{opacity:.8}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.board-container .hud-wave-status--critical{animation:none}}.board-container .hud-wave-status .wave-template-badge{font-size:.6rem;color:var(--theme-purple);text-transform:capitalize;font-weight:600;letter-spacing:.04rem}@media (max-width: 480px){.board-container .hud-wave-status{top:calc(var(--shell-end-turn-top) + 5.75rem);font-size:var(--font-size-2xs);gap:.25rem}.board-container .hud-wave-status .wave-template-badge{font-size:var(--font-size-3xs)}}.board-container .hud-challenge-strip .challenge-indicator{font-family:Orbitron,sans-serif;font-size:var(--font-size-3xs);font-weight:600;letter-spacing:.03rem;padding:.1rem .4rem;border-radius:1rem;border:var(--border-width-thin) solid rgba(255,255,255,.18);white-space:nowrap}.board-container .hud-challenge-strip .challenge-indicator.passing{color:#78dc8ccc;background:rgba(60,180,120,.06)}.board-container .hud-challenge-strip .challenge-indicator.failing{color:var(--action-danger);background:var(--action-danger-bg)}.board-container .hud-challenge-toggle{background:transparent;border:var(--border-width-thin) solid rgba(255,255,255,.15);border-radius:1rem;padding:.1rem .45rem;font-family:Orbitron,sans-serif;font-size:var(--font-size-3xs);color:var(--text-dim);cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease;display:inline-flex;align-items:center;gap:.25rem;pointer-events:auto}.board-container .hud-challenge-toggle:hover{border-color:#ffffff4d;color:var(--text-color)}.board-container .hud-challenge-toggle:focus-visible{outline:var(--border-width-medium) solid var(--theme-cyan);outline-offset:2px}.board-container .hud-challenge-summary{display:inline-flex;gap:.15rem}.board-container .challenge-dot{font-size:var(--font-size-2xs);font-weight:700;line-height:1;display:inline-block}.board-container .challenge-dot--passing{color:#78dc8ce6}.board-container .challenge-dot--failing{color:#ff7878f2}@media (max-width: 480px){.board-container .hud-challenge-strip{top:calc(var(--shell-end-turn-top) + 3.75rem);left:var(--spacing-xs);right:var(--spacing-xs);max-width:calc(100vw - var(--spacing-xs) * 2);justify-content:center;font-size:var(--font-size-3xs)}.board-container .hud-challenge-strip .challenge-indicator{font-size:var(--font-size-3xs);padding:.0625rem .375rem}}.board-container .game-hud .hud-stat{position:relative;display:flex;flex-direction:column;align-items:center;gap:.125rem}.board-container .game-hud .hud-stat.secondary{opacity:.7}.board-container .game-hud .hud-stat.secondary .hud-value{font-size:var(--font-size-small)}.board-container .game-hud .hud-stat .hud-label{font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.0625rem;color:var(--text-dim)}.board-container .game-hud .hud-stat .hud-value{font-size:var(--font-size-base);font-weight:700;color:var(--text-color)}.board-container .game-hud .hud-stat .hud-value.lives{color:var(--game-health)}.board-container .game-hud .hud-stat .hud-value.lives.critical{animation:pulse-critical .5s ease-in-out infinite alternate}.board-container .game-hud .hud-stat .hud-value.gold{color:var(--game-gold)}.board-container .game-hud .hud-stat .hud-value.gold-pulse,.board-container .game-hud .hud-stat .hud-value.score-pulse{animation:hud-value-pulse var(--transition-fast, .3s) ease-out}.board-container .game-hud .hud-stat .gold-change{position:absolute;top:-.25rem;left:50%;transform:translate(-50%);font-family:Orbitron,sans-serif;font-size:var(--font-size-2xs);font-weight:700;color:var(--game-gold);pointer-events:none;white-space:nowrap;animation:gold-change-float var(--transition-fast, .3s) ease-out forwards}.board-container .game-hud .hud-stat.speed-run-active{opacity:1!important}.board-container .game-hud .hud-stat.speed-run-active .speed-run-label{color:var(--game-accent-orange)}.board-container .game-hud .hud-stat.speed-run-active .speed-run-timer{color:var(--game-accent-orange);font-variant-numeric:tabular-nums}.board-container .game-hud .hud-stat.speed-run-active .speed-run-timer.warning{color:var(--game-health);animation:pulse-critical .5s ease-in-out infinite alternate}.board-container .game-hud .hud-stat.speed-run-active .speed-run-timer.critical{color:var(--game-health);animation:pulse-critical .3s ease-in-out infinite alternate;font-size:var(--font-size-base);font-weight:900}@media (max-width: 768px){.board-container .game-hud .hud-stat .hud-label{font-size:var(--font-size-3xs)}.board-container .game-hud .hud-stat .hud-value{font-size:var(--font-size-small)}}@media (max-width: 480px){.board-container .game-hud{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-xs);font-size:var(--font-size-2xs);max-width:calc(100vw - var(--shell-hud-left) * 2)}.board-container .game-hud .hud-stats-row{flex-wrap:nowrap;gap:var(--spacing-sm)}.board-container .game-hud .hud-stat.secondary{display:none}.board-container .game-hud .hud-stat .hud-label{font-size:var(--font-size-tiny);letter-spacing:0}.board-container .game-hud .hud-stat .hud-value{font-size:.6875rem}}@media (prefers-reduced-motion: reduce){.board-container .game-hud .hud-stat .hud-value.gold-pulse,.board-container .game-hud .hud-stat .hud-value.score-pulse,.board-container .game-hud .hud-stat .gold-change{animation:none}}body.reduce-motion .board-container .game-hud .hud-stat .hud-value.gold-pulse,body.reduce-motion .board-container .game-hud .hud-stat .hud-value.score-pulse,body.reduce-motion .board-container .game-hud .hud-stat .gold-change{animation:none}.hud-level-name{font-family:Orbitron,sans-serif;font-size:.55rem;font-weight:600;color:#c8b8ffa6;text-transform:uppercase;letter-spacing:.07em;align-self:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:8rem}@media (max-width: 480px){.hud-level-name{display:none}}.toast-stack{position:fixed;bottom:calc(var(--shell-hand-height, 9rem) + var(--spacing-sm));right:1rem;display:flex;flex-direction:column-reverse;gap:.5rem;z-index:calc(var(--z-index-modal) + 50);pointer-events:none}.toast{padding:.75rem 1rem;border-radius:var(--border-radius-lg);min-width:200px;max-width:320px;pointer-events:auto;cursor:pointer;animation:toast-slide-in .3s ease-out;font-family:Orbitron,sans-serif;color:var(--text-color)}.toast--achievement{background:var(--game-gold-a15);border:var(--border-width-thin) solid var(--game-gold-a50)}.toast--streak{background:rgba(0,255,255,.1);border:var(--border-width-thin) solid rgba(0,255,255,.4)}.toast--challenge{background:rgba(180,100,255,.15);border:var(--border-width-thin) solid rgba(180,100,255,.4)}.toast--info{background:rgba(200,200,255,.1);border:var(--border-width-thin) solid rgba(200,200,255,.3)}.toast__title{display:block;font-size:.7rem;font-weight:700;color:inherit}.toast__message{display:block;font-size:.6rem;color:#fffc;margin-top:2px}@media (prefers-reduced-motion: reduce){.toast{animation:none}}@keyframes wave-start-pulse{0%{transform:scale(1);filter:brightness(1)}30%{transform:scale(1.2);filter:brightness(1.5)}60%{transform:scale(1.05);filter:brightness(1.2)}to{transform:scale(1);filter:brightness(1)}}.board-container .game-hud .hud-value.wave-start-pulse{animation:wave-start-pulse .6s ease-out}@media (prefers-reduced-motion: reduce){.board-container .game-hud .hud-value.wave-start-pulse{animation:none}}body.reduce-motion .board-container .game-hud .hud-value.wave-start-pulse{animation:none}@media (max-width: 768px){.toast-stack{left:.5rem;right:.5rem;bottom:calc(var(--shell-hand-height, 8rem) + var(--spacing-sm))}.toast{max-width:none;min-height:2.75rem}}@media (max-width: 480px){.toast-stack{bottom:calc(var(--shell-hand-height, 7rem) + var(--spacing-xs))}}.board-container .hud-relic-peek{position:absolute;top:calc(var(--shell-hud-top) + var(--shell-hud-height) + 1.75rem);left:var(--shell-hud-left);display:flex;flex-wrap:wrap;gap:.25rem;max-width:min(40vw,20rem);pointer-events:none;z-index:var(--z-index-overlay)}@media (max-width: 768px){.board-container .hud-relic-peek{display:none}}.board-container .hud-relic-peek__item{padding:0;appearance:none;pointer-events:auto;width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;font-family:Orbitron,sans-serif;font-size:var(--font-size-2xs);font-weight:800;color:var(--theme-purple-lighter);background:rgba(140,90,200,.1);border:var(--border-width-thin) solid rgba(140,90,200,.4);border-radius:50%;cursor:help;transition:background .15s ease,color .15s ease,transform .15s ease}.board-container .hud-relic-peek__item:hover{background:rgba(140,90,200,.25);color:#fff;transform:scale(1.1)}.board-container .hud-relic-peek__item:focus-visible{outline:var(--border-width-medium) solid var(--theme-cyan);outline-offset:2px}@media (prefers-reduced-motion: reduce){.board-container .hud-relic-peek__item{transition:none}}.board-container .wave-preview{background:rgba(0,0,0,.82);backdrop-filter:blur(.625rem);z-index:var(--z-index-overlay);font-family:Orbitron,sans-serif;position:absolute;top:var(--shell-wave-top);right:var(--shell-wave-right);min-width:14rem;max-width:18rem;padding:var(--spacing-md) var(--spacing-lg);border:var(--border-width-thin) solid var(--theme-purple-a50);border-radius:var(--border-radius-lg);animation:wave-preview-in .2s ease-out;pointer-events:none;text-align:center;max-height:min(45vh,350px);overflow-y:auto}@media (max-width: 1023px){.board-container .wave-preview{max-width:16rem}}.board-container .wave-preview .wave-preview-header{text-align:center;display:flex;flex-direction:column;margin-bottom:var(--spacing-sm)}.board-container .wave-preview .wave-preview-header .wave-number{font-size:var(--font-size-large);font-weight:700;text-transform:uppercase;letter-spacing:.15rem;color:var(--text-color)}@media (max-width: 480px){.board-container .wave-preview{right:var(--spacing-xs);top:calc(var(--shell-hud-top) + var(--shell-hud-height) + var(--spacing-xs));max-width:48vw;max-height:30vh;font-size:var(--font-size-3xs);padding:var(--spacing-xs);overflow-y:auto}.board-container .wave-preview .wave-preview-header .wave-number{font-size:var(--font-size-small);letter-spacing:.05rem;margin:0}}.board-container .wave-preview .wave-income{display:flex;justify-content:center;animation:fade-in .2s ease-out;gap:var(--spacing-sm);margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:var(--border-width-thin) solid rgba(255,255,255,.08);font-size:var(--font-size-xs)}.board-container .wave-preview .wave-income .income-item{font-weight:600}.board-container .wave-preview .wave-income .reward{color:var(--action-warning)}.board-container .wave-preview .wave-income .interest{color:var(--action-success)}.board-container .wave-preview .wave-preview-header .wave-template-description{font-size:var(--font-size-2xs);color:var(--theme-purple);text-transform:none;letter-spacing:.04rem;font-weight:600;margin-top:.125rem}.board-container .wave-preview .wave-preview-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.board-container .wave-preview .wave-preview-entry{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs);font-size:var(--font-size-small)}.board-container .wave-preview .enemy-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0}.board-container .wave-preview .enemy-dot[data-type=basic]{background:var(--enemy-color-basic);box-shadow:0 0 4px var(--enemy-glow-basic)}.board-container .wave-preview .enemy-dot[data-type=fast]{background:var(--enemy-color-fast);box-shadow:0 0 4px var(--enemy-glow-fast)}.board-container .wave-preview .enemy-dot[data-type=heavy]{background:var(--enemy-color-heavy);box-shadow:0 0 4px var(--enemy-glow-heavy)}.board-container .wave-preview .enemy-dot[data-type=swift]{background:var(--enemy-color-flying);box-shadow:0 0 4px var(--enemy-glow-flying)}.board-container .wave-preview .enemy-dot[data-type=boss]{background:var(--enemy-color-boss);box-shadow:0 0 4px var(--enemy-glow-boss)}.board-container .wave-preview .enemy-dot[data-type=shielded]{background:var(--enemy-color-shield);box-shadow:0 0 4px var(--enemy-glow-shielded)}.board-container .wave-preview .enemy-dot[data-type=swarm]{background:var(--enemy-color-swarm);box-shadow:0 0 4px var(--enemy-glow-swarm)}.board-container .wave-preview .enemy-count{color:var(--text-color);font-weight:700;min-width:2rem;text-align:right}.board-container .wave-preview .enemy-label{color:#ffffffbf;text-transform:uppercase;letter-spacing:.03125rem}.board-container .wave-preview .wave-btn{display:flex;flex-direction:column;align-items:center;gap:.125rem;width:100%;margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--border-structural);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-color);font-size:var(--font-size-title);cursor:pointer;pointer-events:auto;transition:all var(--transition-medium) ease}.board-container .wave-preview .wave-btn:hover{background:rgba(255,255,255,.12);border-color:var(--text-dim);transform:scale(1.03)}.board-container .wave-preview .wave-btn:active{transform:scale(.98)}.board-container .wave-preview .wave-btn .wave-hint{font-size:var(--font-size-tiny);color:#ffffff4d;text-transform:uppercase;letter-spacing:.05rem}@media (max-width: 768px){.board-container .wave-preview .wave-btn{min-height:2.75rem}}@media (max-width: 480px){.board-container .wave-preview .wave-btn{padding:.5rem 1rem;font-size:var(--font-size-xs);min-height:2.75rem;margin-top:.35rem;pointer-events:auto;width:100%}}.board-container .wave-clear-banner{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-hero);font-family:Orbitron,sans-serif;font-weight:700;color:var(--text-color);text-shadow:0 0 20px rgba(0,0,0,.8);animation:wave-clear-in 2s ease-out forwards;pointer-events:none;z-index:var(--z-index-overlay);white-space:nowrap}.board-container .wave-clear-banner.perfect{color:var(--game-gold)}@media (max-width: 480px){.board-container .wave-clear-banner{font-size:var(--font-size-large);white-space:normal;max-width:90vw;text-align:center}}.wave-preview-new{font-family:Orbitron,sans-serif;font-size:var(--font-size-tiny);font-weight:700;color:var(--game-gold);background:var(--game-gold-a15);border:var(--border-width-thin) solid var(--game-gold-a40);border-radius:3px;padding:1px 4px;align-self:center;letter-spacing:.05em}.wave-enemy-badges{display:flex;flex-wrap:wrap;gap:.2rem;margin-top:.15rem;width:100%}.wave-enemy-badge{font-size:var(--font-size-3xs);padding:.05rem .25rem;border-radius:var(--border-radius-sm);font-weight:600;line-height:1.4;white-space:nowrap}.wave-enemy-badge.badge-info{background:var(--theme-purple-a20);color:var(--text-dim)}.wave-enemy-badge.badge-warning{background:rgba(255,165,0,.15);color:var(--game-accent-orange)}.wave-enemy-badge.badge-danger{background:rgba(255,68,68,.15);color:var(--game-health)}.board-container .tower-info-panel{background:rgba(0,0,0,.85);border-radius:var(--border-radius-md);backdrop-filter:blur(.75rem);z-index:calc(var(--z-index-overlay) + 2);font-family:Orbitron,sans-serif;position:absolute;bottom:var(--shell-tower-info-bottom);left:50%;transform:translate(-50%);min-width:14rem;padding:var(--spacing-md);border:var(--border-width-thin) solid var(--theme-purple-a50);animation:scale-in .2s ease-out}@media (max-width: 768px){.board-container .tower-info-panel{min-width:12rem;bottom:var(--shell-tower-info-bottom)}}@media (max-width: 480px){.board-container .tower-info-panel{left:var(--spacing-xs);right:var(--spacing-xs);width:auto;min-width:auto;transform:none;bottom:var(--shell-tower-info-bottom);max-height:50vh;overflow-y:auto;padding:var(--spacing-sm);font-size:var(--font-size-3xs)}}.board-container .tower-info-panel .tower-info-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:var(--border-width-thin) solid var(--border-color)}.board-container .tower-info-panel .tower-info-name{font-size:var(--font-size-base);font-weight:700;color:var(--text-color);text-transform:uppercase;letter-spacing:.0625rem}.board-container .tower-info-panel .tower-info-level{display:flex;gap:.125rem}.board-container .tower-info-panel .level-star{font-size:var(--font-size-xs);color:var(--game-star-filled)}.board-container .tower-info-panel .level-star.empty{color:var(--game-star-empty)}.board-container .tower-info-panel .tower-info-close{margin-left:auto;background:none;border:none;color:var(--text-dim);font-size:var(--font-size-large);cursor:pointer;padding:0 var(--spacing-xs);line-height:1}.board-container .tower-info-panel .tower-info-close:hover{color:var(--text-color)}.board-container .tower-info-panel .tower-info-stats{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.board-container .tower-info-panel .stat-row{display:flex;justify-content:space-between;font-size:var(--font-size-small)}.board-container .tower-info-panel .stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.0313rem}.board-container .tower-info-panel .stat-value{color:var(--text-color);font-weight:600}.board-container .tower-info-panel .stat-value.status-effect{text-transform:capitalize}.board-container .tower-info-panel .stat-value.status-effect[data-effect=BURN]{color:var(--effect-burn)}.board-container .tower-info-panel .stat-value.status-effect[data-effect=POISON]{color:var(--effect-poison)}.board-container .tower-info-panel .stat-value.status-effect[data-effect=SLOW]{color:var(--effect-slow)}.board-container .tower-info-panel .stat-preview{color:var(--theme-cyan);font-weight:600;font-size:var(--font-size-2xs);opacity:.8}.board-container .tower-info-panel .stat-preview:before{content:"\2192\a0";color:#ffffff4d}.board-container .tower-info-panel .tower-info-targeting{margin-bottom:var(--spacing-xs)}.board-container .tower-info-panel .targeting-btn{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:var(--border-width-thin) solid rgba(100,180,255,.3);border-radius:var(--border-radius-sm);background:rgba(30,80,140,.3);color:#8cf;font-size:.6875rem;cursor:pointer;transition:all var(--transition-medium) ease;text-align:center}.board-container .tower-info-panel .targeting-btn:hover{background:rgba(40,100,180,.45);border-color:#64b4ff99}.board-container .tower-info-panel .tower-info-actions{display:flex;gap:var(--spacing-sm)}.board-container .tower-info-panel .upgrade-btn,.board-container .tower-info-panel .sell-btn{flex:1;padding:var(--spacing-xs) var(--spacing-sm);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-sm);font-size:.6875rem;cursor:pointer;transition:all var(--transition-medium) ease}.board-container .tower-info-panel .upgrade-btn{background:rgba(0,100,0,.3);border-color:#00ff004d;color:#8f8}.board-container .tower-info-panel .upgrade-btn:hover{background:rgba(0,150,0,.4);border-color:#0f09}.board-container .tower-info-panel .upgrade-btn.unaffordable{opacity:.4;cursor:not-allowed;color:var(--game-health)}.board-container .tower-info-panel .upgrade-tile-percent{color:var(--theme-orange);font-size:var(--font-size-2xs);margin-left:.25rem;opacity:.9}.board-container .tower-info-panel .sell-btn{background:rgba(100,50,0,.3);border-color:#ffc8004d;color:var(--game-gold)}.board-container .tower-info-panel .sell-btn:hover{background:rgba(150,75,0,.4);border-color:#ffc80099}.board-container .tower-info-panel .sell-btn.confirm{background:rgba(200,50,0,.5);border-color:#ff6400cc;color:var(--game-health);animation:pulse-warn .5s ease-in-out infinite alternate}.board-container .tower-info-panel .max-level-badge{flex:1;display:flex;align-items:center;justify-content:center;font-size:.6875rem;color:var(--game-gold);text-transform:uppercase;letter-spacing:.0625rem}.board-container .tower-info-panel .spec-choice-panel{display:flex;flex-direction:column;gap:var(--spacing-xs);animation:scale-up-in .2s ease-out}.board-container .tower-info-panel .spec-choice-header{font-size:var(--font-size-small);color:var(--game-gold);text-transform:uppercase;letter-spacing:.0625rem;text-align:center;margin-bottom:var(--spacing-xs)}.board-container .tower-info-panel .spec-btn{display:flex;flex-direction:column;gap:var(--border-width-medium);padding:var(--spacing-sm);border:var(--border-width-thin) solid var(--panel-blue-border);border-radius:var(--border-radius-sm);background:var(--panel-blue-bg);cursor:pointer;transition:all var(--transition-medium) ease;text-align:left;min-height:2.75rem}.board-container .tower-info-panel .spec-btn:hover{background:var(--panel-blue-hover);border-color:var(--panel-blue-border-hover)}.board-container .tower-info-panel .spec-btn.unaffordable{opacity:.4;cursor:not-allowed}.board-container .tower-info-panel .spec-label{font-size:var(--font-size-xs);font-weight:700;color:var(--panel-blue-accent);text-transform:uppercase;letter-spacing:.0313rem}.board-container .tower-info-panel .spec-desc{font-size:var(--font-size-2xs);color:var(--text-muted)}.board-container .tower-info-panel .spec-stats{font-size:var(--font-size-3xs);color:var(--text-faint);font-family:monospace}.board-container .tower-info-panel .spec-cancel-btn{padding:var(--spacing-xs);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-sm);background:var(--panel-neutral-bg);color:var(--text-dim);font-size:var(--font-size-2xs);cursor:pointer;transition:all var(--transition-medium) ease;min-height:2.75rem}.board-container .tower-info-panel .spec-cancel-btn:hover{background:var(--panel-neutral-hover);color:var(--text-color)}.game-minimap{position:absolute;bottom:var(--shell-minimap-bottom);left:var(--shell-minimap-left);top:auto;right:auto;border:var(--border-width-medium) solid rgba(138,92,246,.5);border-radius:var(--border-radius-sm);z-index:var(--z-index-base);pointer-events:none;box-shadow:0 0 8px #8a5cf640,inset 0 0 0 var(--border-width-thin) var(--border-structural);overflow:hidden;transition:opacity var(--transition-medium) ease}@media (max-width: 480px){.game-minimap{width:60px;height:60px;bottom:var(--shell-minimap-bottom);left:var(--shell-minimap-left)}.board-container .wave-hint{display:none}}.board-container .game-controls{background:var(--glass-bg);border-radius:var(--border-radius-md);backdrop-filter:blur(.625rem);z-index:var(--z-index-overlay);font-family:Orbitron,sans-serif;position:absolute;bottom:var(--shell-controls-bottom);right:var(--shell-controls-right);display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border:var(--border-width-thin) solid var(--border-color)}@media (max-width: 768px){.board-container .game-controls{bottom:var(--spacing-md);right:var(--spacing-md);gap:var(--spacing-xs);padding:var(--spacing-xs);flex-direction:column;align-items:stretch}.board-container .game-controls .speed-controls{justify-content:center}}.board-container .game-controls .speed-controls{display:flex;gap:.25rem}.board-container .game-controls .control-btn{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-sm);color:#fff9;font-size:var(--font-size-small);cursor:pointer;transition:all var(--transition-medium) ease;min-width:2.75rem;min-height:2.75rem;line-height:1}@media (max-width: 768px){.board-container .game-controls .control-btn{min-width:1.875rem;font-size:var(--font-size-2xs);padding:var(--spacing-xs) .25rem}}.board-container .game-controls .control-btn:hover{background:var(--theme-purple-a20);border-color:var(--theme-purple-a80);color:var(--theme-purple-lighter)}.board-container .game-controls .control-btn:active{transform:scale(.95)}.board-container .game-controls .control-btn.active{background:var(--theme-purple-a30);border-color:var(--theme-purple);color:var(--theme-purple-lighter);box-shadow:0 0 var(--spacing-xs) var(--theme-purple-a50)}.board-container .game-controls .pause-btn{min-width:2.5rem;line-height:0}.board-container .game-controls .pause-btn.active{background:rgba(255,200,0,.15);border-color:#ffc80080;color:var(--game-gold);box-shadow:0 0 var(--spacing-xs) #ffc8004d}.board-container .game-controls .path-btn.active{background:rgba(0,255,136,.15);border-color:#00ff8880;color:#8fb;box-shadow:0 0 var(--spacing-xs) #00ff884d}.board-container .game-controls .wave-hint{font-size:var(--font-size-3xs);color:#ffffff4d}@media (max-width: 480px){.board-container .game-controls{bottom:var(--shell-controls-bottom);right:var(--shell-controls-right);flex-direction:column;gap:.2rem;padding:.2rem;max-width:2.5rem}.board-container .game-controls .control-btn{width:2rem;height:2rem;min-width:2rem;min-height:2rem;padding:var(--spacing-xs);font-size:var(--font-size-3xs);justify-content:center}.board-container .game-controls .pause-btn{line-height:0;min-width:2rem}.board-container .game-controls .wave-hint{display:none}.board-container .game-controls .speed-controls{flex-direction:column;gap:.2rem}}.board-container .mode-indicator{position:absolute;bottom:var(--spacing-sm);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--spacing-xs);padding:.25rem var(--spacing-sm);border-radius:var(--border-radius-md);background:var(--glass-bg);pointer-events:none;z-index:var(--z-index-overlay);font-family:Orbitron,sans-serif;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;animation:mode-indicator-in .2s ease-out}.board-container .mode-indicator .mode-label{font-weight:600}.board-container .mode-indicator .mode-label.place-mode{color:var(--theme-cyan)}.board-container .mode-indicator .mode-cost{color:var(--game-gold);font-weight:700}.board-container .mode-indicator .mode-percent{color:var(--theme-orange);font-weight:600;font-size:var(--font-size-2xs)}.board-container .mode-indicator .mode-hint{font-size:var(--font-size-2xs);color:#ffffff59;text-transform:none;letter-spacing:normal}@media (max-width: 768px){.board-container .mode-indicator{bottom:var(--spacing-sm);font-size:var(--font-size-2xs)}}@media (max-width: 480px){.board-container .mode-indicator{bottom:var(--spacing-xs);left:auto;right:var(--spacing-xs);transform:none;font-size:var(--font-size-3xs);padding:.15rem .5rem}.board-container .mode-indicator .mode-hint{display:none}}.tutorial-spotlight{pointer-events:none;position:fixed;inset:0;z-index:900}.tutorial-spotlight:before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.15);pointer-events:none;z-index:-1}.tutorial-card{pointer-events:auto;position:fixed;background:rgb(20,20,35);border:var(--border-width-thin) solid var(--theme-purple);border-radius:12px;padding:1.25rem 1.5rem;max-width:380px;width:90%;text-align:center;box-shadow:0 0 20px var(--theme-purple-a40);z-index:901;animation:tutorial-fade-in .3s ease-out}@supports (backdrop-filter: blur(8px)){.tutorial-card{background:rgba(20,20,35,.92);backdrop-filter:blur(8px)}}.tutorial-card--welcome,.tutorial-card--place_tower,.tutorial-card--complete{top:50%;left:50%;transform:translate(-50%,-50%)}.tutorial-card--select_tower{bottom:8rem;left:50%;transform:translate(-50%)}.tutorial-card--start_wave{top:auto;bottom:4rem;right:22rem;left:auto;transform:none}.tutorial-card--upgrade_tower{bottom:8rem;left:50%;right:auto;top:auto;transform:translate(-50%)}.tutorial-card--tip_placement,.tutorial-card--tip_wave_preview,.tutorial-card--tip_upgrade,.tutorial-card--is-tip{top:max(4rem,var(--spacing-xl, 2rem));left:50%;right:auto;bottom:auto;transform:translate(-50%)}.tutorial-card--select_tower:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--theme-purple)}.tutorial-card--start_wave:after{content:"";position:absolute;right:-8px;top:50%;transform:translateY(-50%);border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:8px solid var(--theme-purple)}.tutorial-card--upgrade_tower:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--theme-purple)}body .tutorial-target-highlight{box-shadow:0 0 0 3px var(--theme-purple-lighter),0 0 15px #c8b8ff66;border-radius:var(--border-radius-lg);animation:tutorial-pulse 1.5s ease-in-out infinite}@media (prefers-reduced-motion: reduce){body .tutorial-target-highlight,.tutorial-card{animation:none}}.tutorial-card__step-indicator{position:absolute;top:.5rem;right:.75rem;font-family:Orbitron,sans-serif;font-size:var(--font-size-3xs);color:var(--theme-purple-mid)}.tutorial-card__title{font-family:Orbitron,sans-serif;font-size:var(--font-size-base);color:var(--theme-purple-lighter);margin:0 0 .75rem}.tutorial-card__message{font-size:.85rem;color:var(--text-color);line-height:1.5;margin:0 0 1rem}.tutorial-card__actions{display:flex;gap:.75rem;justify-content:center}.tutorial-card__btn{padding:.5rem 1.25rem;border-radius:var(--border-radius-md);border:var(--border-width-thin) solid var(--theme-purple);font-family:Orbitron,sans-serif;font-size:var(--font-size-2xs);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);min-height:2.75rem}.tutorial-card__btn--skip{background:transparent;color:var(--theme-purple-mid)}.tutorial-card__btn--skip:hover{background:var(--theme-purple-a20)}.tutorial-card__btn--next{background:var(--theme-purple);color:var(--text-color)}.tutorial-card__btn--next:hover{background:var(--theme-purple-light)}@media (max-width: 768px){.tutorial-card{max-width:90vw}.tutorial-card--select_tower{bottom:7rem}.tutorial-card--start_wave{right:auto;left:50%;bottom:8rem;transform:translate(-50%);max-width:280px}.tutorial-card--upgrade_tower{max-width:280px}.tutorial-card__btn{padding:.75rem 1.5rem;font-size:.8rem;min-height:2.75rem}}@media (max-width: 480px){.tutorial-card{max-width:85vw}.tutorial-card--select_tower{bottom:6rem}.tutorial-card--start_wave,.tutorial-card--upgrade_tower{right:auto;left:50%;transform:translate(-50%);top:auto;bottom:8rem;max-width:85vw}.tutorial-card--start_wave:after,.tutorial-card--upgrade_tower:after{display:none}.tutorial-card__actions{flex-direction:column;gap:.5rem}.tutorial-card__btn{width:100%}}.board-container .game-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.7);z-index:var(--z-index-modal);animation:fade-in .5s ease}.board-container .overlay-content{text-align:center;padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);backdrop-filter:blur(1rem);animation:scale-in .4s cubic-bezier(.34,1.56,.64,1);max-width:min(32rem,90vw);max-height:90vh;overflow-y:auto;width:100%}.board-container .overlay-content.victory{background:rgba(0,100,0,.3);border:var(--border-width-medium) solid rgba(0,255,0,.4);box-shadow:0 0 2.5rem #00ff0026}.board-container .overlay-content.victory h2{color:var(--game-victory)}.board-container .overlay-content.defeat{background:rgba(100,0,0,.3);border:var(--border-width-medium) solid rgba(255,0,0,.4);box-shadow:0 0 2.5rem #ff000026}.board-container .overlay-content.defeat h2{color:var(--game-defeat)}.board-container .overlay-content h2{font-family:Orbitron,sans-serif;font-size:var(--font-size-hero);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.25rem}.board-container .overlay-content .final-score{font-family:Orbitron,sans-serif;font-size:var(--font-size-large);color:var(--game-gold);margin-bottom:var(--spacing-lg)}.board-container .overlay-content .star-display{display:flex;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.board-container .overlay-content .overlay-star{font-size:2.5rem;line-height:1;transition:transform var(--transition-fast) ease}.board-container .overlay-content .overlay-star.filled{color:var(--game-star-filled);text-shadow:0 0 .75rem var(--game-gold-a60);opacity:0;animation:star-reveal .4s ease-out forwards}.board-container .overlay-content .overlay-star.filled.star-1{animation-delay:.3s}.board-container .overlay-content .overlay-star.filled.star-2{animation-delay:.8s}.board-container .overlay-content .overlay-star.filled.star-3{animation-delay:1.3s}.board-container .overlay-content .overlay-star.empty{color:var(--game-star-empty);opacity:.35}@media (prefers-reduced-motion: reduce){.board-container .overlay-content .overlay-star.filled{animation:none;opacity:1}}.board-container .overlay-content .score-breakdown{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);min-width:18rem;text-align:left}@media (max-width: 768px){.board-container .overlay-content .score-breakdown{min-width:14rem}}.board-container .overlay-content .score-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;border-bottom:var(--border-width-thin) solid rgba(255,255,255,.08);font-family:Orbitron,sans-serif;font-size:var(--font-size-small)}.board-container .overlay-content .score-row.final{border-bottom:none;border-top:var(--border-width-medium) solid var(--border-color);margin-top:var(--spacing-xs);padding-top:var(--spacing-sm)}.board-container .overlay-content .score-label{color:var(--text-dimmer);text-transform:uppercase;letter-spacing:.0313rem}.board-container .overlay-content .score-value{color:var(--text-color);font-weight:600}.board-container .overlay-content .score-value.multiplier{color:var(--score-multiplier)}.board-container .overlay-content .score-value.final-value{color:var(--game-gold);font-size:var(--font-size-large);font-weight:700}.board-container .overlay-content .achievements-unlocked{margin-bottom:var(--spacing-lg)}.board-container .overlay-content .achievements-title{font-family:Orbitron,sans-serif;font-size:var(--font-size-small);color:var(--game-gold);text-transform:uppercase;letter-spacing:.0625rem;margin-bottom:var(--spacing-sm)}.board-container .overlay-content .achievement-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.board-container .overlay-content .achievement-badge{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--game-gold-a08);border:var(--border-width-thin) solid var(--game-gold-a25);border-radius:var(--border-radius-sm);animation:scale-in .4s cubic-bezier(.34,1.56,.64,1)}.board-container .overlay-content .achievement-icon{font-size:1.25rem}.board-container .overlay-content .achievement-info{display:flex;flex-direction:column;text-align:left}.board-container .overlay-content .achievement-name{font-family:Orbitron,sans-serif;font-size:var(--font-size-small);color:var(--game-gold);font-weight:600}.board-container .overlay-content .achievement-desc{font-size:var(--font-size-tiny);color:var(--text-dim)}.board-container .overlay-content .overlay-actions{display:flex;gap:var(--spacing-md);justify-content:center}.board-container .overlay-content .results-btn{padding:var(--spacing-sm) var(--spacing-xl);background:var(--theme-purple-a20);border:var(--border-width-medium) solid var(--theme-purple-a50);border-radius:var(--border-radius-md);color:var(--text-color);font-family:Orbitron,sans-serif;font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-medium) ease}.board-container .overlay-content .results-btn:hover{background:var(--theme-purple-a30);border-color:var(--theme-purple-a80)}.board-container .overlay-content .results-btn--primary{background:var(--theme-purple-a50);border-color:var(--theme-purple-light);box-shadow:0 0 8px var(--theme-purple-glow)}.board-container .overlay-content .results-btn--primary:hover{background:var(--theme-purple-a70);box-shadow:0 0 14px var(--theme-purple-glow)}.board-container .overlay-content .results-btn--secondary{color:var(--theme-purple-lighter)}.board-container .overlay-content .results-btn--secondary:hover{background:var(--theme-purple-a30);border-color:var(--theme-purple-a80)}.board-container .overlay-content .results-btn--tertiary{color:var(--theme-purple-mid)}.board-container .overlay-content .results-btn--tertiary:hover{background:var(--theme-purple-a20);border-color:var(--theme-purple-a80);color:var(--theme-purple-lighter)}@media (max-width: 768px){.board-container .game-overlay .overlay-content{padding:var(--spacing-xl);max-width:90vw}.board-container .game-overlay .overlay-content h2{font-size:var(--font-size-title);letter-spacing:var(--spacing-xs)}.board-container .game-overlay .overlay-content .final-score{font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.board-container .game-overlay .overlay-content .overlay-actions{flex-wrap:wrap;justify-content:center}.board-container .game-overlay .overlay-content .overlay-actions .results-btn{min-height:2.75rem}}@media (max-width: 480px){.board-container .game-overlay{align-items:flex-end}.board-container .game-overlay .overlay-content{width:100%;max-width:100%;max-height:85vh;overflow-y:auto;padding:var(--spacing-xl) var(--spacing-md);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;border-left:none;border-right:none;border-bottom:none}.board-container .game-overlay .overlay-content h2{font-size:var(--font-size-large);letter-spacing:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.board-container .game-overlay .overlay-content .final-score{font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.board-container .game-overlay .overlay-content .overlay-actions{flex-direction:column;gap:var(--spacing-sm)}.board-container .game-overlay .overlay-content .overlay-actions .results-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);min-height:2.75rem}}.board-container .pause-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.65);z-index:var(--z-index-modal);cursor:pointer;animation:fade-in .2s ease}@supports (backdrop-filter: blur(4px)){.board-container .pause-overlay{backdrop-filter:blur(4px)}}.board-container .pause-menu{cursor:default;user-select:none;-webkit-user-select:none;background:var(--panel-blue-bg);border:var(--border-width-thin) solid var(--theme-purple);border-radius:var(--border-radius-md);box-shadow:0 0 2rem var(--theme-purple-a50);padding:1.5rem 2rem;width:min(22rem,90vw);display:flex;flex-direction:column;gap:1rem;font-family:Orbitron,sans-serif;position:relative}@media (max-width: 480px){.board-container .pause-menu{padding:1rem 1.25rem;width:min(20rem,95vw);gap:.75rem}.board-container .pause-menu__title{font-size:var(--font-size-large);letter-spacing:.2rem}}.board-container .pause-menu__title{font-size:var(--font-size-hero);color:var(--text-color);text-transform:uppercase;letter-spacing:.4rem;text-shadow:0 0 1.5rem var(--theme-purple-a50);margin:0;text-align:center}.board-container .pause-menu__subtitle{font-size:var(--font-size-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.12rem;text-align:center;margin:-.5rem 0 0}.board-container .pause-menu__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;border-top:var(--border-width-thin) solid var(--border-interactive);border-bottom:var(--border-width-thin) solid var(--border-interactive);padding:.75rem 0}.board-container .pause-stat{display:flex;flex-direction:column;align-items:center;gap:.125rem}.board-container .pause-stat__label{font-size:.6875rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06rem}.board-container .pause-stat__value{font-size:var(--font-size-small);color:var(--text-color);font-weight:600;font-variant-numeric:tabular-nums}.board-container .pause-audio-toggle{position:absolute;top:.5rem;right:.5rem;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;background:transparent;color:var(--text-faint);border:var(--border-width-thin) solid var(--border-interactive);border-radius:var(--border-radius-sm);cursor:pointer;transition:color var(--transition-fast) ease,border-color var(--transition-fast) ease}.board-container .pause-audio-toggle:hover{color:var(--text-muted);border-color:var(--border-interactive-hover)}.board-container .pause-audio-toggle svg{flex-shrink:0;width:14px;height:14px}.board-container .pause-speed-btns{display:flex;gap:.375rem}.board-container .pause-speed-btn{font-family:Orbitron,sans-serif;font-size:var(--font-size-xs);background:rgba(255,255,255,.08);color:var(--text-color);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-sm);padding:.4rem .625rem;min-height:2.75rem;cursor:pointer;transition:background var(--transition-fast) ease,border-color var(--transition-fast) ease}.board-container .pause-speed-btn:hover{background:rgba(255,255,255,.14);border-color:var(--theme-purple-a80)}.board-container .pause-speed-btn.pause-speed-btn--active{background:var(--theme-purple-a30);border-color:var(--theme-purple-a80);color:var(--theme-purple-lighter)}@media (max-width: 768px){.board-container .pause-speed-btn{min-height:2.75rem}}.board-container .pause-menu__actions,.board-container .pause-menu__quit-confirm{display:flex;flex-direction:column;gap:.5rem}.board-container .quit-confirm__text{font-size:var(--font-size-small);color:#ffffffb3;text-align:center;margin:0 0 .25rem;font-family:Orbitron,sans-serif}.board-container .quit-confirm__actions{display:flex;flex-direction:column;gap:.5rem}.board-container .pause-action{font-family:Orbitron,sans-serif;font-size:var(--font-size-small);border-radius:var(--border-radius-sm);padding:.625rem 1rem;min-height:2.75rem;cursor:pointer;transition:background var(--transition-fast) ease,border-color var(--transition-fast) ease;text-align:center;letter-spacing:.05rem}.board-container .pause-action.pause-action--primary{background:var(--theme-purple);color:var(--text-color);border:var(--border-width-thin) solid var(--theme-purple-lighter)}.board-container .pause-action.pause-action--primary:hover{background:var(--theme-purple-lighter)}.board-container .pause-action.pause-action--quit{background:transparent;color:var(--text-dimmer);border:var(--border-width-thin) solid var(--border-color)}.board-container .pause-action.pause-action--quit:hover{background:rgba(255,80,80,.15);border-color:#ff505073;color:#ffb4b4e6}.board-container .pause-action.pause-action--save{background:rgba(212,175,55,.15);color:#d4af37e6;border:var(--border-width-thin) solid rgba(212,175,55,.35)}.board-container .pause-action.pause-action--save:hover{background:rgba(212,175,55,.25);border-color:#d4af378c;color:#e8c850}.board-container .pause-menu__nav-prompt{color:#d4af37e6;text-align:center;font-size:.85rem;letter-spacing:.04em;margin:0}.board-container .pause-menu__auto-hint{font-size:.6875rem;color:#ffc850a6;text-align:center;margin:0;letter-spacing:.03rem}.board-container .pause-menu__hint{font-size:.6875rem;color:#ffffff40;text-align:center;margin:0;letter-spacing:.04rem}@media (hover: none){.board-container .pause-menu__hint{display:none}}.board-container .pause-menu__section-title{margin:0 0 var(--spacing-xs) 0;font-family:Orbitron,sans-serif;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);opacity:.8}.board-container .pause-menu__relics{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:var(--border-width-thin) solid rgba(255,255,255,.1)}.board-container .pause-menu__relic-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.board-container .pause-menu__relic{padding:.3rem .5rem;background:rgba(255,255,255,.04);border:var(--border-width-thin) solid rgba(255,255,255,.12);border-radius:var(--border-radius-sm);cursor:help}.board-container .pause-menu__relic:hover{border-color:var(--theme-purple-lighter);background:rgba(140,90,200,.08)}.board-container .pause-menu__relic-name{font-family:Orbitron,sans-serif;font-size:var(--font-size-2xs);color:var(--text-color);letter-spacing:.03em;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-container .pause-menu__controls-summary{cursor:pointer;display:flex;align-items:center;width:100%;font-family:Orbitron,sans-serif;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:.5rem .25rem;list-style:none}.board-container .pause-menu__controls-summary::-webkit-details-marker{display:none}.board-container .pause-menu__controls-summary:before{content:"\25b8";display:inline-block;width:.9rem;margin-right:.5rem;text-align:center;transition:transform .15s ease}.board-container .pause-menu__controls-summary:hover{color:var(--text-color)}.board-container .pause-menu__controls-summary:focus-visible{outline:var(--border-width-medium) solid var(--theme-cyan);outline-offset:2px;border-radius:var(--border-radius-sm)}@media (prefers-reduced-motion: reduce){.board-container .pause-menu__controls-summary:before{transition:none}}.board-container .pause-menu__controls[open] .pause-menu__controls-summary:before{content:"\25be"}.board-container .pause-menu__controls[open] .pause-menu__controls-list{cursor:pointer}.board-container .pause-menu__controls-list{display:flex;flex-direction:column;gap:.25rem;padding-top:var(--spacing-xs);font-size:var(--font-size-2xs);color:var(--text-color)}.board-container .pause-menu__control-row{display:flex;align-items:center;gap:.35rem}.board-container .pause-menu__key{display:inline-block;padding:.1rem .4rem;min-width:1.4rem;font-family:Orbitron,sans-serif;font-size:var(--font-size-3xs);font-weight:700;text-align:center;background:rgba(255,255,255,.08);border:var(--border-width-thin) solid rgba(255,255,255,.25);border-radius:var(--border-radius-sm);color:var(--text-color);letter-spacing:.04em}.board-container .pause-menu__sep{color:var(--text-muted);opacity:.6;margin:0 .1rem}.board-container .setup-panel{background:rgba(0,0,0,.85);border-radius:var(--border-radius-md);backdrop-filter:blur(.625rem);z-index:calc(var(--z-index-overlay) + 3);font-family:Orbitron,sans-serif;position:absolute;top:var(--shell-hud-top);right:var(--spacing-sm);width:min(18rem,35vw);max-height:calc(100vh - var(--spacing-xl));overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);border:var(--border-width-thin) solid var(--theme-purple-a50);animation:scale-in .2s ease-out}.board-container .setup-panel,.editor-modal-list{scrollbar-width:thin;scrollbar-color:var(--theme-purple-a50) transparent}.board-container .setup-panel::-webkit-scrollbar,.editor-modal-list::-webkit-scrollbar{width:8px}.board-container .setup-panel::-webkit-scrollbar-track,.editor-modal-list::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.board-container .setup-panel::-webkit-scrollbar-thumb,.editor-modal-list::-webkit-scrollbar-thumb{background:var(--theme-purple-a50);border-radius:var(--border-radius-sm)}.board-container .setup-panel::-webkit-scrollbar-thumb:hover,.editor-modal-list::-webkit-scrollbar-thumb:hover{background:var(--theme-purple-a70)}.board-container .setup-section-label{font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.1rem;color:var(--text-dim);font-weight:600}.board-container .setup-section-toggle{font-family:Orbitron,sans-serif;font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.1rem;color:var(--text-dim);font-weight:600;background:none;border:none;padding:.25rem 0;cursor:pointer;width:100%;text-align:left;display:flex;align-items:center;gap:.3rem}.board-container .setup-section-toggle:hover{color:var(--text-color)}.board-container .setup-section-toggle .toggle-arrow{font-size:.7rem}.board-container .setup-difficulty-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs)}.board-container .setup-difficulty-info{font-size:var(--font-size-2xs);color:var(--text-dim);opacity:.75;text-align:center}.board-container .setup-diff-btn{padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-color);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast) ease;min-height:2.75rem}.board-container .setup-diff-btn:hover{background:var(--theme-purple-a20);border-color:var(--theme-purple-a80)}.board-container .setup-diff-btn.selected{background:var(--theme-purple-a30);border-color:var(--theme-purple);color:var(--theme-purple-lighter);box-shadow:0 0 var(--spacing-xs) var(--theme-purple-a50)}.board-container .setup-endless{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-small);color:var(--text-color);padding:var(--spacing-xs) 0;border-top:var(--border-width-thin) solid var(--border-color)}.board-container .setup-endless input[type=checkbox]{accent-color:var(--theme-purple);width:1rem;height:1rem;cursor:pointer}.board-container .setup-modifier-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs)}.board-container .setup-mod-btn{padding:var(--spacing-xs);background:transparent;border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-color);font-size:var(--font-size-3xs);font-weight:600;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast) ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:2.75rem;display:flex;align-items:center;justify-content:center}.board-container .setup-mod-btn:hover{background:var(--theme-purple-a20);border-color:var(--theme-purple-a80)}.board-container .setup-mod-btn.active{background:var(--theme-purple-a30);border-color:var(--theme-purple);color:var(--theme-purple-lighter)}.board-container .setup-score{font-size:var(--font-size-small);font-weight:700;color:var(--theme-purple-lighter);text-align:center}.board-container .setup-start-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width-medium) solid var(--action-success-border);border-radius:var(--border-radius-md);background:var(--action-success-bg);color:var(--action-success);font-size:var(--font-size-small);font-weight:700;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast) ease}.board-container .setup-start-btn:hover{background:rgba(0,180,80,.35);box-shadow:0 0 var(--spacing-sm) #00ff6440}@media (max-width: 1024px){.board-container .setup-panel{width:min(16rem,30vw)}}@media (max-width: 768px){.board-container .setup-panel{position:absolute;top:var(--shell-hud-top);bottom:auto;left:auto;right:var(--spacing-sm);width:min(16rem,55vw);max-height:70vh;overflow-y:auto;padding:var(--spacing-sm);gap:var(--spacing-xs)}.board-container .setup-difficulty-grid{grid-template-columns:repeat(4,1fr)}.board-container .setup-diff-btn,.board-container .setup-mod-btn{padding:.25rem;font-size:var(--font-size-3xs);min-height:2.75rem}.board-container .setup-endless{font-size:var(--font-size-2xs);padding:.25rem 0}.board-container .setup-modifier-grid{grid-template-columns:repeat(2,1fr)}.board-container .setup-start-btn{padding:var(--spacing-xs);font-size:var(--font-size-2xs)}}@media (max-width: 480px){.board-container .setup-panel{position:absolute;inset:auto 0 0;width:100%;max-height:60vh;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;border-bottom:none;padding:.25rem .5rem .5rem;overflow-y:auto;gap:.2rem;transform:none}.board-container .setup-panel .setup-section-label{font-size:var(--font-size-tiny);margin-bottom:.1rem;letter-spacing:.05rem}.board-container .setup-panel .campaign-level-info{padding:.15rem .35rem;gap:.2rem .4rem;margin-bottom:.1rem}.board-container .setup-panel .campaign-level-info__number{font-size:var(--font-size-tiny)}.board-container .setup-panel .campaign-level-info__name{font-size:.6rem;flex:0 1 auto}.board-container .setup-panel .campaign-level-info__tier,.board-container .setup-panel .campaign-level-info__waves{font-size:.4rem}.board-container .setup-panel .campaign-challenges-preview{padding:.2rem .3rem;gap:.15rem}.board-container .setup-panel .campaign-challenges-preview__title{font-size:var(--font-size-tiny);margin-bottom:.1rem;letter-spacing:.05rem}.board-container .setup-panel .challenge-preview-item{padding:.15rem .3rem;font-size:var(--font-size-tiny);gap:.2rem}.board-container .setup-panel .challenge-preview-item__name{font-size:.65rem}.board-container .setup-panel .challenge-preview-item__desc{font-size:.55rem;color:#c8b8ff}.board-container .setup-panel .challenge-preview-item__bonus{font-size:.6rem}.board-container .setup-difficulty-grid{gap:.15rem}.board-container .setup-difficulty-info{font-size:.4rem;margin:.05rem 0}.board-container .setup-modifier-grid{gap:.15rem}.board-container .setup-diff-btn,.board-container .setup-mod-btn{min-height:2rem;font-size:.45rem;padding:.1rem .2rem}.board-container .setup-start-btn{position:sticky;bottom:0;min-height:2.5rem;font-size:.65rem;padding:.25rem;z-index:var(--z-index-base)}}.campaign-level-info{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem .625rem;padding:.5rem .75rem;margin-bottom:.25rem;background:var(--theme-purple-a20);border:var(--border-width-thin) solid var(--theme-purple-a50);border-radius:var(--border-radius-md)}.campaign-level-info__number{font-family:Orbitron,sans-serif;font-size:.65rem;font-weight:700;color:var(--theme-purple-lighter);text-transform:uppercase;letter-spacing:.06em}.campaign-level-info__name{font-family:Orbitron,sans-serif;font-size:var(--font-size-xs);font-weight:700;color:var(--text-color);flex:1 1 100%}.campaign-level-info__tier{font-size:.6rem;color:var(--theme-purple-mid);letter-spacing:.08em;text-transform:uppercase}.campaign-level-info__waves{font-size:.6rem;color:var(--theme-purple-mid)}.victory-level{display:flex;align-items:center;gap:.5rem;justify-content:center;margin:.25rem 0 .75rem}.victory-level__label{font-family:Orbitron,sans-serif;font-size:.65rem;font-weight:700;color:var(--theme-purple-lighter);text-transform:uppercase;letter-spacing:.08em;padding:.2rem .5rem;background:var(--theme-purple-a25);border:var(--border-width-thin) solid var(--theme-purple-a50);border-radius:var(--border-radius-sm)}.victory-level__name{font-family:Orbitron,sans-serif;font-size:.85rem;font-weight:700;color:#ffffffe6}.level-card__unlock-req{font-size:.7rem;color:#c8b8ffa6;margin:.25rem 0 0;line-height:1.4}.campaign-challenges-preview{margin-bottom:.5rem;padding:.5rem .75rem;background:rgba(40,30,70,.5);border:var(--border-width-thin) solid var(--theme-purple-a35);border-radius:var(--border-radius-md)}.campaign-challenges-preview__title{font-family:Orbitron,sans-serif;font-size:.6rem;font-weight:700;color:var(--theme-purple-lighter);text-transform:uppercase;letter-spacing:.07em;margin:0 0 .375rem}.campaign-challenges-preview__list{display:flex;flex-direction:column;gap:.3rem}.challenge-preview-item{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:.5rem;padding:.3rem .4rem;background:var(--theme-purple-a10);border:var(--border-width-thin) solid var(--theme-purple-a25);border-radius:var(--border-radius-sm);transition:opacity var(--transition-fast)}.challenge-preview-item--completed{opacity:.45}.challenge-preview-item__name{font-family:Orbitron,sans-serif;font-size:.6rem;font-weight:600;color:#ffffffe6;grid-column:1;grid-row:1}.challenge-preview-item__desc{font-size:.58rem;color:#c8b8ffd9;grid-column:1;grid-row:2;line-height:1.3}.challenge-preview-item__bonus{font-family:Orbitron,sans-serif;font-size:.6rem;font-weight:700;color:var(--game-gold);grid-column:2;grid-row:1/3;align-self:center;white-space:nowrap}.challenges-result{margin:.5rem 0 .625rem;padding:.5rem .75rem;background:rgba(30,20,60,.6);border:var(--border-width-thin) solid var(--theme-purple-a40);border-radius:var(--border-radius-md);text-align:left}.challenges-result__title{font-family:Orbitron,sans-serif;font-size:.65rem;font-weight:700;color:var(--theme-purple-lighter);text-transform:uppercase;letter-spacing:.07em;margin:0 0 .4rem}.challenge-result-item{display:flex;align-items:center;gap:.5rem;padding:.2rem 0;font-size:.7rem}.challenge-result-item__status{font-size:var(--font-size-xs);font-weight:700;min-width:1rem;text-align:center}.challenge-result-item--passed .challenge-result-item__status{color:#4caf50}.challenge-result-item--failed{opacity:.5}.challenge-result-item--failed .challenge-result-item__status{color:#f44336}.challenge-result-item__name{flex:1;color:#ffffffe6}.challenge-result-item__bonus{font-family:Orbitron,sans-serif;font-size:.65rem;font-weight:700;color:var(--game-gold);white-space:nowrap}@media (max-width: 480px){.campaign-challenges-preview{padding:.4rem .6rem}.challenge-preview-item{padding:.25rem .35rem}.challenges-result{padding:.4rem .6rem}}.run-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-xl);background:var(--theme-purple-a20);border:var(--border-width-medium) solid var(--theme-purple-a50);border-radius:var(--border-radius-md);color:var(--text-color);font-family:Orbitron,sans-serif;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background var(--transition-medium) ease,border-color var(--transition-medium) ease,box-shadow var(--transition-medium) ease;min-height:2.75rem;white-space:nowrap}.run-btn:hover:not(:disabled){background:var(--theme-purple-a30);border-color:var(--theme-purple-a80)}.run-btn:active:not(:disabled){background:var(--theme-purple-a35)}.run-btn:disabled{opacity:.4;cursor:not-allowed}.run-btn:focus-visible{outline:var(--border-width-medium) solid var(--theme-purple-light);outline-offset:3px}.run-btn--full{width:100%}.run-btn--primary{background:var(--theme-purple-a50);border-color:var(--theme-purple-light);box-shadow:var(--shadow-sm) var(--theme-purple-glow)}.run-btn--primary:hover:not(:disabled){background:var(--theme-purple-a70);box-shadow:var(--shadow-md) var(--theme-purple-glow)}.run-btn--secondary{color:var(--theme-purple-lighter)}.run-btn--secondary:hover:not(:disabled){background:var(--theme-purple-a30);border-color:var(--theme-purple-a80)}.run-btn--danger{background:var(--action-danger-bg);border-color:var(--action-danger-border);color:var(--action-danger)}.run-btn--danger:hover:not(:disabled){background:var(--action-danger-bg);filter:brightness(1.5);border-color:var(--action-danger)}.run-panel{background:var(--glass-bg);border:var(--border-width-thin) solid var(--theme-purple-a50);border-radius:var(--border-radius-lg);padding:var(--spacing-lg)}.run-section-label{font-family:Orbitron,sans-serif;font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.1rem;color:var(--text-dim)}@media (prefers-reduced-motion: reduce){.run-btn{transition:none}}
