:root{--bg: #060812;--bg-soft: #12243a;--bg-glow: #16495b;--text: #eef6ff;--text-muted: #a9c0d9;--accent: #8ef4ea;--accent-strong: #d8ffff;--rare: #88b5ff;--epic: #ffb86c;--legendary: #ffe18a;--danger: #ff8f7e;--panel: rgba(8, 13, 24, .88);--panel-border: rgba(160, 226, 255, .28)}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:Manrope,sans-serif;color:var(--text);background:radial-gradient(circle at 18% 10%,rgba(116,190,255,.22),transparent 35%),radial-gradient(circle at 80% 4%,rgba(255,176,102,.16),transparent 28%),radial-gradient(circle at 54% 100%,rgba(32,93,122,.36),transparent 56%),linear-gradient(170deg,#040611,#04070d)}.game-shell{--hud-safe-top: max(0px, env(safe-area-inset-top));--hud-stack-bottom: 110px;--hud-scale: 1;position:relative;width:100vw;height:100vh;overflow:hidden}.game-shell:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .16s ease;z-index:18}.game-shell.low-hp:after{opacity:1;background:radial-gradient(circle at 50% 50%,transparent 42%,rgba(255,98,88,.06) 68%,rgba(255,84,74,.14) 100%),linear-gradient(180deg,rgba(255,94,87,.16),transparent 26%,transparent 74%,rgba(255,94,87,.16))}.game-canvas-wrap{position:absolute;inset:0}.game-canvas-wrap canvas{width:100%;height:100%;display:block;image-rendering:auto}.hud{position:absolute;top:calc(var(--hud-safe-top) + 8px);left:0;right:0;padding:10px 18px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;z-index:20;pointer-events:none;align-items:start;transform-origin:top center;transform:scale(var(--hud-scale))}.hud-left,.hud-right{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}.hud-right{justify-content:flex-end}.hud-chip{background:#070e18b8;border:1px solid rgba(155,229,255,.2);border-radius:999px;padding:7px 11px;display:inline-flex;align-items:center;flex:0 0 auto;gap:7px;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;box-shadow:inset 0 0 0 1px #070f1ab8}.hud-chip span{color:var(--text-muted)}.hud-chip.event-active{border-color:#ffd37cb3;box-shadow:0 0 26px #ffce703d}.hud-chip.event-active strong{color:#ffedc2}.hud-chip strong.active{color:#ffe39d}#hudHpChip.danger{border-color:#ff907fe0;box-shadow:0 0 32px #ff826c52;animation:hp-pulse .52s ease-in-out infinite alternate}@keyframes hp-pulse{0%{transform:scale(1)}to{transform:scale(1.03)}}.xp-track{grid-column:1 / -1;height:12px;margin-top:2px;border-radius:999px;overflow:hidden;border:1px solid rgba(161,224,255,.34);background:#040a12db}.xp-fill{width:0;height:100%;background:linear-gradient(90deg,#59adf1,#8df7ef 35%,#ffe597);transition:width .12s linear}.build-panels{grid-column:1 / -1;display:grid;gap:8px;grid-template-columns:1fr 1fr}.build-panel{min-height:54px;border-radius:12px;border:1px solid rgba(163,229,255,.22);background:#070e17b3;display:flex;gap:8px;align-items:center;padding:6px;overflow-x:auto}.build-panel.catalyst{border-color:#94bbff73}.build-slot{min-width:95px;border-radius:10px;border:1px solid rgba(154,223,255,.26);background:linear-gradient(160deg,#0a1524f2,#070c16f5);padding:6px 7px;font-size:11px;line-height:1.3;font-family:Space Mono,monospace}.build-slot.empty{opacity:.58}.build-slot strong{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.build-slot em{display:block;margin-top:2px;color:var(--text-muted);font-style:normal;font-size:10px}.build-slot.legendary{border-color:#ffe38bcc;box-shadow:0 0 26px #ffe28038}.build-slot.rarity-common{border-color:#9adfff42}.build-slot.rarity-rare{border-color:#88b5ff8a}.build-slot.rarity-epic{border-color:#ffb86c99}.build-slot.rarity-legendary{border-color:#ffe38bcc;box-shadow:0 0 24px #ffe38b2e}.top-controls{position:absolute;top:var(--hud-stack-bottom);right:18px;z-index:22;display:flex;align-items:center;gap:10px}.settings-toggle{min-height:34px;padding:6px 10px;border-radius:10px;border:1px solid rgba(163,229,255,.3);background:#080d17e6;color:var(--text);font-family:Space Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.help-toggle{min-height:34px;padding:6px 10px;border-radius:10px;border:1px solid rgba(255,227,139,.36);background:#100e0ae6;color:#ffe8bb;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.help-toggle:hover{border-color:#ffe38bb8;background:#1a150cf0}.settings-toggle:hover{border-color:#a3e5ff8f;background:#0c1422f2}.overlay{position:absolute;inset:0;display:grid;place-items:center;z-index:25;padding:20px;background:radial-gradient(circle at 50% 12%,#2a526e4d,#050910e6 58%),linear-gradient(180deg,#050a1270,#04070ee0);backdrop-filter:blur(8px) saturate(.9)}.settings-overlay{z-index:29}.hidden{display:none!important}.panel{max-width:700px;width:min(700px,92vw);padding:30px;border-radius:20px;background:var(--panel);border:1px solid var(--panel-border);box-shadow:0 24px 80px #00000085}.panel.warning{border-color:#f1a88f73}.levelup-panel,.chest-panel{background:radial-gradient(circle at 12% 10%,rgba(132,210,255,.12),transparent 36%),radial-gradient(circle at 88% 6%,rgba(255,214,126,.08),transparent 32%),#070c16f0;border-color:#c6edff6b}.hero-panel{background:radial-gradient(circle at 14% 16%,rgba(141,220,255,.18),transparent 45%),radial-gradient(circle at 85% 10%,rgba(255,211,133,.14),transparent 36%),var(--panel)}.panel .tag{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-family:Space Mono,monospace}.panel h1,.panel h2{margin:10px 0 14px;font-family:Cinzel,serif;font-weight:700;font-size:clamp(1.75rem,4vw,2.65rem);line-height:1.08}.panel p{margin:0;color:var(--text-muted);line-height:1.58}.actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.btn-primary,.btn-secondary,.upgrade-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid transparent;min-height:44px;padding:10px 14px;font-size:14px;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .22s ease,border-color .22s ease}.btn-primary{margin-top:18px;background:linear-gradient(135deg,#74b9f4,#93ffef 56%,#ffe59a);color:#081829;border-color:#d3faffd6;box-shadow:0 0 40px #7be2ff57;font-weight:800}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 52px #7be2ff8a}.actions .btn-primary{margin-top:0}.btn-secondary{background:#080f19e6;color:var(--text);border-color:#a2e5ff52}.upgrade-grid{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.upgrade-btn{text-align:left;align-items:flex-start;flex-direction:column;background:linear-gradient(160deg,#080e18f2,#08111df7);border-color:#a2e5ff40;color:var(--text);min-height:140px;padding:12px}.upgrade-btn strong{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong)}.upgrade-btn span{margin-top:10px;color:#cadcf1;font-size:13px;line-height:1.45}.upgrade-btn:hover{border-color:#a2e5ffa3;transform:translateY(-2px)}.upgrade-btn[data-rarity=rare]{border-color:#88b5ff94}.upgrade-btn[data-rarity=epic]{border-color:#ffb86ca3}.upgrade-btn[data-rarity=legendary]{border-color:#fff3aac7;box-shadow:0 0 34px #fff3aa33}.hint{margin-top:12px;font-size:12px}.pause-banner{position:absolute;top:calc(var(--hud-stack-bottom) + 8px);left:50%;transform:translate(-50%);z-index:26;padding:9px 14px;border-radius:999px;background:#080e18d1;border:1px solid rgba(162,229,255,.34);font-family:Space Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.settings-panel{max-width:680px;max-height:min(84vh,820px);overflow:auto}.help-overlay{z-index:30}.help-panel{max-width:920px;width:min(920px,96vw);max-height:min(86vh,860px);display:grid;gap:8px;align-content:start;padding-top:22px;padding-bottom:22px}.help-panel .tag{margin-top:0;line-height:1}.help-panel h2{margin:0 0 8px;line-height:1.02}.help-toolbar{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-bottom:4px}.help-toolbar input[type=search]{min-height:38px;border-radius:10px;border:1px solid rgba(255,236,172,.36);background:#070c16f0;color:var(--text);padding:8px 12px}.help-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:0;margin-bottom:4px}.help-tab{border:1px solid rgba(162,229,255,.25);border-radius:999px;background:#080e18e0;color:var(--text);min-height:32px;padding:6px 10px;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.help-tab.active{border-color:#ffe38bbf;color:#ffefc8}.help-content{overflow:auto;border-radius:12px;border:1px solid rgba(162,229,255,.24);background:#060a12e0;padding:14px;max-height:min(58vh,540px);display:grid;gap:10px;margin-top:0}.help-entry{border-radius:10px;border:1px solid rgba(162,229,255,.18);background:#09101cd6;padding:10px}.help-entry strong{display:block;color:#eef8ff;font-size:13px;margin-bottom:4px}.help-entry p{margin:0;color:#c7d9ee;font-size:13px;line-height:1.5}.help-entry-tags{margin-top:7px;color:#9bc0de;font-family:Space Mono,monospace;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.settings-grid{margin-top:16px;display:grid;gap:12px}.setting-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,1.8fr);align-items:center;gap:14px;font-family:Space Mono,monospace;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.setting-row>span{color:#b9cde4}.setting-group{margin:10px 0 2px;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8ce9e0}.setting-control{display:flex;align-items:center;gap:10px}.setting-control input[type=range]{width:100%}.setting-inline-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.setting-inline-buttons .btn-secondary{min-height:34px}.setting-row strong{min-width:42px;text-align:right;color:#e4f4ff}.setting-row select{width:100%;min-height:36px;border-radius:9px;border:1px solid rgba(162,229,255,.32);background:#080d17eb;color:var(--text);padding:6px 9px}.setting-row input[type=checkbox]{width:18px;height:18px;accent-color:#73dbff}.debug-panel{position:absolute;right:16px;bottom:18px;z-index:30;width:min(320px,88vw);max-height:45vh;overflow:auto;border-radius:10px;border:1px solid rgba(160,226,255,.36);background:#04080fd6;padding:10px;font-family:Space Mono,monospace;font-size:10px;line-height:1.45;white-space:pre-wrap}@media(max-width:980px){.hud{grid-template-columns:1fr}.hud-right{justify-content:flex-start}.build-panels,.upgrade-grid,.setting-inline-buttons{grid-template-columns:1fr}.settings-toggle{min-height:34px}.top-controls{top:auto;right:18px;bottom:16px}.help-toolbar{grid-template-columns:1fr}}:root{--cursor-normal: url(./Normal%20Select-Cfwe7uKo.cur);--cursor-link: url(./Link%20Select-CX_EOYw3.cur);--cursor-text: url(data:image/x-icon;base64,AAACAAEAICAAAAMACAAwAQAAFgAAACgAAAAgAAAAQAAAAAEAAQAAAAAAAAEAAAAAAAAAAAAAAgAAAAIAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////////////////////////////////////////////////////////////////////xH////v////7////+/////v////7////+/////v////7////+/////v////7////+/////v////7////xH///8=);--cursor-busy: url(./Busy-TRalzF3-.cur);--cursor-unavailable: url(./Unavailable-B84Ra3k2.cur);--cursor-move: url(./Move-BLkHq7Ee.cur);--cursor-help: url(./Help%20Select-ePx9vpfw.cur);--cursor-precision: url(data:image/x-icon;base64,AAACAAEAICAAAAgACAAwAQAAFgAAACgAAAAgAAAAQAAAAAEAAQAAAAAAAAEAAAAAAAAAAAAAAgAAAAIAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////////////////////////////////////////////////////////////////3////9/////f////3////9/////f////3////9///8AAH///3////9/////f////3////9/////f////3////9///8=);--cursor-ew: url(./Horizontal%20Resize-Chm2gAmL.cur);--cursor-ns: url(./Vertical%20Resize-PyAPoSyF.cur);--cursor-nwse: url(./Diagonal%20Resize%201-jOfjsTbr.cur);--cursor-nesw: url(./Diagonal%20Resize%202-DF0FxQEb.cur)}html,body,body *,body *:before,body *:after{cursor:var(--cursor-normal),default!important}a,a:hover,a:active,a:focus-visible,a *,a *:hover,a *:active,button,button:hover,button:active,button:focus-visible,button *,button *:hover,button *:active,summary,summary:hover,summary:active,summary:focus-visible,summary *,select,select:hover,select:active,label[for],label[for] *,[role=button],[role=button] *,[role=link],[role=link] *,[data-cursor],[data-cursor] *,[onclick],[onclick] *,[tabindex]:not([tabindex="-1"]),[tabindex]:not([tabindex="-1"]) *,input[type=button],input[type=submit],input[type=reset],input[type=range],input[type=file],input[type=color],input[type=checkbox],input[type=radio]{cursor:var(--cursor-link),pointer!important}.nav-overlay,.nav-overlay *,.nav-overlay *:before,.nav-overlay *:after{cursor:default!important}.nav-overlay a,.nav-overlay a *,.nav-overlay button,.nav-overlay button *,.nav-overlay [role=button],.nav-overlay [role=button] *,.nav-overlay [role=link],.nav-overlay [role=link] *{cursor:pointer!important}input[type=text],input[type=search],input[type=email],input[type=url],input[type=password],input[type=number],input[type=tel],input[type=date],input[type=time],textarea,[contenteditable=true]{cursor:var(--cursor-text),text!important}:disabled,[aria-disabled=true],[disabled]{cursor:var(--cursor-unavailable),not-allowed!important}[aria-busy=true],.wait,.loading,.is-loading{cursor:var(--cursor-busy),wait!important}[draggable=true]{cursor:var(--cursor-move),move!important}.cursor-fox{cursor:var(--cursor-move),grab!important}[title^=Help],[aria-label*=help i],.help{cursor:var(--cursor-help),help!important}.crosshair,[data-cursor=precision]{cursor:var(--cursor-precision),crosshair!important}.col-resize,[data-cursor=col-resize]{cursor:var(--cursor-ew),ew-resize!important}.row-resize,[data-cursor=row-resize]{cursor:var(--cursor-ns),ns-resize!important}.nwse-resize,[data-cursor=nwse-resize]{cursor:var(--cursor-nwse),nwse-resize!important}.nesw-resize,[data-cursor=nesw-resize]{cursor:var(--cursor-nesw),nesw-resize!important}
