:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0f0f0f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:100%;min-height:100vh;overflow:hidden}h1,h2,h3,h4,h5,h6,p{margin:0}button{border:none;font-family:inherit;cursor:pointer;transition:all .3s ease}.screen{width:100%;height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;position:relative}.menu-screen{background:linear-gradient(135deg,#0f3460,#1a1a2e);min-height:100vh;height:auto;box-sizing:border-box;padding:0}.menu-content{text-align:center;animation:fadeIn .5s ease-in;display:flex;flex-direction:column;align-items:center;gap:.75rem}.btn-achievements{background:linear-gradient(135deg,#f59e0b,#d97706);color:#000}.btn-achievements:hover{transform:translateY(-2px);box-shadow:0 10px 30px #f59e0b80}.btn-loadout{background:linear-gradient(135deg,#fbbf24,#d97706);color:#000;display:flex;align-items:center;justify-content:center;gap:.75rem}.btn-loadout:hover{transform:translateY(-2px);box-shadow:0 10px 30px #fbbf2480}.btn-loadout-salvage{font-size:.85em;opacity:.8}.menu-content h1{font-size:4rem;margin-bottom:1rem;color:#00d4ff;text-shadow:0 0 20px rgba(0,212,255,.5)}.subtitle{font-size:1.5rem;margin-bottom:3rem;color:#e0e0e0}.subtitle--golden{color:#fbbf24;text-shadow:0 0 12px rgba(251,191,36,.5),0 0 30px rgba(251,191,36,.2)}.btn{padding:12px 32px;font-size:1.1rem;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:600;text-transform:uppercase;letter-spacing:1px}.btn-primary{background:linear-gradient(135deg,#00d4ff,#09c);color:#000}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #00d4ff80}.btn-secondary{background:linear-gradient(135deg,#ff6b6b,#c55);color:#fff}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff6b6b80}.trophy-case{margin-top:1.5rem;padding:1.25rem 1.5rem;border:1px solid rgba(251,191,36,.2);border-radius:12px;background:#0f172a80;max-width:fit-content;width:100%;box-sizing:border-box}.trophy-case-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#fbbf24;margin:0 0 .75rem;text-align:center;opacity:.7}.trophy-case-grid{display:grid;grid-template-columns:repeat(5,48px);justify-content:center;gap:.5rem}.trophy-case-item{cursor:pointer;transition:transform .15s ease;line-height:0}.trophy-case-item:hover{transform:scale(1.15)}.trophy-tooltip{position:fixed;transform:translate(-50%,-100%);margin-top:-8px;background:#0f172af2;border:1px solid rgba(251,191,36,.5);border-radius:8px;padding:.6rem .85rem;max-width:260px;pointer-events:none;z-index:100;text-align:center}.trophy-tooltip-name{font-weight:600;font-size:.9rem;color:#fbbf24;margin:0 0 .25rem}.trophy-tooltip-desc{font-size:.8rem;color:#cbd5e1;margin:0 0 .25rem;line-height:1.3}.trophy-tooltip-date{font-size:.75rem;color:#94a3b8;margin:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.menu-screen{flex-direction:column;justify-content:center;align-items:center;padding:clamp(2rem,8vw,3rem) 1.5rem;gap:2rem}.menu-content h1{font-size:clamp(2.5rem,10vw,4rem)}.subtitle{font-size:1.25rem;margin-bottom:2rem}}@media(max-width:480px){.menu-screen{padding:2rem 1.25rem;justify-content:flex-start}.menu-content h1{font-size:clamp(2.25rem,12vw,3rem)}.subtitle{font-size:1.1rem}.menu-screen .btn{width:100%}}.game-icon-wrapper{display:inline-flex;width:100%;height:100%;align-items:center;justify-content:center}.game-icon-wrapper>svg{display:block;width:100%;height:100%}.active-powerups-panel{position:relative;width:100%;margin:0 auto;box-sizing:border-box;background:var(--zone-accent-dim);border:2px solid var(--zone-accent);border-radius:10px;padding:.75rem 1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 10px 30px var(--zone-glow);display:flex;flex-direction:column;max-height:60vh}.active-powerups-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.active-powerups-title{color:#e0f2fe;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase}.active-powerups-list{display:flex;flex-wrap:wrap;gap:.5rem}.active-powerup-entry{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#0f172a8c;box-shadow:0 4px 14px #00000040;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:relative;--rarity-color: #38bdf8}.active-powerup-icon{filter:drop-shadow(0 4px 6px rgba(0,0,0,.35))}.active-powerup-badge{position:absolute;bottom:-6px;right:-6px;font-size:.9rem;font-weight:700;color:var(--rarity-color);background:#0f172af2;border:2px solid var(--rarity-color);border-radius:999px;min-width:26px;padding:0 .35rem;text-align:center;line-height:1.1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #00000073}.powerup-tooltip{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%,4px);min-width:180px;max-width:220px;padding:.45rem .65rem;border-radius:10px;background:#020b17eb;border:1px solid var(--zone-glow);box-shadow:0 12px 30px #0206178c;color:#e2e8f0;text-align:left;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .18s ease,transform .18s ease;z-index:20}.powerup-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:8px;border-style:solid;border-color:rgba(2,11,23,.92) transparent transparent transparent}.powerup-tooltip-name{font-size:.85rem;font-weight:700;margin:0;color:#f8fafc}.powerup-tooltip-description{font-size:.75rem;line-height:1.25;margin:.25rem 0 0;color:#cbd5f5}.active-powerup-entry--modifier{background:#dc262626;border:1px solid rgba(251,146,60,.4);color:#fb923c;--rarity-color: #fb923c}.active-powerups-divider{width:1px;align-self:stretch;background:#94a3b840;margin:4px 2px}.active-powerup-entry[data-pointer-visible=true] .powerup-tooltip{opacity:1;visibility:visible;transform:translate(-50%,-4px)}@media(hover:hover){.active-powerup-entry:hover .powerup-tooltip{opacity:1;visibility:visible;transform:translate(-50%,-4px)}}@media(max-width:900px){.active-powerups-panel{padding:.5rem .75rem}.active-powerups-title{font-size:.8rem}.active-powerup-entry{width:36px;height:36px}.active-powerups-list{gap:.35rem}.active-powerup-badge{font-size:.75rem;min-width:22px;bottom:-5px;right:-5px}}@media(max-width:480px){.active-powerups-panel{padding:.35rem .5rem}.active-powerups-title{font-size:.7rem}.active-powerup-entry{width:30px;height:30px}.active-powerups-list{gap:.25rem}.active-powerup-badge{font-size:.65rem;min-width:18px;bottom:-4px;right:-4px}}.hud-section--level{display:flex;align-items:center;justify-content:center;gap:.4rem;white-space:nowrap}.escalation-hud-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;color:#94a3b8;cursor:default}.escalation-hud-icon .powerup-tooltip{min-width:100px}.escalation-hud-icon .powerup-tooltip-description:empty{display:none}.escalation-hud-icon[data-pointer-visible=true] .powerup-tooltip{opacity:1;visibility:visible;transform:translate(-50%,-4px)}@media(hover:hover){.escalation-hud-icon:hover .powerup-tooltip{opacity:1;visibility:visible;transform:translate(-50%,-4px)}}.shield-bar{display:flex;flex-direction:column;gap:.25rem;min-width:0;width:100%}.shield-bar__track{position:relative;width:100%;height:22px;border-radius:999px;background:#0f172ab3;border:2px solid var(--zone-accent);overflow:hidden}.shield-bar__health{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#ef4444,#b91c1c);transition:width .15s ease}.shield-bar__segments{position:absolute;inset:0;display:flex;gap:2px;padding:2px 8px;box-sizing:border-box;justify-content:flex-end;overflow:hidden}.shield-bar__segment{flex:1 1 0;max-width:18px;min-width:2px;height:100%;border-radius:6px;background:#38bdf840;overflow:hidden;box-shadow:inset 0 0 6px #0ea5e973}.shield-bar__segment-fill{height:100%;background:linear-gradient(90deg,#38bdf8,#0ea5e9);transition:width .15s ease}.shield-bar__segments--recharging .shield-bar__segment-fill{animation:shield-recharge-pulse .8s ease-in-out infinite}@keyframes shield-recharge-pulse{0%,to{opacity:1}50%{opacity:.5}}.shield-bar__values{display:flex;justify-content:space-between;font-size:.85rem;color:#e2e8f0;white-space:nowrap;overflow:hidden}@media(max-width:900px){.shield-bar__track{height:18px}.shield-bar__values{font-size:.75rem}}@media(max-width:480px){.shield-bar__track{height:14px}.shield-bar__values{font-size:.65rem}}.gameplay-screen{position:relative;background:#000;flex-direction:column;align-items:center;gap:1rem;--zone-accent: #00d4ff;--zone-accent-dim: rgba(0, 212, 255, .1);--zone-glow: rgba(0, 212, 255, .3);--zone-accent-muted: #7cf7ff}.gameplay-screen[data-zone=phantom]{--zone-accent: #a855f7;--zone-accent-dim: rgba(168, 85, 247, .1);--zone-glow: rgba(168, 85, 247, .3);--zone-accent-muted: #d8b4fe}.gameplay-screen[data-zone=warlord]{--zone-accent: #f59e0b;--zone-accent-dim: rgba(245, 158, 11, .1);--zone-glow: rgba(245, 158, 11, .3);--zone-accent-muted: #fcd34d}.gameplay-stage{position:relative;width:100%;max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:0 clamp(.5rem,2vw,1rem);box-sizing:border-box}.gameplay-hud,.active-powerups-panel,.game-canvas{width:100%;max-width:800px;margin:0 auto;box-sizing:border-box}.gameplay-hud{display:flex;justify-content:space-between;align-items:center;background:var(--zone-accent-dim);border:2px solid var(--zone-accent);border-radius:8px;padding:1rem 1.5rem;gap:1rem;flex-wrap:nowrap}.hud-section{flex:1;text-align:center;min-width:90px}.hud-section--shield{flex:2.5;display:flex;justify-content:center;text-align:left;min-width:0}.hud-section--brand{flex:1;display:flex;align-items:center;justify-content:flex-start;gap:.65rem;text-align:left;min-width:160px}.hud-logo{width:56px;height:56px;border:2px solid var(--zone-accent);border-radius:12px;background:#000f26bf;box-shadow:0 0 12px var(--zone-glow);image-rendering:pixelated}.hud-brand-text{display:flex;flex-direction:column}.hud-brand-title{margin:0;color:var(--zone-accent-muted);font-size:1.1rem;text-transform:uppercase;letter-spacing:.08em}.hud-section h2{color:var(--zone-accent);margin:0;font-size:1.3rem}.hud-section p{color:#e0e0e0;margin:0;font-size:1.1rem}.hud-section span{color:var(--zone-accent);font-weight:700}.hud-label{font-size:.85rem;color:#e0e0e0}.hud-section .hud-value{font-size:1.3rem;color:var(--zone-accent);font-weight:700}.game-canvas{border:3px solid var(--zone-accent);background:#000;display:block;margin:0 auto;width:min(100%,800px);max-width:100%;aspect-ratio:4 / 3;height:auto;box-shadow:0 0 30px var(--zone-glow);touch-action:none;-webkit-user-select:none;user-select:none}@media(max-width:900px){.gameplay-stage{gap:.5rem}.gameplay-hud{padding:.5rem .75rem;gap:.5rem}.hud-section,.hud-section--shield,.hud-section--brand{min-width:unset}.hud-logo{width:40px;height:40px}.hud-brand-title{font-size:.85rem}.hud-section--brand{gap:.4rem}.hud-section h2{font-size:1rem}.hud-section p{font-size:.85rem}.hud-label{font-size:.7rem}.hud-section .hud-value{font-size:1rem}}@media(max-width:600px){.gameplay-stage{gap:.35rem}.gameplay-hud{padding:.35rem .5rem;gap:.35rem}.hud-logo{width:32px;height:32px;border-radius:8px}.hud-brand-title{font-size:.7rem}.hud-section--brand{gap:.3rem}.hud-section h2{font-size:.85rem}.hud-section p{font-size:.75rem}.hud-label{font-size:.6rem}.hud-section .hud-value{font-size:.8rem}}.ability-touch-button{position:absolute;bottom:35px;left:24px;width:56px;height:56px;border-radius:50%;border:2px solid #00ffcc;background:#00ffcc26;color:#0fc;font-size:1.2rem;font-weight:700;font-family:monospace;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;z-index:10;display:flex;align-items:center;justify-content:center;box-shadow:0 0 12px #00ffcc4d;transition:background .15s,box-shadow .15s}.ability-touch-button:active{background:#00ffcc59;box-shadow:0 0 20px #00ffcc80}.salvage-notification{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:monospace;font-size:1.4rem;font-weight:700;color:#fbbf24;text-shadow:0 0 8px rgba(251,191,36,.6),0 2px 4px rgba(0,0,0,.8);pointer-events:none;z-index:20;animation:salvage-float 2.5s ease-out forwards}.salvage-notification--first{font-size:1.8rem;color:#fde68a;text-shadow:0 0 12px rgba(253,230,138,.8),0 2px 6px rgba(0,0,0,.8)}@keyframes salvage-float{0%{opacity:1;transform:translate(-50%,-50%)}70%{opacity:1;transform:translate(-50%,-80%)}to{opacity:0;transform:translate(-50%,-100%)}}@media(max-width:480px){.gameplay-stage{gap:.25rem}.gameplay-hud{padding:.2rem .35rem;gap:.2rem}.hud-logo{width:24px;height:24px;border-radius:6px;border-width:1px}.hud-brand-title{font-size:.6rem;letter-spacing:.04em}.hud-section h2{font-size:.75rem}.hud-section p{font-size:.65rem}.hud-label{font-size:.55rem}.hud-section .hud-value{font-size:.7rem}}.difficulty-summary{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem;font-size:.85rem;color:#94a3b8}.difficulty-summary-preset{display:inline-flex;align-items:center;gap:.25rem}.difficulty-summary-sep{color:#475569}.difficulty-summary-mod{display:inline-flex;align-items:center;gap:.25rem;color:#fb923c}.level-complete-screen{background:linear-gradient(135deg,#1a472a,#0f3460)}.level-complete-content{text-align:center;animation:slideIn .5s ease-out}.level-complete-content h1{font-size:3.5rem;margin-bottom:2rem;color:#0f8;text-shadow:0 0 20px rgba(0,255,136,.5)}.final-score{font-size:2.5rem;color:#00d4ff;margin-bottom:2rem;text-shadow:0 0 15px rgba(0,212,255,.5)}.level-stats{background:#00ff881a;border:2px solid #00ff88;border-radius:12px;padding:2rem;margin:2rem 0;display:inline-block;min-width:300px}.level-stats p{font-size:1.3rem;color:#e0e0e0;margin:.5rem 0}.level-stats .run-points{color:#fbbf24;font-weight:700;margin-top:1rem;padding-top:.75rem;border-top:1px solid rgba(251,191,36,.3)}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.game-over-screen{background:linear-gradient(135deg,#4a1a1a,#1a1a2e)}.game-over-content{text-align:center;animation:shake .5s ease-out}.game-over-content h1{font-size:3.5rem;margin-bottom:2rem;color:#ff6b6b;text-shadow:0 0 20px rgba(255,107,107,.5)}.final-score{font-size:2.5rem;color:#ff6b6b;margin-bottom:2rem;text-shadow:0 0 15px rgba(255,107,107,.5)}.game-over-stats{background:#ff6b6b1a;border:2px solid #ff6b6b;border-radius:12px;padding:2rem;margin:2rem auto;max-width:400px}.game-over-stats p{font-size:1.3rem;color:#e0e0e0;margin:.5rem 0}.button-group{display:flex;gap:1rem;margin-top:2rem;justify-content:center;flex-wrap:wrap}.game-over-achievements{background:#fbbf2414;border:1px solid rgba(251,191,36,.3);border-radius:12px;padding:1.25rem;margin:1.5rem auto;text-align:left;max-width:400px}.game-over-achievements-header{font-size:1.1rem;color:#fbbf24;margin:0 0 .75rem;text-align:center}.game-over-achievement{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0}.game-over-achievement+.game-over-achievement{border-top:1px solid rgba(251,191,36,.15)}.game-over-achievement-badge{flex-shrink:0;font-size:1.25rem;color:#fbbf24;margin-top:.1rem}.game-over-achievement-info{flex:1;min-width:0}.game-over-achievement-name{font-weight:600;color:#fbbf24;margin:0 0 .15rem;font-size:1rem}.game-over-achievement-desc{font-size:.85rem;color:#94a3b8;margin:0}.game-over-achievement-unlock{font-size:.9rem;color:#f59e0b;font-weight:600;margin:.25rem 0 0}.game-over-salvage{color:#fbbf24!important;font-weight:600;font-size:1.4rem!important;margin-top:1rem!important}.game-over-attempt-type{color:#94a3b8!important;font-size:.9rem!important;font-style:italic}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.powerup-shop-screen{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;min-height:100vh;height:100vh;padding:0;background:radial-gradient(circle at 20% 20%,#1f2937,#0f172a 65%);color:#f8fafc;overflow-y:auto;overflow-x:hidden;scroll-padding-bottom:clamp(5rem,12vh,8rem)}.powerup-shop{width:min(1200px,100%);margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem) clamp(1rem,4vw,2rem) clamp(2.5rem,6vw,4rem);display:flex;flex-direction:column;gap:2rem;box-sizing:border-box}.shop-header{display:flex;justify-content:space-between;align-items:flex-end;background:#0f172abf;border:1px solid rgba(248,250,252,.08);border-radius:1rem;padding:1.75rem;box-shadow:0 25px 45px #080b1366}.shop-header-kicker{font-size:.85rem;text-transform:uppercase;letter-spacing:.2rem;color:#94a3b8;margin:0 0 .25rem}.shop-balance{font-size:clamp(2.5rem,4vw,3.5rem);font-weight:700;margin:0}.shop-breakdown{display:flex;gap:1.5rem;font-size:1rem;color:#cbd5f5}.repair-kit-section{margin:0}.repair-kit-card{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem;border-radius:1rem;background:#0f172acc;border:1px solid rgba(74,222,128,.2);box-shadow:0 20px 40px #0a0d1673}.repair-kit-info{flex:1}.repair-kit-name{margin:0;font-size:1.1rem;font-weight:600;color:#4ade80}.repair-kit-desc{margin:.15rem 0 0;color:#cbd5f5;font-size:.95rem}.repair-kit-hp{margin:.25rem 0 0;font-size:.9rem;color:#e2e8f0}.repair-kit-action{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;min-width:120px}.repair-kit-action .shop-card-button{width:120px}.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.shop-card{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-radius:1rem;background:#0f172acc;border:1px solid rgba(248,250,252,.08);box-shadow:0 20px 40px #0a0d1673;transition:transform .12s ease,box-shadow .12s ease}.shop-card:hover:not(.shop-card--locked):not(.shop-card--disabled):not(.shop-card--maxed){transform:translateY(-4px);box-shadow:0 25px 45px #0b101da6}.shop-card--locked{opacity:.5;filter:grayscale(.5)}.shop-card--purchased{box-shadow:0 0 0 2px #f8fafc40,0 20px 40px #0ea5e94d}.shop-card-heading{display:flex;gap:1rem;align-items:center}.shop-card-icon{flex-shrink:0}.shop-card-name{margin:0;font-size:1.1rem;font-weight:600}.shop-card-description{margin:.15rem 0 0;color:#cbd5f5;font-size:.95rem}.shop-card-meta{display:flex;justify-content:space-between;font-size:.9rem;color:#cbd5f5}.shop-card-rarity{font-weight:600}.shop-card-costs{display:flex;justify-content:space-between;font-size:.9rem;color:#e2e8f0}.shop-card-warning{margin:0;font-size:.85rem;color:#fcd34d}.shop-card-lock{margin:0;font-size:.85rem;color:#f87171}.shop-card-button{width:100%;border:none;border-radius:.75rem;padding:.75rem 1rem;font-size:1rem;font-weight:600;color:#0f172a;background:#fbbf24;cursor:pointer;transition:background .12s ease,transform .12s ease}.shop-card-button:disabled{cursor:not-allowed;background:#475569;color:#cbd5f5}.shop-card-button:not(:disabled):hover{background:#fde047;transform:translateY(-1px)}.shop-card--disabled{opacity:.45;filter:grayscale(.6)}.shop-card--maxed{opacity:.7}.shop-card-active{margin:0;font-size:.85rem;color:#4ade80}.shop-actions{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;width:min(360px,100%)}@media(max-width:768px){.powerup-shop{padding:1.25rem;gap:1.5rem}.shop-header{flex-direction:column;align-items:flex-start;gap:1rem}.shop-breakdown{flex-wrap:wrap;gap:.5rem}.shop-actions{width:100%}}@media(max-width:480px){.shop-header{padding:1.25rem}.shop-card{padding:1rem}.shop-actions .btn{width:100%}}.achievement-gallery-screen{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;min-height:100vh;height:100vh;padding:0;background:radial-gradient(circle at 20% 20%,#1f2937,#0f172a 65%);color:#f8fafc;overflow-y:auto;overflow-x:hidden}.achievement-gallery{width:min(900px,100%);margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem) clamp(1rem,4vw,2rem);display:flex;flex-direction:column;gap:1.5rem;box-sizing:border-box}.gallery-header{text-align:center}.gallery-header h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 .5rem;color:#fbbf24;text-shadow:0 0 15px rgba(251,191,36,.4)}.gallery-subtitle{font-size:1.1rem;color:#94a3b8;margin:0}.gallery-subtitle--golden{color:#fbbf24;text-shadow:0 0 12px rgba(251,191,36,.5),0 0 30px rgba(251,191,36,.2);font-weight:600}.gallery-stats{background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:1.25rem}.gallery-stats-title{font-size:1.1rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em;margin:0 0 1rem;text-align:center}.gallery-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.gallery-stat{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem}.gallery-stat-value{font-size:1.35rem;font-weight:700;color:#e2e8f0}.gallery-stat-label{font-size:.8rem;color:#94a3b8;text-align:center}.achievement-grid{display:flex;flex-direction:column;gap:1rem}.achievement-card{background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:1.25rem;transition:border-color .3s ease}.achievement-card--partial{border-color:#60a5fa66}.achievement-card--completed{border-color:#fbbf2480;background:#fbbf240d}.achievement-card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.achievement-stars{flex-shrink:0;font-size:1.2rem;letter-spacing:.15em;color:#64748b;line-height:1;padding-top:.15rem}.achievement-card--partial .achievement-stars,.achievement-card--completed .achievement-stars{color:#fbbf24}.achievement-info{flex:1;min-width:0}.achievement-name{font-size:1.1rem;font-weight:600;margin:0 0 .25rem;color:#e2e8f0}.achievement-card--completed .achievement-name{color:#fbbf24}.achievement-description{font-size:.9rem;color:#94a3b8;margin:0;line-height:1.4}.achievement-progress-section{margin-bottom:.5rem}.achievement-progress-bar{height:8px;background:#94a3b826;border-radius:4px;overflow:hidden;margin-bottom:.35rem}.achievement-progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:4px;transition:width .5s ease}.achievement-card--completed .achievement-progress-fill{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.achievement-progress-text{font-size:.8rem;color:#94a3b8;margin:0;text-align:right}.achievement-keystone{display:flex;align-items:center;gap:.5rem;padding-top:.5rem;border-top:1px solid rgba(148,163,184,.1);font-size:.85rem;color:#64748b}.achievement-keystone--unlocked{color:#f59e0b}.achievement-keystone-label{font-weight:500}.achievement-keystone-name{font-weight:600;color:#cbd5e1}.achievement-keystone--unlocked .achievement-keystone-name{color:#fbbf24}.gallery-empty{text-align:center;color:#64748b;font-size:1.1rem;padding:3rem 0}.gallery-footer{display:flex;justify-content:center;padding:1rem 0 2rem}@media(max-width:768px){.achievement-card{padding:1rem}.achievement-stars{font-size:1rem}}.achievement-toast{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:.75rem;background:#0f172af2;border:1px solid rgba(251,191,36,.6);border-radius:12px;padding:.75rem 1.25rem;max-width:min(500px,90vw);box-shadow:0 8px 32px #00000080,0 0 20px #fbbf2426;animation:toast-slide-in .4s ease-out;pointer-events:none}.achievement-toast--fading{animation:toast-fade-out .4s ease-in forwards}.achievement-toast-badge{flex-shrink:0;font-size:1.5rem;color:#fbbf24}.achievement-toast-content{flex:1;min-width:0}.achievement-toast-title{font-weight:600;font-size:.95rem;color:#fbbf24;margin:0 0 .15rem}.achievement-toast-name{font-size:.9rem;color:#e2e8f0;margin:0;font-weight:500}.achievement-toast-keystone{font-size:.85rem;color:#f59e0b;font-weight:600;margin:.2rem 0 0}@keyframes toast-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toast-fade-out{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-20px)}}.class-select-screen{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;min-height:100vh;height:100vh;padding:0;background:radial-gradient(circle at 50% 30%,#1e293b,#0f172a 70%);color:#f8fafc;overflow-y:auto;overflow-x:hidden}.class-select{width:min(700px,100%);margin:0 auto;padding:clamp(1rem,3vw,2rem) clamp(1rem,4vw,2rem);display:flex;flex-direction:column;align-items:center;gap:1.5rem;box-sizing:border-box}.class-select-title{font-size:clamp(1.75rem,5vw,2.5rem);margin:0;color:#fbbf24;text-shadow:0 0 15px rgba(251,191,36,.4);text-align:center}.class-carousel{display:flex;align-items:flex-start;gap:.75rem;width:100%}.carousel-arrow{flex-shrink:0;width:48px;height:48px;margin-top:120px;border:1px solid rgba(248,250,252,.15);border-radius:50%;background:#0f172a99;color:#f8fafc;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease}.carousel-arrow:hover{background:#f8fafc14;border-color:#f8fafc4d}.carousel-spotlight{flex:1;min-width:0}.spotlight-card{background:#0f172acc;border:1px solid rgba(251,191,36,.3);border-radius:1rem;padding:clamp(1.25rem,3vw,2rem);display:flex;flex-direction:column;align-items:center;gap:1rem;transition:border-color .3s ease}.spotlight-card--locked{border-color:#94a3b833}.spotlight-icon{display:flex;align-items:center;justify-content:center}.spotlight-card--locked .spotlight-icon{opacity:.5;filter:grayscale(.6)}.spotlight-name{font-size:1.75rem;font-weight:700;margin:0;color:#fbbf24;text-align:center}.spotlight-card--locked .spotlight-name{color:#94a3b8}.spotlight-description{font-size:.95rem;color:#cbd5e1;margin:0;text-align:center;line-height:1.5;max-width:480px}.spotlight-section{width:100%;padding-top:.75rem;border-top:1px solid rgba(148,163,184,.1)}.spotlight-section-title{font-size:.85rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em;margin:0 0 .5rem}.spotlight-mechanics,.spotlight-disabled{margin:0;padding-left:1.25rem;font-size:.9rem;color:#e2e8f0;line-height:1.6}.spotlight-disabled{color:#f87171}.spotlight-none{margin:0;font-size:.9rem;color:#4ade80}.spotlight-ability-name{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#0fc}.spotlight-ability-desc{margin:0 0 .25rem;font-size:.9rem;color:#e2e8f0;line-height:1.4}.spotlight-ability-hint{margin:0;font-size:.8rem;color:#94a3b8;font-style:italic}.spotlight-achievement{display:flex;flex-direction:column;gap:.35rem}.spotlight-achievement--completed{flex-direction:row;align-items:center;gap:.5rem;color:#fbbf24;font-weight:600;font-size:.95rem}.spotlight-achievement-badge{font-size:1.2rem}.spotlight-achievement-name{margin:0;font-size:.95rem;font-weight:600;color:#e2e8f0}.spotlight-achievement-desc{margin:0;font-size:.85rem;color:#94a3b8}.spotlight-progress-bar{height:8px;background:#94a3b826;border-radius:4px;overflow:hidden}.spotlight-progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:4px;transition:width .5s ease}.spotlight-progress-text{margin:0;font-size:.8rem;color:#94a3b8;text-align:right}.carousel-dots{display:flex;gap:.5rem;justify-content:center}.carousel-dot{width:12px;height:12px;border-radius:50%;border:2px solid rgba(248,250,252,.3);background:transparent;cursor:pointer;padding:0;transition:background .15s ease,border-color .15s ease}.carousel-dot--active{background:#fbbf24;border-color:#fbbf24}.carousel-dot--locked{border-color:#94a3b833}.carousel-dot--locked.carousel-dot--active{background:#64748b;border-color:#64748b}.class-select-actions{display:flex;flex-direction:column;gap:.75rem;width:min(400px,100%);align-items:stretch}.class-select-btn{font-size:1.1rem;padding:.875rem 1.5rem}.class-select-btn:disabled{background:#475569;color:#94a3b8;cursor:not-allowed}.class-select-quick{font-size:.95rem}@media(max-width:768px){.carousel-arrow{width:40px;height:40px}.spotlight-card{padding:1rem}.spotlight-name{font-size:1.4rem}}.settings-screen{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;min-height:100vh;height:100vh;padding:0;background:radial-gradient(circle at 20% 20%,#1f2937,#0f172a 65%);color:#f8fafc;overflow-y:auto;overflow-x:hidden}.settings-content{width:min(600px,100%);margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem) clamp(1rem,4vw,2rem);display:flex;flex-direction:column;gap:1.5rem;box-sizing:border-box}.settings-content h1{font-size:clamp(2rem,5vw,3rem);margin:0;text-align:center;color:#fbbf24;text-shadow:0 0 15px rgba(251,191,36,.4)}.settings-section{background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.settings-section-title{font-size:1.1rem;font-weight:600;color:#e2e8f0;margin:0}.settings-section-desc{font-size:.9rem;color:#94a3b8;margin:0;line-height:1.4}.settings-subsection{display:flex;flex-direction:column;gap:.5rem}.escalation-selector{display:flex;gap:0;border-radius:8px;overflow:hidden;border:1px solid rgba(148,163,184,.25)}.escalation-btn{flex:1;padding:.5rem .25rem;font-size:.85rem;font-weight:500;color:#94a3b8;background:#94a3b814;border:none;cursor:pointer;transition:background .15s ease,color .15s ease;display:flex;align-items:center;justify-content:center;gap:.3rem}.escalation-btn:not(:last-child){border-right:1px solid rgba(148,163,184,.2)}.escalation-btn:hover{background:#94a3b826;color:#e2e8f0}.escalation-btn--active{background:#00d4ff33;color:#00d4ff;font-weight:600}.escalation-btn--active:hover{background:#00d4ff40;color:#00d4ff}.settings-modifier-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.settings-modifier-desc{font-size:.8rem;color:#64748b;line-height:1.3}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between}.settings-toggle-label{font-size:1rem;color:#e2e8f0;display:inline-flex;align-items:center;gap:.35rem}.settings-toggle{position:relative;width:52px;height:28px;border-radius:14px;border:1px solid rgba(148,163,184,.3);background:#94a3b833;cursor:pointer;padding:0;transition:background .2s ease,border-color .2s ease}.settings-toggle--on{background:#00d4ff4d;border-color:#00d4ff80}.settings-toggle-knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#94a3b8;transition:transform .2s ease,background .2s ease}.settings-toggle--on .settings-toggle-knob{transform:translate(24px);background:#00d4ff}.btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:1px solid rgba(220,38,38,.4)}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 4px 15px #dc262666}.settings-footer{display:flex;justify-content:center;padding:1rem 0 2rem}.settings-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.settings-dialog{background:#1e293b;border:1px solid rgba(148,163,184,.3);border-radius:16px;padding:2rem;max-width:420px;width:100%;display:flex;flex-direction:column;gap:1rem;box-shadow:0 8px 32px #00000080}.settings-dialog-title{font-size:1.4rem;font-weight:700;color:#f8fafc;margin:0;text-align:center}.settings-dialog-message{font-size:.95rem;color:#94a3b8;margin:0;text-align:center;line-height:1.5}.settings-dialog-buttons{display:flex;gap:.75rem;justify-content:center;margin-top:.5rem}.settings-dialog-buttons .btn{flex:1;max-width:180px}.loadout-screen{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;min-height:100vh;height:100vh;padding:0;background:radial-gradient(circle at 20% 20%,#1f2937,#0f172a 65%);color:#f8fafc;overflow-y:auto;overflow-x:hidden}.loadout-container{width:min(1200px,100%);margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem) clamp(1rem,4vw,2rem) clamp(2.5rem,6vw,4rem);display:flex;flex-direction:column;gap:2rem;box-sizing:border-box}.loadout-header{display:flex;justify-content:space-between;align-items:flex-end;background:#0f172abf;border:1px solid rgba(248,250,252,.08);border-radius:1rem;padding:1.75rem;box-shadow:0 25px 45px #080b1366}.loadout-title{margin:0;font-size:clamp(1.8rem,3vw,2.5rem);color:#fbbf24}.loadout-subtitle{margin:.25rem 0 0;font-size:.9rem;color:#94a3b8}.loadout-salvage{text-align:right}.loadout-salvage-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.2rem;color:#94a3b8;margin:0 0 .25rem}.loadout-salvage-amount{font-size:clamp(2rem,3.5vw,3rem);font-weight:700;color:#fbbf24;margin:0}.loadout-empty{text-align:center;padding:2rem;color:#94a3b8;font-size:1.1rem;background:#0f172a80;border-radius:1rem;border:1px dashed rgba(251,191,36,.2)}.loadout-card-controls{display:flex;align-items:center;gap:.75rem}.loadout-btn{width:36px;height:36px;border:none;border-radius:.5rem;font-size:1.2rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s ease,transform .12s ease}.loadout-btn--minus{background:#475569;color:#f8fafc}.loadout-btn--plus{background:#fbbf24;color:#0f172a}.loadout-btn:disabled{cursor:not-allowed;opacity:.35}.loadout-btn:not(:disabled):hover{transform:translateY(-1px)}.loadout-btn--minus:not(:disabled):hover{background:#64748b}.loadout-btn--plus:not(:disabled):hover{background:#fde047}.loadout-stack-count{font-size:1.2rem;font-weight:700;min-width:2ch;text-align:center}.loadout-actions{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;width:min(360px,100%)}@media(max-width:768px){.loadout-container{padding:1.25rem;gap:1.5rem}.loadout-header{flex-direction:column;align-items:flex-start;gap:1rem}.loadout-salvage{text-align:left}.loadout-actions{width:100%}}@media(max-width:480px){.loadout-header{padding:1.25rem}}.mode-select-content{text-align:center;animation:fadeIn .5s ease-in;display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:2rem 1.5rem;width:100%;max-width:600px;box-sizing:border-box}.mode-select-title{font-size:2rem;color:#00d4ff;text-shadow:0 0 16px rgba(0,212,255,.4);margin:0 0 .5rem}.mode-continue-btn{width:100%}.mode-cards{display:flex;flex-direction:column;gap:.75rem;width:100%}.mode-card{background:#0f172a99;border:1px solid rgba(0,212,255,.3);border-radius:10px;padding:1.25rem 1.5rem;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;color:#fff;font-family:inherit;font-size:inherit;width:100%;box-sizing:border-box}.mode-card:hover{border-color:#00d4ffb3;background:#0f172acc;transform:translateY(-2px);box-shadow:0 6px 20px #00d4ff26}.mode-card--disabled{cursor:default;opacity:.5;border-color:#64748b4d}.mode-card--disabled:hover{border-color:#64748b4d;background:#0f172a99;transform:none;box-shadow:none}.mode-card-name{font-size:1.2rem;font-weight:700;color:#00d4ff;margin:0 0 .4rem}.mode-card--disabled .mode-card-name{color:#94a3b8}.mode-card-desc{font-size:.9rem;color:#cbd5e1;margin:0;line-height:1.4}.mode-card-seed{font-size:.8rem;color:#64748b;margin:.3rem 0 0;font-family:monospace}.mode-card-badge{position:absolute;top:.75rem;right:.75rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;background:#64748b33;padding:.2rem .5rem;border-radius:4px}.mode-back-btn{margin-top:.5rem}@media(max-width:480px){.mode-select-content{padding:1.5rem 1rem}.mode-select-title{font-size:1.6rem}.mode-card{padding:1rem 1.25rem}.mode-card-name{font-size:1.05rem}}#root{width:100%;height:100vh;margin:0;padding:0;overflow:hidden}.app-container{width:100%;height:100vh;display:flex;flex-direction:column}@media(max-width:768px){.app-container{height:auto;min-height:100vh}}
