.auth-page *{box-sizing:border-box}body:has(.auth-page){background:#050816!important}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;font-family:Inter,system-ui,sans-serif;background:radial-gradient(ellipse 120% 80% at 70% 10%,#0d2147 0,transparent 60%),radial-gradient(ellipse 100% 70% at 10% 90%,#0a1535 0,transparent 55%),radial-gradient(ellipse 80% 60% at 90% 80%,#0c0f2e 0,transparent 50%),linear-gradient(135deg,#050816,#071b36 50%,#0b1020);position:relative;overflow:hidden}.auth-page:before{top:-200px;left:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(37,99,235,.18) 0,transparent 70%);animation:floatGlow 8s ease-in-out infinite alternate}.auth-page:after,.auth-page:before{content:"";position:fixed;border-radius:50%;pointer-events:none}.auth-page:after{bottom:-200px;right:-200px;width:700px;height:700px;background:radial-gradient(circle,rgba(124,58,237,.14) 0,transparent 70%);animation:floatGlow 10s ease-in-out infinite alternate-reverse}.auth-bg-grid{background-image:linear-gradient(rgba(37,99,235,.04) 1px,transparent 0),linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 0);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 40%,transparent 100%);mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 40%,transparent 100%)}.auth-bg-grid,.auth-particles{position:fixed;inset:0;pointer-events:none}.auth-particles{overflow:hidden}.auth-particle{position:absolute;border-radius:50%;background:rgba(96,165,250,.6);animation:particleFloat linear infinite}.auth-particle:first-child{width:3px;height:3px;left:10%;animation-duration:12s;animation-delay:0s;top:80%}.auth-particle:nth-child(2){width:2px;height:2px;left:25%;animation-duration:18s;animation-delay:2s;top:70%}.auth-particle:nth-child(3){width:4px;height:4px;left:40%;animation-duration:14s;animation-delay:4s;top:90%}.auth-particle:nth-child(4){width:2px;height:2px;left:55%;animation-duration:20s;animation-delay:1s;top:75%}.auth-particle:nth-child(5){width:3px;height:3px;left:70%;animation-duration:16s;animation-delay:3s;top:85%}.auth-particle:nth-child(6){width:2px;height:2px;left:85%;animation-duration:22s;animation-delay:5s;top:60%}.auth-particle:nth-child(7){width:4px;height:4px;left:15%;animation-duration:15s;animation-delay:7s;top:50%;background:rgba(167,139,250,.5)}.auth-particle:nth-child(8){width:2px;height:2px;left:60%;animation-duration:19s;animation-delay:6s;top:40%;background:rgba(167,139,250,.5)}.auth-particle:nth-child(9){width:3px;height:3px;left:80%;animation-duration:13s;animation-delay:9s;top:30%}.auth-particle:nth-child(10){width:2px;height:2px;left:35%;animation-duration:17s;animation-delay:11s;top:20%}.auth-card{position:relative;z-index:10;display:flex;flex-direction:column;gap:20px;width:min(100%,500px);padding:40px 40px 32px;border-radius:24px;background:rgba(6,16,40,.72);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(96,165,250,.14);box-shadow:0 0 0 1px rgba(96,165,250,.06),0 8px 32px rgba(0,0,0,.5),0 0 80px rgba(37,99,235,.1),inset 0 1px 0 rgba(255,255,255,.05);animation:cardFadeIn .6s ease both;transition:box-shadow .4s ease}.auth-card:hover{box-shadow:0 0 0 1px rgba(96,165,250,.12),0 12px 48px rgba(0,0,0,.6),0 0 100px rgba(37,99,235,.16),inset 0 1px 0 rgba(255,255,255,.07)}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.auth-brand .brand-mark{width:100%;max-width:220px;height:auto;max-height:90px;background:transparent;box-shadow:none;border-radius:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.auth-brand .brand-mark img{width:100%;height:100%;max-height:90px;object-fit:contain;display:block}.auth-brand-logo{width:100%;max-width:200px;height:auto;max-height:80px;display:flex;align-items:center;justify-content:center;overflow:hidden}.auth-brand-logo img{width:100%;max-height:80px;object-fit:contain;display:block}.auth-brand-name{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:800;color:#f1f5f9;letter-spacing:-.5px}.auth-brand-wifi{color:#60a5fa;flex-shrink:0}.auth-brand-icon{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,rgba(37,99,235,.3),rgba(124,58,237,.3));display:flex;align-items:center;justify-content:center;color:#60a5fa;box-shadow:0 0 20px rgba(37,99,235,.2)}.auth-brand-icon,.auth-slogan{border:1px solid rgba(96,165,250,.2)}.auth-slogan{font-size:11px;font-weight:600;letter-spacing:3px;color:rgba(96,165,250,.7);text-transform:uppercase;padding:4px 12px;border-radius:20px;background:rgba(37,99,235,.08)}.auth-heading{text-align:center}.auth-heading h1{margin:0 0 6px;font-size:26px;font-weight:700;color:#f1f5f9;letter-spacing:-.5px;line-height:1.2}.auth-heading p{margin:0;font-size:14px;color:rgba(148,163,184,.8);line-height:1.5}.auth-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(96,165,250,.15),transparent)}.auth-form{gap:14px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-field label{font-size:13px;font-weight:500;color:rgba(203,213,225,.9);letter-spacing:.3px}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-icon{position:absolute;left:16px;color:rgba(100,116,139,.8);pointer-events:none;transition:color .2s;display:flex}.auth-input-wrap:focus-within .auth-input-icon{color:#60a5fa}.auth-input{width:100%;height:52px;padding:0 44px 0 46px;background:rgba(15,23,42,.7);border:1px solid rgba(51,65,85,.8);border-radius:12px;color:#e2e8f0;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.auth-input::placeholder{color:rgba(100,116,139,.6)}.auth-input:focus{border-color:rgba(96,165,250,.6);background:rgba(15,23,42,.9);box-shadow:0 0 0 3px rgba(37,99,235,.12),0 0 16px rgba(37,99,235,.08)}.auth-toggle-pw{position:absolute;right:14px;background:none;border:none;cursor:pointer;color:rgba(100,116,139,.7);padding:4px;border-radius:6px;display:flex;transition:color .2s}.auth-toggle-pw:hover{color:#60a5fa}.auth-options{justify-content:space-between;font-size:13px}.auth-options,.auth-remember{display:flex;align-items:center}.auth-remember{gap:8px;cursor:pointer;color:rgba(148,163,184,.85);-webkit-user-select:none;-moz-user-select:none;user-select:none}.auth-remember input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer;border-radius:4px}.auth-forgot{color:#60a5fa;text-decoration:none;font-weight:500;transition:color .2s}.auth-forgot:hover{color:#93c5fd;text-decoration:underline}.auth-submit{height:52px;border:none;border-radius:12px;background:linear-gradient(135deg,#00d4ff,#2563eb);color:#fff;font-size:15px;font-weight:600;font-family:inherit;letter-spacing:.3px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;transition:opacity .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 20px rgba(37,99,235,.35);margin-top:4px}.auth-submit:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.15),transparent 60%);opacity:0;transition:opacity .2s}.auth-submit:hover:not(:disabled){opacity:.93;transform:translateY(-1px);box-shadow:0 8px 28px rgba(37,99,235,.45)}.auth-submit:hover:not(:disabled):before{opacity:1}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-error{font-size:13px;color:#f87171;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:10px 14px;text-align:center}.auth-note{gap:10px;font-size:12px;color:rgba(148,163,184,.8);background:rgba(15,23,42,.5);border:1px solid rgba(52,211,153,.15);border-radius:10px;padding:11px 16px}.auth-note,.auth-note-icon{display:flex;align-items:center;justify-content:center}.auth-note-icon{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,rgba(52,211,153,.2),rgba(16,185,129,.1));border:1px solid rgba(52,211,153,.25);color:#34d399;flex-shrink:0}.auth-note-text{line-height:1.4}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes floatGlow{0%{transform:translate(0) scale(1)}to{transform:translate(40px,30px) scale(1.15)}}@keyframes particleFloat{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100vh) translateX(20px);opacity:0}}@media (max-width:560px){.auth-card{padding:28px 20px 24px;border-radius:18px;width:95%}.auth-heading h1{font-size:22px}}