:root{--blue-900:#050d1f;--blue-800:#0a1628;--blue-700:#0d2044;--blue-600:#0f2d6b;--blue-500:#1565c0;--blue-400:#1e88e5;--blue-300:#42a5f5;--blue-200:#90caf9;--accent:#00d4ff;--accent2:#7c6aff;--green:#00e676;--red:#ff4d6d;--white:#fff;--w80:#fffc;--w60:#fff9;--w40:#fff6;--w20:#fff3;--w10:#ffffff1a;--w05:#ffffff0d;--glass:#ffffff0f;--gborder:#ffffff1f;--font-d:"Syne", sans-serif;--font-b:"DM Sans", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-b);background:var(--blue-900);color:var(--white);min-height:100vh;overflow-x:hidden}.toastContainer{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;width:calc(100vw - 48px);max-width:380px;display:flex;position:fixed;top:24px;right:24px}.toast{pointer-events:all;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid #0000;border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px 18px;animation:.38s cubic-bezier(.22,1,.36,1) both toastIn;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 40px #00000080}.toast--success{background:#00140ae0;border-color:#00e67640}.toast--error{background:#19050ae0;border-color:#ff4d6d40}@keyframes toastIn{0%{opacity:0;transform:translate(48px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}.toastIcon{flex-shrink:0;margin-top:1px;font-size:16px}.toastBody{flex:1;min-width:0}.toastTitle{color:var(--white);margin-bottom:2px;font-size:13.5px;font-weight:600;line-height:1.4}.toastMsg{color:var(--w60);word-break:break-word;font-size:12px;line-height:1.5}.toastClose{color:var(--w40);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:11px;transition:color .2s}.toastClose:hover{color:var(--white)}.toastProgress{transform-origin:0;border-radius:0 0 14px 14px;height:3px;animation:linear forwards toastProgress;position:absolute;bottom:0;left:0}.toast--success .toastProgress{background:linear-gradient(90deg, var(--green), #00e67666)}.toast--error .toastProgress{background:linear-gradient(90deg, var(--red), #ff4d6d66)}@keyframes toastProgress{0%{width:100%}to{width:0%}}.loginPage{justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex;position:relative}.ambient{pointer-events:none;z-index:0;background:radial-gradient(65% 55% at 85% 15%,#7c6aff38 0%,#0000 55%),radial-gradient(55% 45% at 10% 80%,#00d4ff1f 0%,#0000 50%),radial-gradient(40% 35% at 40% 40%,#1565c01f 0%,#0000 50%);position:fixed;inset:0}.gridBg{z-index:0;pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:64px 64px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(90% 90%,#000 0%,#0000 75%);mask-image:radial-gradient(90% 90%,#000 0%,#0000 75%)}.orb{filter:blur(90px);pointer-events:none;z-index:0;border-radius:50%;animation:10s ease-in-out infinite orbFloat;position:fixed}.orb1{background:radial-gradient(circle,#7c6aff38 0%,#0000 70%);width:550px;height:550px;top:-180px;right:-100px}.orb2{background:radial-gradient(circle,#00d4ff1f 0%,#0000 70%);width:480px;height:480px;animation-delay:5s;bottom:-120px;left:-100px}@keyframes orbFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-24px)scale(1.03)}}.loginWrapper{z-index:2;width:100%;max-width:480px;animation:.8s both cardIn;position:relative}@keyframes cardIn{0%{opacity:0;transform:translateY(32px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.topBadge{justify-content:center;margin-bottom:28px;display:flex}.badge{background:#7c6aff1a;border:1px solid #7c6aff4d;border-radius:100px;align-items:center;gap:8px;padding:7px 18px;display:inline-flex}.badgeDot{background:var(--accent2);width:7px;height:7px;box-shadow:0 0 7px var(--accent2);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}.badgeText{color:var(--accent2);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.loginCard{-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);border:1px solid var(--gborder);background:#0a1628d1;border-radius:28px;padding:48px 44px;position:relative;overflow:hidden;box-shadow:0 32px 80px #0000008c,0 0 0 1px #ffffff0a,0 0 50px #7c6aff14}.loginCard:before{content:"";background:linear-gradient(90deg, transparent, var(--accent2), var(--accent), transparent);opacity:.6;height:2px;position:absolute;top:0;left:0;right:0}.loginCard:after{content:"";pointer-events:none;background:radial-gradient(60% 40% at 80% 10%,#7c6aff0f 0%,#0000 60%);position:absolute;inset:0}.logoWrap{z-index:1;justify-content:center;align-items:center;gap:12px;margin-bottom:36px;text-decoration:none;display:flex;position:relative}.logoIcon{background:linear-gradient(135deg, var(--accent2), var(--accent));border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex;box-shadow:0 0 24px #7c6aff80}.logoText{font-family:var(--font-d);color:var(--white);letter-spacing:-.02em;font-size:20px;font-weight:700}.formHead{text-align:center;z-index:1;margin-bottom:36px;position:relative}.formTitle{font-family:var(--font-d);color:var(--white);letter-spacing:-.03em;margin-bottom:10px;font-size:2rem;font-weight:800}.formTitle span{background:linear-gradient(100deg, var(--accent2) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.formSubtitle{color:var(--w60);font-size:14px;line-height:1.5}.formSubtitle a{color:var(--accent);font-weight:500;text-decoration:none}.formSubtitle a:hover{opacity:.8}.socialBtns{z-index:1;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px;display:grid;position:relative}.socialBtn{background:var(--glass);border:1px solid var(--gborder);color:var(--w80);font-family:var(--font-b);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:13.5px;font-weight:500;transition:all .25s;display:flex}.socialBtn:hover{background:var(--w10);border-color:var(--w20);color:var(--white);transform:translateY(-2px)}.orDivider{z-index:1;align-items:center;gap:14px;margin-bottom:24px;display:flex;position:relative}.orLine{background:var(--gborder);flex:1;height:1px}.orText{color:var(--w40);white-space:nowrap;font-size:12px;font-weight:500}.form{z-index:1;flex-direction:column;gap:16px;display:flex;position:relative}.fieldWrap{flex-direction:column;gap:6px;display:flex}.fieldLabel{color:var(--w60);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.inputWrap{align-items:center;display:flex;position:relative}.inputIcon{color:var(--w40);pointer-events:none;z-index:1;font-size:15px;transition:color .25s;position:absolute;left:14px}.inputWrap:focus-within .inputIcon{color:var(--accent2)}.fieldInput{background:var(--glass);border:1px solid var(--gborder);width:100%;color:var(--white);font-family:var(--font-b);border-radius:12px;outline:none;padding:14px 14px 14px 42px;font-size:14.5px;transition:all .25s}.fieldInput::placeholder{color:var(--w40)}.fieldInput:focus{background:#7c6aff0d;border-color:#7c6aff80;box-shadow:0 0 0 3px #7c6aff14}.fieldInput.error{background:#ff4d6d0d;border-color:#ff4d6d80}.fieldInput.error:focus{box-shadow:0 0 0 3px #ff4d6d14}.eyeBtn{color:var(--w40);cursor:pointer;z-index:1;background:0 0;border:none;padding:0;font-size:15px;transition:color .2s;position:absolute;right:14px}.eyeBtn:hover{color:var(--w80)}.fieldError{color:var(--red);align-items:center;gap:5px;font-size:11.5px;animation:.25s errIn;display:flex}@keyframes errIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.formOptions{justify-content:space-between;align-items:center;display:flex}.checkWrap{cursor:pointer;align-items:center;gap:8px;display:flex}.checkWrap input[type=checkbox]{display:none}.customCheck{border:1.5px solid var(--gborder);background:var(--glass);color:#0000;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;transition:all .25s;display:flex}.checkWrap input[type=checkbox]:checked+.customCheck{background:var(--accent2);border-color:var(--accent2);color:var(--white);box-shadow:0 0 10px #7c6aff66}.checkLabel{color:var(--w60);font-size:13px}.forgotLink{color:var(--accent2);font-size:13px;font-weight:500;text-decoration:none}.forgotLink:hover{opacity:.8}.submitBtn{background:linear-gradient(135deg, var(--accent2) 0%, #9c7aff 50%, var(--blue-400) 100%);width:100%;color:var(--white);font-family:var(--font-b);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:9px;margin-top:4px;padding:15px;font-size:15px;font-weight:600;text-decoration:none;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 22px #7c6aff8c,inset 0 1px #fff3}.submitBtn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.submitBtn:hover:before{left:100%}.submitBtn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 10px 32px #7c6affb3,0 0 40px #00d4ff33}.submitBtn:disabled{opacity:.65;cursor:not-allowed;transform:none}.loginStats{border-top:1px solid var(--gborder);z-index:1;justify-content:center;align-items:center;gap:32px;margin-top:32px;padding-top:24px;display:flex;position:relative}.statItem{text-align:center}.statNum{font-family:var(--font-d);color:var(--white);letter-spacing:-.02em;font-size:18px;font-weight:800}.statNum span{color:var(--accent2)}.statLbl{color:var(--w40);letter-spacing:.06em;margin-top:2px;font-size:10.5px}.statDivider{background:var(--gborder);width:1px;height:32px}.modalOverlay{z-index:500;-webkit-backdrop-filter:blur(10px);background:#050d1fc7;justify-content:center;align-items:center;padding:20px;animation:.28s both overlayIn;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modalCard{-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px);border:1px solid var(--gborder);background:#0a1628f2;border-radius:28px;width:100%;max-width:440px;padding:44px 40px 36px;animation:.38s cubic-bezier(.22,1,.36,1) both modalIn;position:relative;overflow:hidden;box-shadow:0 40px 100px #000000b3,0 0 0 1px #ffffff0a,0 0 60px #7c6aff1f}@keyframes modalIn{0%{opacity:0;transform:translateY(28px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modalTopLine{background:linear-gradient(90deg, transparent, var(--accent2), var(--accent), transparent);opacity:.7;height:2px;position:absolute;top:0;left:0;right:0}.modalCard:after{content:"";pointer-events:none;background:radial-gradient(55% 35% at 75% 8%,#7c6aff12 0%,#0000 60%);position:absolute;inset:0}.modalClose{background:var(--glass);border:1px solid var(--gborder);width:32px;height:32px;color:var(--w40);cursor:pointer;z-index:2;border-radius:8px;justify-content:center;align-items:center;font-size:13px;transition:all .2s;display:flex;position:absolute;top:18px;right:18px}.modalClose:hover{background:var(--w10);color:var(--white);border-color:var(--w20)}.modalIconWrap{z-index:1;justify-content:center;margin-bottom:20px;display:flex;position:relative}.modalIconRing{background:#7c6aff1a;border:2px solid #7c6aff4d;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:32px;animation:3s ease-in-out infinite ringPulse;display:flex;box-shadow:0 0 32px #7c6aff2e}@keyframes ringPulse{0%,to{box-shadow:0 0 32px #7c6aff2e}50%{box-shadow:0 0 52px #7c6aff6b,0 0 70px #00d4ff1f}}.modalHead{text-align:center;z-index:1;margin-bottom:28px;position:relative}.modalTitle{font-family:var(--font-d);color:var(--white);letter-spacing:-.03em;margin-bottom:8px;font-size:1.75rem;font-weight:800}.modalTitle span{background:linear-gradient(100deg, var(--accent2) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.modalSubtitle{color:var(--w60);font-size:13.5px;line-height:1.6}.modalSubtitle strong{color:var(--accent);font-weight:500}.otpRow{z-index:1;justify-content:center;gap:10px;margin-bottom:8px;display:flex;position:relative}.otpBox{background:var(--glass);border:1.5px solid var(--gborder);text-align:center;width:54px;height:62px;font-family:var(--font-d);color:var(--white);caret-color:var(--accent2);border-radius:14px;outline:none;font-size:22px;font-weight:700;transition:all .22s}.otpBox::placeholder{color:var(--w15,#ffffff26);font-size:20px}.otpBox:focus{background:#7c6aff17;border-color:#7c6affa6;transform:translateY(-2px);box-shadow:0 0 0 3px #7c6aff21,0 0 18px #7c6aff24}.otpBox.filled{background:#7c6aff12;border-color:#7c6aff73}.otpBox.hasError{background:#ff4d6d0f;border-color:#ff4d6d99}.otpBox.hasError:focus{transform:translateY(-2px);box-shadow:0 0 0 3px #ff4d6d1a}.otpErrorWrap{z-index:1;justify-content:center;align-items:center;min-height:22px;margin-bottom:6px;display:flex;position:relative}.otpError{color:var(--red);align-items:center;gap:5px;font-size:12px;animation:.25s errIn;display:flex}.timerWrap{text-align:center;z-index:1;margin-bottom:22px;position:relative}.timerText{color:var(--w40);font-size:13px}.timerCount{color:var(--accent2);font-weight:600}.resendBtn{color:var(--accent2);font-family:var(--font-b);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:13.5px;font-weight:600;text-decoration:underline;transition:opacity .2s}.resendBtn:hover:not(:disabled){opacity:.75}.resendBtn:disabled{color:var(--w40);cursor:not-allowed;text-decoration:none}.modalBackWrap{text-align:center;z-index:1;margin-top:14px;position:relative}.modalBackBtn{color:var(--w40);font-family:var(--font-b);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:13px;transition:color .2s}.modalBackBtn:hover{color:var(--w80)}.otpSuccess{text-align:center;z-index:1;flex-direction:column;align-items:center;gap:14px;padding:10px 0 4px;animation:.45s cubic-bezier(.22,1,.36,1) both successIn;display:flex;position:relative}@keyframes successIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.otpSuccessRing{width:80px;height:80px;color:var(--green);background:#00e6761a;border:2px solid #00e67666;border-radius:50%;justify-content:center;align-items:center;font-size:34px;font-weight:800;display:flex;box-shadow:0 0 40px #00e67640}.otpSuccessTitle{font-family:var(--font-d);color:var(--white);letter-spacing:-.03em;font-size:1.6rem;font-weight:800}.otpSuccessTitle span{background:linear-gradient(100deg, var(--green) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.otpSuccessDesc{color:var(--w60);font-size:14px;line-height:1.6}@media (max-width:520px){.loginCard{padding:36px 24px}.socialBtns{grid-template-columns:1fr}.loginStats{gap:20px}.toastContainer{width:calc(100vw - 32px);top:16px;right:16px}.modalCard{padding:36px 22px 28px}.otpBox{width:44px;height:54px;font-size:18px}.otpRow{gap:7px}}
