:root{--background:#1a1a2e;--foreground:#e94560;--primary:#16213e;--secondary:#0f3460;--accent:#e94560;--text:#fff}*{box-sizing:border-box}html,body{width:100%;min-height:100%}body{background-color:var(--background);color:var(--text);touch-action:pan-y;min-height:100dvh;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,sans-serif;overflow:hidden auto}h1,h2,h3{margin:0}button{cursor:pointer;font-family:inherit;transition:all .2s}button:active{transform:scale(.95)}.game-container{flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100dvh;display:flex;position:relative}.game-viewport{touch-action:none;overscroll-behavior:none;background-color:var(--background);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.game-scale-frame{flex:none;position:relative}.game-surface{touch-action:none;position:absolute;inset:0 auto auto 0;overflow:hidden}.game-surface canvas{touch-action:none;display:block}.game-orientation-hint{display:none}.performance-hud{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));z-index:1200;color:#e2e8f0;letter-spacing:0;pointer-events:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;position:fixed}.performance-hud-toggle{width:76px;height:28px;color:inherit;font:inherit;font-variant-numeric:tabular-nums;opacity:.62;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172ab8;border:1px solid #94a3b852;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 7px;font-weight:800;display:inline-flex}.performance-hud:hover .performance-hud-toggle,.performance-hud-toggle:focus-visible,.performance-hud-toggle[aria-expanded=true]{opacity:1}.performance-hud-dot{background:#94a3b8;border-radius:50%;flex:0 0 7px;width:7px;height:7px;box-shadow:0 0 0 2px #94a3b826}.performance-hud-good .performance-hud-dot{background:#22c55e}.performance-hud-warning .performance-hud-dot{background:#f59e0b}.performance-hud-slow .performance-hud-dot{background:#ef4444}.performance-hud-details{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172af0;border:1px solid #94a3b852;border-radius:6px;width:238px;padding:8px 9px;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 22px #0000004d}.performance-hud-row{white-space:nowrap;justify-content:space-between;align-items:center;gap:10px;min-height:20px;display:flex}.performance-hud-row span{color:#94a3b8}.performance-hud-row strong{color:#f8fafc;font-variant-numeric:tabular-nums;font-weight:800}.performance-hud-note{color:#fbbf24;border-top:1px solid #94a3b833;margin-top:5px;padding-top:6px;line-height:1.35}.mobile-game-hud,.mobile-game-modal{display:none}.auth-overlay{animation:.3s fadeIn}@media (max-width:640px){.auth-viewport{min-height:100dvh;padding:max(10px,env(safe-area-inset-top))max(10px,env(safe-area-inset-right))max(10px,env(safe-area-inset-bottom))max(10px,env(safe-area-inset-left));box-sizing:border-box;touch-action:pan-y;overscroll-behavior-y:contain;justify-content:flex-start!important;align-items:stretch!important;overflow:hidden auto!important}.auth-modal{min-height:calc(100dvh - 20px);border-radius:8px!important;width:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:58px 16px 20px!important;overflow:visible!important}.auth-home-icon{border-radius:8px!important;width:54px!important;height:54px!important;margin-bottom:8px!important}.auth-home-title{overflow-wrap:anywhere;max-width:100%;line-height:1.08;margin-bottom:6px!important;font-size:2rem!important}.auth-home-grid{flex-direction:column;gap:12px!important;display:flex!important}.auth-home-grid>*{width:100%;min-width:0;grid-area:auto/1!important}.auth-home-primary{order:1}.auth-home-side{order:2}.auth-home-message{order:3}.auth-home-grid button,.auth-home-grid input{min-height:44px}.auth-home-wallet{flex-direction:column!important;justify-content:flex-start!important;align-items:stretch!important}.auth-home-wallet-info,.auth-home-wallet-actions{width:100%;flex:none!important;min-width:0!important}.auth-guide-sections{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}.auth-guide-content{padding-right:4px!important}}@media (max-width:760px) and (orientation:portrait){.game-orientation-hint{top:max(66px,calc(env(safe-area-inset-top) + 58px));z-index:1000;color:#f8fafc;text-align:center;pointer-events:none;background:#0f172aeb;border:1px solid #fbbf2473;border-radius:8px;flex-direction:column;gap:2px;width:min(100% - 24px,360px);padding:8px 12px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.game-orientation-hint strong{color:#fbbf24;font-size:.8rem}.game-orientation-hint span{color:#cbd5e1;font-size:.7rem}}@media (max-width:760px),(max-height:640px){.performance-hud{top:max(64px,calc(env(safe-area-inset-top) + 60px));right:max(6px,env(safe-area-inset-right));bottom:auto}.performance-hud-details{top:calc(100% + 6px);bottom:auto}.game-overlay-topbar,.game-overlay-bottom{display:none!important}.mobile-game-hud{z-index:900;pointer-events:none;font-family:Inter,system-ui,-apple-system,sans-serif;display:block;position:fixed;inset:0}.mobile-game-hud-top{top:max(6px,env(safe-area-inset-top));left:max(6px,env(safe-area-inset-left));right:max(6px,env(safe-area-inset-right));pointer-events:auto;gap:6px;min-width:0;display:flex;position:absolute}.mobile-game-stats,.mobile-game-controls,.mobile-game-hud-bottom{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ae6;border:1px solid #ffffff2e;border-radius:8px;box-shadow:0 6px 18px #0000004d}.mobile-game-stats{color:#f8fafc;white-space:nowrap;flex:auto;justify-content:space-around;align-items:center;gap:5px;min-width:0;min-height:44px;padding:4px 8px;font-size:.76rem;display:flex}.mobile-game-controls{overscroll-behavior-x:contain;scrollbar-width:none;flex:0 auto;max-width:55%;display:flex;overflow-x:auto}.mobile-game-controls::-webkit-scrollbar{display:none}.mobile-game-summons::-webkit-scrollbar{display:none}.mobile-game-controls button{color:#f8fafc;background:0 0;border:0;border-left:1px solid #ffffff1a;border-radius:0;flex:0 0 44px;justify-content:center;align-items:center;gap:2px;min-width:44px;height:44px;padding:0 5px;font-size:1rem;display:inline-flex}.mobile-game-controls button:first-child{border-left:0}.mobile-game-controls button.is-active{color:#fbbf24;background:#fbbf2424}.mobile-game-controls button strong{letter-spacing:0;font-size:.66rem}.mobile-game-hud-bottom{right:max(6px,env(safe-area-inset-right));bottom:max(6px,env(safe-area-inset-bottom));left:max(6px,env(safe-area-inset-left));pointer-events:auto;gap:5px;min-width:0;padding:5px;display:flex;position:absolute}.mobile-game-summons{overscroll-behavior-x:contain;scrollbar-width:none;flex:auto;gap:5px;min-width:0;display:flex;overflow-x:auto}.mobile-game-summons button,.mobile-game-combo,.mobile-game-orbital{color:#f8fafc;background:#334155f5;border:2px solid #0000;border-radius:8px;flex-direction:column;flex:0 0 50px;justify-content:center;align-items:center;gap:1px;min-width:50px;height:50px;padding:3px;display:inline-flex}.mobile-game-summons button.is-selected{border-color:var(--tower-color);box-shadow:inset 0 0 0 1px #fff,0 0 10px color-mix(in srgb,var(--tower-color)60%,transparent)}.mobile-game-summons button:disabled,.mobile-game-combo:disabled,.mobile-game-orbital:disabled{opacity:.45}.mobile-game-summons button span,.mobile-game-combo span,.mobile-game-orbital span{font-size:1.2rem;line-height:1}.mobile-game-summons button strong,.mobile-game-combo strong,.mobile-game-orbital strong{letter-spacing:0;font-size:.7rem}.mobile-game-orbital{background:#581c87f0;border-color:#c084fc8c;flex:0 0 54px;min-width:54px}.mobile-game-combo{background:#78350ff0;border-color:#fbbf2473;flex:0 0 54px;min-width:54px}.mobile-game-combo.is-active{color:#fbbf24;border-color:#fbbf24}.mobile-game-modal{z-index:1200;touch-action:pan-y;overscroll-behavior:contain;background:#020617cc;justify-content:center;align-items:center;padding:12px;display:flex;position:fixed;inset:0;overflow-y:auto}.mobile-combo-panel{color:#f8fafc;background:#0f172afa;border:1px solid #fbbf2466;border-radius:8px;flex-direction:column;width:min(100%,520px);max-height:calc(100dvh - 24px);display:flex;overflow:hidden;box-shadow:0 18px 46px #0000007a}.mobile-combo-panel>header{border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;display:flex}.mobile-combo-panel>header>div{align-items:center;gap:7px;min-width:0;display:flex}.mobile-combo-panel>header small{color:#111827;background:#fbbf24;border-radius:999px;padding:3px 6px;font-size:.68rem;font-weight:900}.mobile-combo-panel>header button{color:#fff;background:#ffffff14;border:1px solid #ffffff29;border-radius:6px;flex:0 0 44px;width:44px;height:44px;font-size:1.2rem}.mobile-combo-list{touch-action:pan-y;gap:7px;padding:9px;display:grid;overflow-y:auto}.mobile-combo-list article{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:8px;padding:8px;display:grid}.mobile-combo-list article.is-known{background:#22c55e1a;border-color:#4ade8073}.mobile-combo-list article.is-ready{background:#fbbf241f;border-color:#fbbf24bf}.mobile-combo-recipe,.mobile-combo-result>div{align-items:center;gap:3px;display:flex}.mobile-combo-result{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.mobile-combo-result>div>span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.mobile-combo-result strong,.mobile-combo-result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-combo-result strong{font-size:.78rem}.mobile-combo-result small{color:#cbd5e1;font-size:.64rem}.mobile-combo-result em{color:#e2e8f0;background:#ffffff1f;border-radius:999px;flex:none;padding:3px 6px;font-size:.64rem;font-style:normal;font-weight:900}.mobile-combo-unknown{background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:34px;height:30px;font-weight:900;display:inline-flex}}@media (max-width:520px){.mobile-game-hud-top{flex-direction:column}.mobile-game-controls{max-width:100%}.mobile-game-stats{min-height:38px}.game-orientation-hint{top:max(116px,calc(env(safe-area-inset-top) + 108px))}.workshop-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.workshop-upgrade-grid{grid-template-columns:minmax(0,1fr)!important}.mobile-combo-list article{grid-template-columns:86px minmax(0,1fr)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes landingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
