:root{--sky:#8ed0f7;--sky-deep:#5ab3ec;--grass:#8bd44f;--cream:#fff8e7;--cream-2:#f5e9cd;--cream-3:#eadfc2;--outline:#3b2415;--outline-2:#d3c199;--dark-bg:#0e1520;--dark-surface:#16202f;--dark-card:#1b273a;--dark-card-2:#23334d;--dark-border:#344765;--dark-border-hi:#4a658f;--dark-text:#f0f5fc;--dark-sub:#8fa4c4;--dark-faint:#5b7294;--ink:#3b2415;--ink-dim:#7a5a33;--ink-faint:#a08a5f;--candy-blue:#3fa7f5;--candy-green:#6fbf3d;--candy-gold:#f6b93b;--candy-red:#e0554a;--candy-purple:#a55eea;--candy-cyan:#3fd6e0;--common:#8a97a5;--common-glow:rgba(138,151,165,0.45);--uncommon:#38d9a9;--uncommon-glow:rgba(56,217,169,0.55);--rare:#339af0;--rare-glow:rgba(51,154,240,0.6);--epic:#cc5de8;--epic-glow:rgba(204,93,232,0.65);--legendary:#fcc419;--legendary-glow:rgba(252,196,25,0.7);--neon:var(--candy-green);--cash:#2f9a4a;--scrap:var(--candy-gold);--danger:var(--candy-red);--shock:var(--candy-cyan);--burn:#ff9a3c;--plasma:var(--candy-purple);--khaki:#a08a5f;--line:var(--outline-2);--line-soft:#e2d4b2;--slate-900:var(--cream-2);--slate-800:var(--cream-2);--slate-700:var(--cream-3);--slate-600:var(--cream-3);--night:var(--sky);--radius:18px;--radius-s:12px;--pop:0 5px 0 rgba(59,36,21,0.28);--glow-gold:0 0 16px rgba(246,185,59,0.45);--glow-cyan:0 0 16px rgba(63,214,224,0.45);--glow-green:0 0 16px rgba(111,191,61,0.45);--font-ui:"Lilita One","Outfit","Trebuchet MS","Segoe UI",system-ui,sans-serif;--font-num:"Lilita One","Outfit",ui-monospace,sans-serif;--dur:160ms;--ease:cubic-bezier(0.16,1,0.3,1);}*{box-sizing:border-box;margin:0;padding:0;}html,body{height:100%;overflow:hidden;background:var(--sky);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;}#game-canvas{position:fixed;inset:0;width:100%;height:100%;display:block;cursor:crosshair;touch-action:none;}#vignette{position:fixed;inset:0;pointer-events:none;z-index:2;background:radial-gradient(120% 90% at 50% 42%,transparent 55%,rgba(30,60,90,0.22) 100%);}#ui-root{position:fixed;inset:0;z-index:5;pointer-events:none;}#ui-root>*{pointer-events:auto;}.hidden{display:none !important;}.btn{pointer-events:auto;font-family:var(--font-ui);font-size:13px;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:#fff;text-shadow:0 1.5px 3px rgba(0,0,0,0.8);background:linear-gradient(180deg,#2b3d56 0%,#1c2738 55%,#121a26 100%);border:2px solid #3d587c;border-radius:999px;padding:11px 24px;cursor:pointer;box-shadow:0 4px 0 #0d141e,0 6px 16px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.2);transition:transform var(--dur) var(--ease),filter var(--dur) var(--ease),box-shadow var(--dur) var(--ease);}.btn:hover{transform:translateY(-2px);filter:brightness(1.12);border-color:#557ba8;box-shadow:0 6px 0 #0d141e,0 8px 20px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.3);}.btn:active{transform:translateY(2px);box-shadow:0 2px 0 #0d141e,inset 0 2px 4px rgba(0,0,0,0.4);}.btn:disabled{opacity:0.45;cursor:not-allowed;transform:none;filter:grayscale(0.5);}.btn-primary{background:url('../assets/ui/textures/btn_green_3d.webp') center/100% 100% no-repeat,linear-gradient(180deg,#5fe37d 0%,#30b852 50%,#1c7e35 100%);border:2px solid #7ef599;box-shadow:0 4px 0 #0e441c,0 0 16px rgba(48,184,82,0.4),inset 0 1px 0 rgba(255,255,255,0.5);color:#fff;text-shadow:0 2px 4px rgba(0,0,0,0.7);}.btn-primary:hover{border-color:#a4ffb7;box-shadow:0 6px 0 #0e441c,0 0 24px rgba(48,184,82,0.65),inset 0 1px 0 rgba(255,255,255,0.7);}.btn-danger{background:linear-gradient(180deg,#ff6b81,#e0392b 60%,#8e1b12);border-color:#ff7979;}.btn-tiny{padding:5px 14px;font-size:11px;border-width:2px;}.overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:url('../assets/ui/textures/bg_tactical_grid.webp') repeat,radial-gradient(1200px 600px at 50% 0%,rgba(36,68,102,0.45),transparent 70%),radial-gradient(900px 500px at 85% 85%,rgba(20,45,75,0.35),transparent 60%),radial-gradient(800px 400px at 15% 90%,rgba(25,55,65,0.3),transparent 60%),linear-gradient(180deg,#0e1520 0%,#131c2a 50%,#0a0f18 100%);}#boot{position:fixed;inset:0;width:100vw;height:100vh;transition:opacity 320ms var(--ease);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;z-index:999;background:#080d15;}#boot.fade-out{opacity:0;pointer-events:none;}.boot-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;z-index:0;}.boot-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,14,24,0.25) 0%,transparent 20%,transparent 60%,rgba(6,10,18,0.75) 85%,rgba(5,8,14,0.95) 100%);pointer-events:none;z-index:1;}.boot-spotlight{position:absolute;top:-80px;width:45vw;height:120vh;pointer-events:none;z-index:2;opacity:0.25;filter:blur(16px);}.boot-spotlight-left{left:-10vw;background:linear-gradient(135deg,rgba(255,235,120,0.5) 0%,rgba(255,220,80,0.1) 45%,transparent 70%);transform:rotate(18deg);animation:lightSweepL 6s ease-in-out infinite alternate;}.boot-spotlight-right{right:-10vw;background:linear-gradient(225deg,rgba(255,235,120,0.5) 0%,rgba(255,220,80,0.1) 45%,transparent 70%);transform:rotate(-18deg);animation:lightSweepR 6s ease-in-out infinite alternate;}@keyframes lightSweepL{from{transform:rotate(14deg);opacity:0.20;}to{transform:rotate(22deg);opacity:0.35;}}@keyframes lightSweepR{from{transform:rotate(-14deg);opacity:0.20;}to{transform:rotate(-22deg);opacity:0.35;}}.boot-dock{position:relative;z-index:10;width:min(660px,92vw);margin-bottom:clamp(24px,5vh,44px);padding:16px 24px;background:rgba(11,18,29,0.88);border:2.5px solid #2d4566;border-radius:22px;box-shadow:0 16px 45px rgba(0,0,0,0.85),inset 0 1px 0 rgba(255,255,255,0.12),0 0 35px rgba(0,0,0,0.6);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;gap:12px;}.boot-bar{width:100%;height:clamp(20px,3vh,26px);background:#060a10;border:2.5px solid #364d6e;border-radius:999px;overflow:hidden;box-shadow:inset 0 4px 10px rgba(0,0,0,0.9),0 0 16px rgba(0,0,0,0.6);position:relative;}.boot-bar i{display:block;height:100%;width:0%;background:linear-gradient(90deg,#3ccb4e 0%,#72f384 50%,#3fd6e0 100%);border-radius:999px;box-shadow:inset 0 2px 4px rgba(255,255,255,0.8),0 0 24px rgba(76,217,54,0.9);transition:width 120ms linear;position:relative;}.boot-bar i::after{content:"";position:absolute;right:0;top:0;bottom:0;width:24px;background:linear-gradient(90deg,transparent,#ffffff);box-shadow:0 0 16px #ffffff;}.boot-status-row{display:flex;align-items:center;justify-content:center;gap:10px;max-width:100%;}.boot-xp-gem{width:14px;height:14px;background:#3fd6e0;border:1.5px solid #fff;border-radius:3px;box-shadow:0 0 12px #3fd6e0,inset 0 1px 2px rgba(255,255,255,0.9);animation:gemSpin 3s linear infinite;flex-shrink:0;}@keyframes gemSpin{0%{transform:rotate(45deg) scale(1);}50%{transform:rotate(225deg) scale(1.15);box-shadow:0 0 20px #72f384;background:#72f384;}100%{transform:rotate(405deg) scale(1);}}.boot-status{font-family:var(--font-ui);font-size:clamp(12px,1.8vh,14px);font-weight:800;letter-spacing:0.18em;color:#cfe2ff;text-shadow:0 2px 6px rgba(0,0,0,0.9),0 0 12px rgba(127,227,255,0.5);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}transform:rotate(45deg);box-shadow:0 0 12px rgba(63,214,224,1);animation:pulseGem 1.2s ease-in-out infinite alternate;flex-shrink:0;}@keyframes pulseGem{from{transform:rotate(45deg) scale(0.9);filter:brightness(1);}to{transform:rotate(45deg) scale(1.25);filter:brightness(1.4);}}.boot-status{font-family:var(--font-num);font-size:clamp(11px,1.5vh,13px);font-weight:800;color:#a4bede;letter-spacing:0.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}@media (max-height:540px){.boot-dock{margin-bottom:12px;padding:10px 16px;border-radius:16px;gap:8px;}.boot-bar{height:16px;}.boot-status{font-size:10px;}}.menu-card{position:relative;width:min(660px,90vw);padding:44px 46px 32px;color:var(--ink);background:var(--cream);border:5px solid var(--outline);border-radius:28px;box-shadow:var(--pop),0 30px 90px rgba(40,70,100,0.4),inset 0 0 0 3px rgba(255,255,255,0.5);}.menu-eyebrow{font-size:11px;font-weight:800;letter-spacing:0.3em;color:var(--ink-faint);}.menu-eyebrow b{color:var(--ink);}.menu-title{margin:10px 0 16px;font-size:clamp(40px,6.5vw,68px);font-weight:900;letter-spacing:0.04em;line-height:0.94;color:var(--candy-gold);text-shadow:-2px -2px 0 var(--outline),2px -2px 0 var(--outline),-2px 2px 0 var(--outline),2px 2px 0 var(--outline),0 -2px 0 var(--outline),0 2px 0 var(--outline),-2px 0 0 var(--outline),2px 0 0 var(--outline),0 5px 0 var(--outline);}.menu-blurb{max-width:46ch;color:var(--ink-dim);font-size:14px;line-height:1.6;}.menu-actions{display:flex;gap:12px;margin:30px 0 22px;flex-wrap:wrap;}.menu-hint{font-size:11px;color:var(--ink-faint);letter-spacing:0.06em;line-height:1.9;}.menu-hint b{color:var(--ink);font-family:var(--font-num);}