:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #0a0a0f;--bg-card: #12121a;--bg-card-hover: #1a1a28;--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .15);--text: #e8e8f0;--text-dim: rgba(255, 255, 255, .5);--accent: #ff4444;--accent-glow: rgba(255, 68, 68, .3);--gold: #ffcc00;--xp: #44aaff;--rank: #ff8844;--heal: #44ff88;--critical: #ff44ff;--info: #88aaff}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:var(--text)}body{overflow-x:hidden}button{cursor:pointer;font-family:inherit;border:none;outline:none;transition:all .2s}button:disabled{cursor:not-allowed;opacity:.4}.toast-message{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid var(--accent);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;font-size:.9rem;font-weight:600;z-index:1000;animation:toastIn .3s ease-out;box-shadow:0 0 20px var(--accent-glow)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}.rest-btn{position:fixed;bottom:1.5rem;right:1.5rem;background:linear-gradient(135deg,#1a2a1a,#0a1a0a);border:1px solid rgba(68,255,136,.3);color:var(--heal);padding:.6rem 1.2rem;border-radius:.5rem;font-size:.85rem;font-weight:600;z-index:100}.rest-btn:hover{background:linear-gradient(135deg,#2a3a2a,#1a2a1a);box-shadow:0 0 15px #4f83}.title-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at center,#1a0a0a,#0a0a0f 70%)}.title-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.title-particle{position:absolute;background:var(--accent);border-radius:50%;opacity:0;animation:particleFloat 6s infinite ease-in-out}@keyframes particleFloat{0%,to{opacity:0;transform:translateY(0) scale(1)}50%{opacity:.6;transform:translateY(-30px) scale(1.5)}}.title-content{text-align:center;z-index:2;opacity:0;transform:translateY(2rem);transition:all .8s cubic-bezier(.16,1,.3,1)}.title-content.visible{opacity:1;transform:translateY(0)}.title-badge{font-size:.7rem;letter-spacing:.3em;color:var(--text-dim);margin-bottom:1rem}.title-main{font-size:clamp(2.5rem,8vw,5rem);font-weight:900;letter-spacing:-.03em;line-height:1;margin-bottom:.5rem;display:flex;flex-direction:column;gap:0}.title-one{color:#fff;font-size:.5em;letter-spacing:.2em}.title-punch{color:var(--accent);text-shadow:0 0 40px var(--accent-glow),0 0 80px rgba(255,68,68,.15)}.title-man{color:#fff;font-size:.5em;letter-spacing:.2em}.title-subtitle{font-size:1.2rem;font-weight:700;letter-spacing:.15em;color:var(--gold);margin-bottom:.5rem}.title-tagline{font-size:.85rem;color:var(--text-dim);margin-bottom:2rem}.title-start-btn{position:relative;background:linear-gradient(135deg,var(--accent),#cc2222);color:#fff;font-size:1rem;font-weight:700;letter-spacing:.1em;padding:.9rem 2.5rem;border-radius:.5rem;overflow:hidden}.title-start-btn:hover{transform:scale(1.05);box-shadow:0 0 30px var(--accent-glow)}.btn-glow{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);animation:btnGlow 3s infinite}@keyframes btnGlow{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.title-controls-hint{font-size:.75rem;color:var(--text-dim);margin-top:1.5rem}.title-fist{position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,68,68,.08),transparent 70%);pointer-events:none}.title-fist.left{left:-100px;bottom:-100px}.title-fist.right{right:-100px;top:-100px}.create-screen{min-height:100vh;padding:2rem;display:flex;flex-direction:column;align-items:center;max-width:900px;margin:0 auto}.create-header{text-align:center;margin-bottom:2rem}.create-header h1{font-size:2rem;font-weight:800;letter-spacing:.05em;margin-bottom:.5rem}.create-header p{color:var(--text-dim);font-size:.9rem}.create-name-row{width:100%;max-width:400px;margin-bottom:2rem}.create-name-row label{display:block;font-size:.75rem;font-weight:700;letter-spacing:.15em;color:var(--text-dim);margin-bottom:.5rem}.create-name-input{width:100%;background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;border-radius:.5rem;font-size:1rem;font-family:inherit;transition:border-color .2s}.create-name-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-glow)}.create-name-input::placeholder{color:var(--text-dim)}.create-classes{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;width:100%;margin-bottom:2rem}.create-class-card{background:var(--bg-card);border:2px solid var(--border);border-radius:.75rem;padding:1.25rem;cursor:pointer;transition:all .25s;text-align:center}.create-class-card:hover{border-color:var(--class-color, var(--border-hover));background:var(--bg-card-hover);transform:translateY(-2px)}.create-class-card.selected{border-color:var(--class-color, var(--accent));box-shadow:0 0 20px #ff444426}.class-icon{font-size:2.5rem;margin-bottom:.5rem}.class-name{font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.class-desc{font-size:.75rem;color:var(--text-dim);margin-bottom:.75rem;line-height:1.4}.class-stats{display:flex;flex-direction:column;gap:.35rem}.stat-bar{display:flex;align-items:center;gap:.5rem;font-size:.65rem;font-weight:600;color:var(--text-dim)}.stat-bar span{width:2rem;text-align:right}.stat-fill{flex:1;height:4px;background:var(--class-color, var(--accent));border-radius:2px;opacity:.7}.create-abilities{width:100%;margin-bottom:2rem}.create-abilities h3{font-size:.8rem;font-weight:700;letter-spacing:.15em;color:var(--text-dim);margin-bottom:.75rem}.abilities-list{display:flex;flex-direction:column;gap:.5rem}.ability-preview{display:flex;align-items:flex-start;gap:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:.5rem;padding:.75rem}.ability-icon{font-size:1.5rem;flex-shrink:0}.ability-name{font-weight:700;font-size:.85rem}.ability-dmg{color:var(--accent);font-size:.75rem;margin-left:.5rem}.ability-desc{font-size:.75rem;color:var(--text-dim);margin:.15rem 0}.ability-cd{font-size:.65rem;color:var(--text-dim)}.create-start-btn{background:linear-gradient(135deg,var(--accent),#cc2222);color:#fff;font-size:1rem;font-weight:700;letter-spacing:.08em;padding:.9rem 2.5rem;border-radius:.5rem}.create-start-btn:hover:not(:disabled){transform:scale(1.03);box-shadow:0 0 25px var(--accent-glow)}.hub-screen{min-height:100vh;padding:1.5rem 1.5rem 5rem;max-width:700px;margin:0 auto}.hub-header{margin-bottom:1.5rem}.hub-city-status{display:flex;align-items:center;justify-content:space-between;gap:1rem}.city-label{font-size:.7rem;font-weight:700;letter-spacing:.2em;color:var(--text-dim)}.threat-badge{font-size:.65rem;font-weight:800;letter-spacing:.1em;padding:.3rem .8rem;border-radius:2rem;color:#fff}.hub-main{display:flex;flex-direction:column;gap:1.5rem}.hub-player-card{background:var(--bg-card);border:1px solid var(--border);border-radius:1rem;padding:1.5rem}.player-avatar{width:64px;height:64px;border-radius:50%;border:3px solid;display:grid;place-items:center;font-size:2rem;margin-bottom:.75rem;background:#ffffff08}.player-info{margin-bottom:1rem}.player-name{font-size:1.4rem;font-weight:800}.player-class{font-size:.85rem;font-weight:600;margin-top:.15rem}.player-rank{font-size:.8rem;font-weight:700;margin-top:.15rem}.player-bars{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.bar-group{display:flex;flex-direction:column;gap:.2rem}.bar-label{display:flex;justify-content:space-between;font-size:.65rem;font-weight:700;color:var(--text-dim);letter-spacing:.1em}.bar{height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.bar-fill.hp{background:linear-gradient(90deg,#f44,#f66)}.bar-fill.xp{background:linear-gradient(90deg,#48f,#4af)}.bar-fill.rank{background:linear-gradient(90deg,#f84,#fa4)}.player-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1rem}.stat-item{background:#ffffff08;border-radius:.5rem;padding:.5rem;text-align:center}.stat-label{display:block;font-size:.6rem;font-weight:700;color:var(--text-dim);letter-spacing:.15em}.stat-value{font-size:1.1rem;font-weight:800}.stat-value.gold{color:var(--gold)}.player-abilities-mini{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.mini-label{font-size:.7rem;font-weight:700;color:var(--text-dim)}.mini-ability{font-size:1.2rem}.hub-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.hub-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1.25rem;text-align:left;display:flex;flex-direction:column;gap:.3rem;transition:all .2s}.hub-btn:hover{border-color:var(--border-hover);background:var(--bg-card-hover);transform:translateY(-2px)}.hub-btn-icon{font-size:1.5rem}.hub-btn-label{font-size:.9rem;font-weight:700;letter-spacing:.05em}.hub-btn-desc{font-size:.7rem;color:var(--text-dim)}.missions-btn:hover{border-color:var(--accent)}.training-btn:hover{border-color:var(--xp)}.shop-btn:hover{border-color:var(--gold)}.rankings-btn:hover{border-color:var(--rank)}.hub-missions-summary{display:flex;gap:1.5rem;justify-content:center;margin-top:1rem;font-size:.75rem;color:var(--text-dim);font-weight:600}.missions-screen{min-height:100vh;padding:2rem;max-width:700px;margin:0 auto}.missions-header{text-align:center;margin-bottom:2rem}.missions-header h1{font-size:1.8rem;font-weight:800}.missions-header p{color:var(--text-dim);font-size:.9rem}.missions-empty{text-align:center;padding:2rem;color:var(--text-dim)}.missions-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.completed-list{opacity:.6}.mission-card{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1.25rem;cursor:pointer;transition:all .2s}.mission-card:hover:not(.completed){border-color:var(--border-hover);background:var(--bg-card-hover);transform:translateY(-1px)}.mission-card.completed{cursor:default}.mission-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.mission-threat{font-size:.65rem;font-weight:800;letter-spacing:.1em;padding:.2rem .6rem;border-radius:1rem;color:#fff;text-transform:uppercase}.mission-rank-req{font-size:.7rem;font-weight:700}.mission-done-badge{font-size:.7rem;font-weight:700;color:var(--heal)}.mission-name{font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.mission-desc{font-size:.85rem;color:var(--text-dim);margin-bottom:.5rem}.mission-story{font-size:.8rem;color:#fff6;font-style:italic;margin-bottom:.75rem;line-height:1.5}.mission-rewards{display:flex;gap:1rem;font-size:.75rem;font-weight:700;color:var(--gold)}.mission-boss-badge{display:inline-block;margin-top:.5rem;font-size:.65rem;font-weight:800;letter-spacing:.1em;color:var(--accent);border:1px solid var(--accent);padding:.15rem .5rem;border-radius:.25rem}.missions-completed-header{font-size:1rem;font-weight:700;margin-bottom:.75rem;color:var(--text-dim)}.back-btn{background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.6rem 1.2rem;border-radius:.5rem;font-size:.85rem;font-weight:600;display:inline-block}.back-btn:hover{border-color:var(--border-hover);background:var(--bg-card-hover)}.combat-screen{min-height:100vh;padding:1rem;max-width:650px;margin:0 auto;display:flex;flex-direction:column}.combat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.combat-mission-name{font-size:1rem;font-weight:700}.combat-enemy-count{font-size:.75rem;color:var(--text-dim);font-weight:600}.combat-arena{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:1.5rem 0;margin-bottom:1rem}.combatant{flex:1;text-align:center;padding:1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;transition:transform .15s}.combatant.shake{animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.combatant.attacking{animation:attackPunch .4s ease-out}@keyframes attackPunch{0%{transform:translate(0)}40%{transform:translate(20px) scale(1.1)}to{transform:translate(0) scale(1)}}.enemy-side.attacking{animation:attackPunchEnemy .4s ease-out}@keyframes attackPunchEnemy{0%{transform:translate(0)}40%{transform:translate(-20px) scale(1.1)}to{transform:translate(0) scale(1)}}.combatant-icon{font-size:2.5rem;margin-bottom:.5rem}.enemy-icon{color:var(--accent)}.combatant-name{font-size:.9rem;font-weight:700;margin-bottom:.25rem}.boss-phase{display:block;font-size:.65rem;color:var(--accent);margin-top:.15rem}.combatant-desc{font-size:.65rem;color:var(--text-dim);margin-bottom:.5rem}.combatant-hp-bar{height:10px;background:#ffffff0f;border-radius:5px;overflow:hidden;margin-bottom:.25rem}.hp-fill{height:100%;border-radius:5px;transition:width .4s ease}.player-hp{background:linear-gradient(90deg,#4c4,#6e6)}.enemy-hp{background:linear-gradient(90deg,#f44,#f66)}.combatant-hp-text{font-size:.7rem;color:var(--text-dim);font-weight:600}.boss-abilities{display:flex;gap:.25rem;justify-content:center;margin-top:.5rem}.boss-ability{font-size:.8rem;opacity:.5}.combat-vs{font-size:1.2rem;font-weight:900;color:var(--accent);text-shadow:0 0 10px var(--accent-glow);flex-shrink:0}.combat-log{background:var(--bg-card);border:1px solid var(--border);border-radius:.5rem;padding:.75rem;max-height:160px;overflow-y:auto;margin-bottom:1rem;font-size:.78rem;line-height:1.6}.log-entry{padding:.15rem 0}.log-damage{color:#f66}.log-heal{color:var(--heal)}.log-info{color:var(--info)}.log-critical{color:var(--critical);font-weight:700}.log-ability{color:#fa4}.log-victory{color:var(--gold);font-weight:700}.log-defeat{color:#f44;font-weight:700}.combat-actions{display:flex;flex-direction:column;gap:.75rem}.action-row{display:flex;gap:.5rem}.abilities-row{display:flex;gap:.5rem;flex-wrap:wrap}.action-btn{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:.5rem;padding:.6rem .8rem;color:var(--text);display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;flex:1;min-width:0;justify-content:center;overflow:hidden}.action-btn:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-card-hover)}.action-btn.on-cooldown{opacity:.5}.action-icon{font-size:1rem;flex-shrink:0}.action-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cooldown-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#00000080;font-size:1.2rem;font-weight:800;color:var(--accent)}.basic-btn:hover:not(:disabled){border-color:#888}.potion-btn:hover:not(:disabled){border-color:var(--heal)}.flee-btn:hover:not(:disabled){border-color:var(--gold)}.ability-btn:hover:not(:disabled){border-color:var(--rank)}.combat-waiting{text-align:center;padding:1.5rem;color:var(--text-dim)}.waiting-text{font-size:.9rem;font-weight:600;margin-bottom:.5rem}.waiting-dots span{animation:dotPulse 1.4s infinite;font-size:1.5rem}.waiting-dots span:nth-child(2){animation-delay:.2s}.waiting-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{opacity:.2}40%{opacity:1}}.combat-story{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(ellipse at center,#1a0a0a 0%,var(--bg) 70%)}.story-card{max-width:500px;text-align:center;animation:storyFadeIn .8s ease-out}@keyframes storyFadeIn{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}.story-mission-name{font-size:1.8rem;font-weight:900;margin-bottom:1rem}.story-text{font-size:.95rem;color:var(--text-dim);line-height:1.7;margin-bottom:1.5rem}.story-threat{margin-bottom:2rem}.threat-label{font-size:.7rem;font-weight:800;letter-spacing:.15em;padding:.4rem 1rem;border-radius:2rem;color:#fff}.story-begin-btn{background:linear-gradient(135deg,var(--accent),#cc2222);color:#fff;font-size:1rem;font-weight:700;letter-spacing:.1em;padding:.9rem 2.5rem;border-radius:.5rem}.story-begin-btn:hover{transform:scale(1.05);box-shadow:0 0 30px var(--accent-glow)}.combat-result{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000d9;z-index:100;animation:resultFadeIn .5s ease-out}@keyframes resultFadeIn{0%{opacity:0}to{opacity:1}}.result-icon{font-size:4rem;margin-bottom:1rem;animation:resultBounce .6s ease-out}@keyframes resultBounce{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.result-text{font-size:2.5rem;font-weight:900;margin-bottom:1rem}.victory-result .result-text{color:var(--gold);text-shadow:0 0 30px rgba(255,204,0,.4)}.defeat-result .result-text{color:var(--accent);text-shadow:0 0 30px var(--accent-glow)}.result-rewards{display:flex;gap:1.5rem;font-size:.9rem;font-weight:700;color:var(--gold)}.result-sub{color:var(--text-dim);font-size:.9rem}.training-screen{min-height:100vh;padding:2rem;max-width:700px;margin:0 auto}.training-header{text-align:center;margin-bottom:2rem}.training-header h1{font-size:1.8rem;font-weight:800}.training-header p{color:var(--text-dim);font-size:.9rem}.training-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.training-card{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1.25rem;text-align:center;cursor:pointer;transition:all .2s}.training-card:hover{border-color:var(--xp);background:var(--bg-card-hover);transform:translateY(-2px)}.training-icon{font-size:2rem;margin-bottom:.5rem}.training-name{font-size:.95rem;font-weight:700;margin-bottom:.25rem}.training-desc{font-size:.75rem;color:var(--text-dim);margin-bottom:.5rem}.training-sessions{font-size:.7rem;color:var(--xp);font-weight:600}.training-active{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.training-arena{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin:2rem 0}.training-character{font-size:4rem;animation:trainingBounce .5s ease-in-out infinite alternate}@keyframes trainingBounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.training-progress-bar{width:300px;max-width:100%;height:12px;background:#ffffff0f;border-radius:6px;overflow:hidden}.training-progress-fill{height:100%;background:linear-gradient(90deg,var(--xp),#66ccff);border-radius:6px;transition:width .1s}.training-clicks{font-size:.85rem;color:var(--text-dim);font-weight:600}.training-click-btn{position:relative;background:linear-gradient(135deg,var(--xp),#2266cc);color:#fff;font-size:1.2rem;font-weight:800;letter-spacing:.05em;padding:1rem 2.5rem;border-radius:.75rem;overflow:hidden}.training-click-btn:active{transform:scale(.95)}.click-ripple{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(45deg,transparent,rgba(255,255,255,.15),transparent);animation:btnGlow 1.5s infinite}.training-complete{animation:resultBounce .5s ease-out}.complete-icon{font-size:3rem;margin-bottom:.5rem}.complete-text{font-size:1.3rem;font-weight:800;color:var(--heal);margin-bottom:.5rem}.complete-boost{font-size:1rem;font-weight:700;color:var(--gold)}.shop-screen{min-height:100vh;padding:2rem;max-width:600px;margin:0 auto}.shop-header{text-align:center;margin-bottom:2rem}.shop-header h1{font-size:1.8rem;font-weight:800}.shop-header p{color:var(--text-dim);font-size:.9rem}.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:2rem}.shop-item{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1.25rem;text-align:center;transition:all .2s}.shop-item:hover:not(.disabled){border-color:var(--gold);background:var(--bg-card-hover)}.shop-item.disabled{opacity:.5}.shop-item-icon{font-size:2rem;margin-bottom:.5rem}.shop-item-name{font-size:.9rem;font-weight:700;margin-bottom:.25rem}.shop-item-desc{font-size:.7rem;color:var(--text-dim);margin-bottom:.5rem}.shop-item-cost{font-size:.85rem;font-weight:700;color:var(--gold);margin-bottom:.75rem}.shop-buy-btn{background:linear-gradient(135deg,var(--gold),#cc8800);color:#000;font-size:.8rem;font-weight:800;letter-spacing:.1em;padding:.4rem 1.2rem;border-radius:.35rem}.shop-buy-btn:hover:not(:disabled){transform:scale(1.05)}.shop-inventory{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1rem;margin-bottom:1rem}.shop-inventory h3{font-size:.85rem;font-weight:700;margin-bottom:.5rem}.inventory-items{font-size:.85rem}.rankings-screen{min-height:100vh;padding:2rem;max-width:750px;margin:0 auto}.rankings-header{text-align:center;margin-bottom:2rem}.rankings-header h1{font-size:1.8rem;font-weight:800}.rankings-header p{color:var(--text-dim);font-size:.9rem}.rankings-table{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;overflow:hidden;margin-bottom:2rem}.rankings-table-header{display:grid;grid-template-columns:40px 50px 1fr 1fr 80px;gap:.5rem;padding:.75rem 1rem;background:#ffffff08;font-size:.65rem;font-weight:700;color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--border)}.rankings-row{display:grid;grid-template-columns:40px 50px 1fr 1fr 80px;gap:.5rem;padding:.6rem 1rem;font-size:.8rem;align-items:center;border-bottom:1px solid rgba(255,255,255,.03);transition:background .15s}.rankings-row:hover{background:#ffffff05}.rankings-row.player-row{background:#ff444414;border:1px solid rgba(255,68,68,.2);border-radius:.5rem;font-weight:700}.rank-badge{display:inline-block;font-size:.65rem;font-weight:800;padding:.15rem .4rem;border-radius:.25rem;color:#fff}.rk-col{text-align:center}.name-col{font-weight:600}.title-col{color:var(--text-dim);font-size:.75rem}.power-col{text-align:right;font-weight:700;color:var(--gold)}@media(max-width:600px){.create-classes{grid-template-columns:1fr 1fr}.hub-actions{grid-template-columns:1fr}.combat-arena{flex-direction:column;gap:.75rem}.combat-vs{transform:rotate(90deg)}.action-row{flex-wrap:wrap}.abilities-row{flex-direction:column}.rankings-table-header,.rankings-row{grid-template-columns:30px 40px 1fr 60px}.title-col{display:none}}.news-ticker{display:flex;align-items:center;gap:.5rem;background:#ffffff08;border:1px solid var(--border);border-radius:.5rem;padding:.5rem 1rem;font-size:.8rem;animation:newsSlide .5s ease-out}.news-icon{font-size:1rem}.news-headline{flex:1;color:var(--text)}.news-threat{font-weight:700;font-size:.7rem}@keyframes newsSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.achievement-toast{position:fixed;top:4rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#2a1a0a,#1a0a00);border:1px solid var(--gold);color:var(--gold);padding:.75rem 1.5rem;border-radius:.5rem;font-size:.9rem;font-weight:700;z-index:1000;animation:achievementPop .5s ease-out;box-shadow:0 0 30px #ffcc004d}@keyframes achievementPop{0%{opacity:0;transform:translate(-50%) scale(.8)}50%{transform:translate(-50%) scale(1.1)}to{opacity:1;transform:translate(-50%) scale(1)}}.active-boosts{display:flex;gap:.35rem;margin-top:.35rem;justify-content:center}.boost-badge{font-size:.6rem;font-weight:700;padding:.15rem .4rem;border-radius:.25rem;animation:boostPulse 2s infinite}.boost-badge.atk{background:#f443;color:#f66;border:1px solid rgba(255,68,68,.4)}.boost-badge.def{background:#48f3;color:#6af;border:1px solid rgba(68,136,255,.4)}@keyframes boostPulse{0%,to{opacity:1}50%{opacity:.7}}.action-btn.boost-btn{background:linear-gradient(135deg,#2a1a3a,#1a0a2a);border-color:#aa44ff4d}.action-btn.boost-btn:hover{border-color:#a4f9;background:linear-gradient(135deg,#3a2a4a,#2a1a3a)}.achievements-screen{padding:2rem;max-width:900px;margin:0 auto}.achievements-header{text-align:center;margin-bottom:2rem}.achievements-header h1{font-size:1.8rem;color:var(--gold);margin-bottom:.5rem}.achievements-header p{color:var(--text-dim);font-size:.9rem}.achievements-progress{margin-bottom:2rem;text-align:center}.achievements-progress-bar{height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.achievements-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),#ff8800);border-radius:4px;transition:width .5s ease}.achievements-progress-text{font-size:.8rem;color:var(--gold);font-weight:600}.achievements-section{margin-bottom:2rem}.achievements-section-title{font-size:1rem;color:var(--text-dim);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.achievements-grid{display:flex;flex-direction:column;gap:.75rem}.achievement-card{display:flex;align-items:center;gap:1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:.5rem;padding:1rem;transition:all .2s}.achievement-card.unlocked{border-color:#fc03;background:linear-gradient(135deg,rgba(255,204,0,.05),transparent)}.achievement-card.locked{opacity:.6}.achievement-icon{font-size:1.5rem;min-width:2rem;text-align:center}.achievement-info{flex:1}.achievement-name{font-weight:700;font-size:.9rem;margin-bottom:.25rem}.achievement-desc{font-size:.75rem;color:var(--text-dim);margin-bottom:.25rem}.achievement-reward{font-size:.7rem;color:var(--gold)}.achievement-check{font-size:1.2rem}.achievements-btn{border-color:#ffcc0026!important}.achievements-btn:hover{border-color:#fc06!important;background:linear-gradient(135deg,rgba(255,204,0,.08),transparent)!important}.bossrush-btn{border-color:#ff006426!important}.bossrush-btn:hover{border-color:#ff006466!important;background:linear-gradient(135deg,rgba(255,0,100,.08),transparent)!important}
