:root{--primary:#b80d0d;--primary-glow:#b80d0d99;--primary-dim:#b80d0d4d;--background:#0a0a0a;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--green-500:#22c55e;--amber-500:#f59e0b;--gold:#d4a017;--font-mono:"Courier New",monospace}.scanline{z-index:100;pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0000001f 2px 4px);position:fixed;inset:0}.crt-flicker{z-index:99;pointer-events:none;opacity:0;animation:.15s infinite flicker;position:fixed;inset:0}@keyframes flicker{0%{opacity:0}5%{opacity:.015}10%{opacity:0}15%{opacity:.02}20%{opacity:0}to{opacity:0}}.menu-background{z-index:0;background:radial-gradient(at 70% 40%,#b80d0d14 0%,#0000 60%),radial-gradient(at 30% 80%,#1e293b4d 0%,#0000 50%),linear-gradient(#0d0d0d 0%,#0a0a0a 40%,#080808 100%);position:fixed;inset:0}.menu-background:before{content:"";pointer-events:none;background:linear-gradient(#b80d0d1f 0%,#b80d0d0a 40%,#0000 100%);height:35%;position:absolute;top:0;left:0;right:0}.menu-background:after{content:"";opacity:.03;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.bg-logo{opacity:.04;z-index:1;pointer-events:none;filter:drop-shadow(0 0 60px #b80d0d26);width:400px;height:auto;animation:1.2s ease-out .1s both logo-pulse;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes logo-pulse{0%{opacity:0;transform:translate(-50%,-50%)scale(.9)}60%{opacity:.06}to{opacity:.04;transform:translate(-50%,-50%)scale(1)}}.menu-wrapper{z-index:10;grid-template-rows:auto 1fr auto;width:100%;height:100vh;display:grid;position:relative}header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a0a99;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:16px 32px;animation:.5s ease-out .2s both header-in;display:flex}@keyframes header-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.header-left{align-items:center;gap:12px;display:flex}.header-logo{opacity:.8;filter:brightness(0)saturate()invert(15%)sepia(94%)saturate(7151%)hue-rotate(353deg)brightness(95%)contrast(89%);width:24px;height:auto}.header-title{letter-spacing:.3em;text-transform:uppercase;color:var(--slate-400);border-right:2px solid var(--primary);white-space:nowrap;width:0;font-size:11px;font-weight:500;animation:2s steps(27,end) .5s forwards typewriter,.75s step-end infinite blink-caret;overflow:hidden}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:#0000}50%{border-color:var(--primary)}}.header-title.typed{border-right:none;width:100%;animation:none}.header-right{align-items:center;gap:20px;display:flex}.header-status{letter-spacing:.15em;text-transform:uppercase;color:var(--slate-500);font-size:10px;font-family:var(--font-mono);align-items:center;gap:8px;display:flex}.status-dot{background:var(--green-500);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 10px #22c55e80}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.content-area{position:relative;overflow:hidden}.left-panel{z-index:10;flex-direction:column;gap:24px;padding:48px 40px;display:flex;position:absolute;top:0;left:0}.game-title-block{margin-bottom:16px;animation:.6s ease-out .4s both title-in}@keyframes title-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.game-project-label{letter-spacing:.4em;text-transform:uppercase;color:var(--primary);opacity:.9;margin-bottom:8px;font-size:11px;font-weight:500}.game-logo-text{letter-spacing:-.02em;text-transform:uppercase;color:#fff;text-shadow:0 0 40px #b80d0d4d,0 2px 20px #000c;font-size:56px;font-weight:700;line-height:.95}.game-logo-text .accent{color:var(--primary);text-shadow:0 0 30px var(--primary-glow),0 0 60px #b80d0d33}.game-subtitle{letter-spacing:.35em;text-transform:uppercase;color:var(--slate-500);margin-top:10px;font-size:11px;font-weight:400}.auth-zone{justify-content:center;align-items:center;padding:32px;display:flex;position:absolute;inset:0;overflow-y:auto}.auth-form{flex-direction:column;gap:16px;display:flex}.field-group{flex-direction:column;gap:6px;display:flex}.field-label{letter-spacing:.25em;text-transform:uppercase;color:var(--slate-500);font-size:10px;font-weight:500}.field-label:before{content:"> ";color:var(--primary);font-family:var(--font-mono);letter-spacing:0;font-weight:700}.field-input-wrap{position:relative}.field-input-wrap svg{width:14px;height:14px;stroke:var(--slate-600);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;transition:stroke .2s;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.field-input{color:#fff;letter-spacing:.05em;width:100%;caret-color:var(--primary);background:#ffffff08;border:1px solid #ffffff0f;border-left:2px solid #b80d0d33;outline:none;padding:12px 16px 12px 40px;font-family:inherit;font-size:13px;transition:border-color .25s,background .25s}.field-input::placeholder{color:var(--slate-700);letter-spacing:.08em;font-size:12px}.field-input:focus{border-color:#b80d0d66;border-left-color:var(--primary);background:#b80d0d08}.field-input:focus+svg,.field-input-wrap:focus-within svg{stroke:var(--primary)}.field-toggle-vis{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.field-toggle-vis svg{width:14px;height:14px;stroke:var(--slate-600);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;transition:stroke .2s;position:static;transform:none}.field-toggle-vis:hover svg{stroke:var(--slate-400)}.auth-options{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.auth-remember{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:flex}.auth-remember input{display:none}.auth-checkbox{background:#ffffff08;border:1px solid #ffffff1a;flex-shrink:0;width:16px;height:16px;transition:all .2s;position:relative}.auth-checkbox:after{content:"";background:var(--primary);opacity:0;transition:opacity .2s;position:absolute;inset:3px}.auth-remember input:checked~.auth-checkbox{background:#b80d0d1a;border-color:#b80d0d66}.auth-remember input:checked~.auth-checkbox:after{opacity:1}.auth-remember-text{letter-spacing:.08em;color:var(--slate-500);font-size:11px}.auth-forgot{letter-spacing:.08em;color:var(--slate-600);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:11px;text-decoration:none;transition:color .2s}.auth-forgot:hover{color:var(--primary)}.auth-submit{background:var(--primary);color:#fff;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;width:100%;margin-top:8px;padding:14px 24px;font-family:inherit;font-size:13px;font-weight:600;transition:all .25s;position:relative;overflow:hidden}.auth-submit:hover{background:#d41010;box-shadow:0 0 30px #b80d0d66}.auth-submit:active{transform:scale(.98)}.auth-submit.loading{pointer-events:none;color:#0000}.auth-submit.loading:after{content:"";border:2px solid #fff3;border-top-color:#fff;border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;animation:.6s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.auth-separator{align-items:center;gap:16px;display:flex}.auth-separator-line{background:#ffffff0d;flex:1;height:1px}.auth-separator-text{letter-spacing:.2em;text-transform:uppercase;color:var(--slate-700);font-size:9px;font-family:var(--font-mono)}.auth-register{width:100%;color:var(--slate-400);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;text-align:center;background:0 0;border:1px solid #ffffff14;padding:12px 24px;font-family:inherit;font-size:12px;font-weight:500;transition:all .25s}.auth-register:hover{color:#fff;background:#b80d0d14;border-color:#b80d0d66}.auth-error{font-size:11px;font-family:var(--font-mono);color:var(--primary);letter-spacing:.05em;background:#b80d0d14;border:1px solid #b80d0d33;align-items:center;gap:8px;padding:10px 14px;display:none}.auth-error.visible{display:flex}.auth-success{font-size:11px;font-family:var(--font-mono);color:var(--green-500);letter-spacing:.05em;background:#22c55e14;border:1px solid #22c55e33;align-items:center;gap:8px;padding:10px 14px;display:none}.auth-success.visible{display:flex}.auth-success svg,.auth-error svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:14px;height:14px}.auth-panel{flex-direction:column;gap:0;display:none}.auth-panel.active{display:flex}.auth-panel.fade-out-left{animation:.25s ease-out forwards panel-fade-out-left}.auth-panel.fade-out-right{animation:.25s ease-out forwards panel-fade-out-right}.auth-panel.fade-in-left{animation:.35s ease-out forwards panel-fade-in-left}.auth-panel.fade-in-right{animation:.35s ease-out forwards panel-fade-in-right}@keyframes panel-fade-out-left{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(-30px)scale(.96)}}@keyframes panel-fade-out-right{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(30px)scale(.96)}}@keyframes panel-fade-in-left{0%{opacity:0;transform:translate(-30px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes panel-fade-in-right{0%{opacity:0;transform:translate(30px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}.password-strength{gap:4px;margin-top:6px;display:flex}.password-strength-bar{background:#ffffff0f;flex:1;height:2px;transition:background .3s}.password-strength[data-strength="1"] .password-strength-bar:first-child{background:var(--primary)}.password-strength[data-strength="2"] .password-strength-bar:nth-child(-n+2),.password-strength[data-strength="3"] .password-strength-bar:nth-child(-n+3){background:var(--amber-500)}.password-strength[data-strength="4"] .password-strength-bar{background:var(--green-500)}.password-strength-text{letter-spacing:.15em;text-transform:uppercase;color:var(--slate-700);font-size:9px;font-family:var(--font-mono);margin-top:4px;transition:color .3s}.auth-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#0a0a0a80;border:1px solid #ffffff0f;width:100%;max-width:440px;padding:0;animation:.7s cubic-bezier(.16,1,.3,1) .4s forwards card-crt-open;position:relative}@keyframes card-crt-open{0%{opacity:1;clip-path:inset(50%);filter:brightness(3);box-shadow:0 0 80px #b80d0dcc,inset 0 0 30px #b80d0d4d}15%{clip-path:inset(49% 1%);filter:brightness(2);box-shadow:0 0 60px #b80d0d99,inset 0 0 20px #b80d0d33}30%{clip-path:inset(48% 0%);filter:brightness(1.5);box-shadow:0 0 40px #b80d0d66}to{opacity:1;clip-path:inset(0%);filter:brightness();box-shadow:none}}.auth-card:before{content:"";border-top:2px solid var(--primary);border-left:2px solid var(--primary);width:10px;height:10px;position:absolute;top:-1px;left:-1px}.auth-card:after{content:"";border-bottom:2px solid var(--primary);border-right:2px solid var(--primary);width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.auth-card-header{background:#b80d0d08;border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;margin-bottom:0;padding:10px 16px;display:flex}.auth-card-title{letter-spacing:.2em;text-transform:uppercase;color:var(--slate-600);font-size:9px;font-weight:500;font-family:var(--font-mono)}.auth-card-title:before{content:"> ";color:var(--primary);font-weight:700}.auth-card-status{letter-spacing:.15em;text-transform:uppercase;color:var(--slate-600);font-size:9px;font-family:var(--font-mono);align-items:center;gap:6px;display:flex}.auth-card-status .dot{background:var(--primary);width:5px;height:5px;box-shadow:0 0 6px var(--primary-glow);border-radius:50%;animation:2s ease-in-out infinite pulse-dot}.auth-card-body{padding:24px 28px 28px}.auth-card-body .auth-error,.auth-card-body .auth-success{margin-bottom:16px}footer{background:#0a0a0acc;border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:12px 32px;animation:.4s ease-out .6s both slide-up;display:flex}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.footer-left{align-items:center;gap:12px;display:flex}.footer-version{color:var(--slate-600);font-size:10px;font-family:var(--font-mono);letter-spacing:.08em}.footer-dot{background:var(--primary);width:8px;height:8px;box-shadow:0 0 10px var(--primary-glow);border-radius:0;animation:2.5s ease-in-out infinite pulse-dot}.footer-right{align-items:center;gap:28px;display:flex}.footer-action{letter-spacing:.2em;text-transform:uppercase;color:var(--slate-400);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-family:inherit;font-size:11px;font-weight:500;text-decoration:none;transition:color .2s;display:flex;position:relative}.footer-action:hover{color:#fff}.footer-action svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.deco-coords{z-index:10;font-family:var(--font-mono);letter-spacing:.15em;color:var(--slate-700);font-size:9px;line-height:1.8;animation:.4s ease-out 1.5s both fade-in-left;position:fixed;bottom:80px;left:32px}@keyframes fade-in-left{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media (max-width:1024px){.game-logo-text{font-size:42px}.left-panel{padding:32px 28px}.auth-zone{padding:24px}.bg-logo{width:300px}}@media (max-width:768px){.left-panel{gap:12px;padding:24px 24px 16px}.game-title-block{margin-bottom:0}.game-logo-text{font-size:36px}.auth-zone{padding:16px 24px 24px}.bg-logo{width:200px}.deco-coords{display:none}.footer-right{gap:16px}.footer-action span{display:none}}@media (max-width:480px){header{padding:12px 16px}.left-panel{padding:16px}.game-logo-text{font-size:28px}.auth-zone{padding:12px 16px 16px}footer{padding:10px 16px}}.final-flash{z-index:300;opacity:0;pointer-events:none;background:#fff;position:fixed;inset:0}.final-flash.active{animation:.8s ease-out forwards finalFlash}@keyframes finalFlash{0%{opacity:0}15%{opacity:1}40%{opacity:.6}to{opacity:0}}.verify-card{animation:.3s ease-out forwards verify-card-fade-in}@keyframes verify-card-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
