:root{--bg:#05070d;--panel:rgba(8,13,25,.86);--blue:#1677ff;--cyan:#53c8ff;--text:#f5f8ff;--muted:#95a3bd;--line:rgba(112,165,255,.22)}*{box-sizing:border-box}html,body,#game{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg);font-family:Inter,sans-serif;color:var(--text)}canvas{display:block}.scanlines{position:fixed;inset:0;pointer-events:none;z-index:2;background:linear-gradient(rgba(255,255,255,.012) 50%,transparent 50%);background-size:100% 4px;mix-blend-mode:overlay}.hud{position:fixed;z-index:5;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:24px 30px;pointer-events:none}.brand{display:flex;gap:12px;align-items:center}.brand-mark{font-family:Orbitron;font-size:24px;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--blue);color:var(--cyan);background:rgba(13,28,58,.75);clip-path:polygon(20% 0,100% 0,100% 80%,80% 100%,0 100%,0 20%)}.brand strong{font:700 16px Orbitron;letter-spacing:2px}.brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:3px;margin-top:3px}.location{font:600 10px Orbitron;letter-spacing:2px;color:#a6b5cf}.location span{display:inline-block;width:7px;height:7px;background:#43ffa6;border-radius:50%;box-shadow:0 0 12px #43ffa6;margin-right:7px}.glass{background:linear-gradient(135deg,rgba(11,18,35,.92),rgba(4,8,17,.8));border:1px solid var(--line);box-shadow:0 30px 80px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.06);backdrop-filter:blur(22px)}.controls{position:fixed;z-index:5;bottom:25px;left:25px;width:170px;padding:14px 16px;border-radius:10px;pointer-events:none}.controls>strong{font:700 9px Orbitron;letter-spacing:2px;color:var(--cyan)}.controls div{display:flex;justify-content:space-between;align-items:center;margin-top:9px;font-size:10px;color:var(--muted)}kbd{font:600 9px Inter;color:white;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);padding:4px 6px;border-radius:4px;box-shadow:0 2px rgba(0,0,0,.6)}.interaction{position:fixed;z-index:8;bottom:80px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;background:rgba(3,7,15,.88);border:1px solid var(--blue);padding:10px 18px;border-radius:8px;font-size:12px;box-shadow:0 0 30px rgba(22,119,255,.2)}.hidden{opacity:0!important;pointer-events:none!important}.modal-shell{position:fixed;z-index:10;inset:0;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 40%,rgba(12,51,111,.25),rgba(1,3,8,.72));opacity:0;pointer-events:none;transition:.35s}.modal-shell.active{opacity:1;pointer-events:auto}.modal{width:min(660px,94vw);padding:42px;border-radius:18px;position:relative}.hero-modal{text-align:center}.eyebrow{font:700 10px Orbitron;letter-spacing:3px;color:var(--cyan);margin:0 0 15px}.hero-modal h1{font:800 clamp(32px,6vw,68px)/.98 Orbitron;letter-spacing:-2px;margin:0}.hero-modal h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--cyan);filter:drop-shadow(0 0 12px rgba(83,200,255,.35))}.lead{color:var(--muted);font-size:14px;margin:22px 0 28px}.choice-grid{display:grid;gap:12px}.choice{width:100%;display:grid;grid-template-columns:44px 1fr 30px;align-items:center;text-align:left;padding:15px 18px;border-radius:9px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:white;cursor:pointer;transition:.25s}.choice:hover{border-color:var(--cyan);transform:translateY(-2px);background:rgba(30,119,255,.11)}.choice.primary{background:linear-gradient(90deg,rgba(21,100,220,.3),rgba(20,87,182,.12));border-color:#267be8}.choice .icon{font-size:24px;color:var(--cyan)}.choice b{font:700 12px Orbitron;letter-spacing:1px}.choice small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.choice i{font-style:normal;font-size:21px;color:var(--cyan)}button{font-family:Inter}.text-button,.link{border:0;background:none;color:#7f91ad;margin-top:20px;cursor:pointer}.text-button:hover,.link:hover{color:white}.compact{max-width:500px}.compact h2,.auth-modal h2,.customizer-modal h2{font:700 25px Orbitron}.compact>p:not(.eyebrow),.customizer-modal>p:not(.eyebrow){color:var(--muted);line-height:1.6;font-size:13px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.primary-button,.secondary{border:1px solid #2686ff;padding:13px 22px;color:#fff;font:700 10px Orbitron;letter-spacing:1px;border-radius:7px;cursor:pointer}.primary-button{background:linear-gradient(135deg,#1985ff,#1250c8);box-shadow:0 8px 25px rgba(20,105,235,.28)}.secondary{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.2)}.close{position:absolute;right:20px;top:16px;background:none;border:0;color:#8d9bb1;font-size:28px;cursor:pointer}.tabs{display:flex;border-bottom:1px solid var(--line);margin:24px 0}.tabs button{flex:1;padding:13px;background:none;border:0;border-bottom:2px solid transparent;color:#7c8ba4;font:700 9px Orbitron;cursor:pointer}.tabs button.active{color:var(--cyan);border-color:var(--blue)}.form{display:none;gap:15px}.form.active{display:grid}.form label{display:grid;gap:7px;color:#98a6bd;font:600 9px Orbitron;letter-spacing:1px}.form input{width:100%;border:1px solid rgba(119,148,193,.22);background:rgba(0,0,0,.25);color:white;padding:12px;border-radius:6px;outline:none}.form input:focus{border-color:var(--blue)}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form .check{display:flex;align-items:center;font-family:Inter;letter-spacing:0}.form .check input{width:auto}.processing{background:#03050a;display:flex;flex-direction:column}.processing h2{font:700 20px Orbitron;letter-spacing:2px}.processing p{color:var(--muted)}.loader-ring{width:120px;height:120px;border:2px solid rgba(61,118,210,.15);border-top-color:var(--cyan);border-radius:50%;display:grid;place-items:center;animation:spin 1.3s linear infinite}.loader-ring span{font:700 18px Orbitron;animation:spin 1.3s linear infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}.progress{width:min(420px,75vw);height:3px;background:#172035}.progress i{display:block;width:0;height:100%;background:var(--cyan);box-shadow:0 0 12px var(--blue)}.customizer-modal{text-align:center;max-width:560px}.body-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.body-card{height:110px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:white;border-radius:10px;cursor:pointer}.body-card.active{border-color:var(--cyan);background:rgba(27,112,224,.15);box-shadow:inset 0 0 25px rgba(20,104,225,.13)}.body-card span{display:block;font-size:36px;color:var(--cyan)}.body-card b{font:700 10px Orbitron}.palette{display:flex;justify-content:center;align-items:center;gap:12px;color:#8fa0ba;font:700 9px Orbitron}.palette button{width:28px;height:28px;border-radius:50%;border:2px solid transparent;background:var(--c);cursor:pointer}.palette button.active{border-color:white;box-shadow:0 0 15px var(--c)}.warning{color:#ffc65b!important;font-size:11px!important}.customizer-modal>.primary-button{width:100%;margin-top:10px}.transition{position:fixed;z-index:20;inset:0;background:radial-gradient(circle,#0b3470 0,#030713 37%,#000 75%);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:1s}.transition.active{opacity:1;pointer-events:auto}.transition h1{font:800 clamp(37px,8vw,85px) Orbitron;letter-spacing:6px;margin:18px 0 5px}.transition p{font:600 10px Orbitron;letter-spacing:4px;color:#86abd8}.portal-logo{width:90px;height:90px;border:2px solid var(--cyan);display:grid;place-items:center;font:800 48px Orbitron;box-shadow:0 0 70px #1468d6, inset 0 0 30px #0d5fc8;animation:pulse 2s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.08);box-shadow:0 0 110px #2589ff}}.loading-dots{display:flex;gap:9px;margin:28px}.loading-dots i{width:7px;height:7px;background:var(--cyan);border-radius:50%;animation:dot 1.2s infinite}.loading-dots i:nth-child(2){animation-delay:.2s}.loading-dots i:nth-child(3){animation-delay:.4s}@keyframes dot{50%{opacity:.2;transform:translateY(-5px)}}.toast{position:fixed;z-index:30;top:85px;left:50%;transform:translateX(-50%);background:#071224;border:1px solid #1d7ef1;padding:12px 18px;border-radius:8px;font-size:12px;transition:.3s}@media(max-width:650px){.hud{padding:16px}.location,.controls{display:none}.modal{padding:27px 20px}.form .row{grid-template-columns:1fr}.hero-modal h1{font-size:36px}.brand strong{font-size:13px}}
