:root{
  color-scheme:dark;--ink:#f7f9ff;--muted:#8d9ab8;--navy:#050812;--panel:#0b1020;
  --line:rgba(255,255,255,.10);--cyan:#37d6ff;--blue:#4c6fff;--violet:#8b5cf6;--danger:#ff647c
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:"Segoe UI",Tahoma,system-ui,-apple-system,sans-serif}
body{color:var(--ink);background:#050812}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:
  radial-gradient(900px 500px at 8% 0,rgba(76,111,255,.23),transparent 65%),
  radial-gradient(700px 500px at 100% 100%,rgba(139,92,246,.14),transparent 60%),#050812}
.auth-shell{width:min(1060px,100%);min-height:640px;display:grid;grid-template-columns:1.08fr .92fr;overflow:hidden;
  border:1px solid var(--line);border-radius:32px;background:rgba(8,12,25,.82);box-shadow:0 40px 100px rgba(0,0,0,.55);backdrop-filter:blur(24px)}
.auth-visual{position:relative;overflow:hidden;min-height:640px;padding:54px;background:
  linear-gradient(145deg,rgba(76,111,255,.18),rgba(7,11,24,.25)),
  repeating-linear-gradient(90deg,transparent 0 49px,rgba(255,255,255,.025) 50px),
  repeating-linear-gradient(0deg,transparent 0 49px,rgba(255,255,255,.025) 50px)}
.auth-visual:after{content:"";position:absolute;inset:18%;border:1px solid rgba(55,214,255,.12);border-radius:50%;box-shadow:0 0 100px rgba(55,214,255,.10)}
.orb{position:absolute;border-radius:50%;filter:blur(3px)}.orb-a{width:290px;height:290px;top:75px;left:70px;background:rgba(76,111,255,.20);box-shadow:0 0 100px rgba(76,111,255,.35)}
.orb-b{width:170px;height:170px;right:35px;bottom:80px;background:rgba(139,92,246,.16);box-shadow:0 0 80px rgba(139,92,246,.28)}
.signal{position:absolute;inset:0;display:grid;place-items:center;transform:rotate(-8deg)}
.signal span{position:absolute;border:1px solid rgba(55,214,255,.20);border-radius:50%;animation:ripple 4s ease-in-out infinite}
.signal span:nth-child(1){width:110px;height:110px}.signal span:nth-child(2){width:220px;height:220px;animation-delay:.4s}.signal span:nth-child(3){width:340px;height:340px;animation-delay:.8s}.signal span:nth-child(4){width:470px;height:470px;animation-delay:1.2s}
@keyframes ripple{50%{border-color:rgba(55,214,255,.55);box-shadow:0 0 25px rgba(55,214,255,.10)}}
.visual-copy{position:absolute;z-index:2;inset-inline-start:54px;bottom:54px}.mini-logo,.mobile-brand span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--cyan),var(--blue) 55%,var(--violet));font-weight:900;box-shadow:0 12px 32px rgba(76,111,255,.45)}
.visual-copy h2{font-size:42px;line-height:1.12;margin:22px 0 14px;letter-spacing:-1px}.visual-copy p{color:var(--muted);max-width:390px;line-height:1.8;margin:0}
.auth-card{padding:64px 58px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent)}
.mobile-brand{display:none;align-items:center;gap:12px;font-weight:800}.mobile-brand span{display:inline-grid;width:40px;height:40px;border-radius:12px}
.eyebrow{display:flex;align-items:center;gap:9px;color:var(--cyan);font-size:12px;font-weight:800;letter-spacing:.5px}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px var(--cyan)}
.auth-card h1{font-size:34px;margin:16px 0 8px;letter-spacing:-.7px}.lead{margin:0 0 30px;color:var(--muted);line-height:1.7}
.auth-card label{display:block;margin-bottom:9px;color:#c5cee2;font-size:13px;font-weight:700}.password-wrap{position:relative}.password-wrap input{width:100%;height:56px;padding:0 18px 0 50px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.035);color:#fff;font:inherit;letter-spacing:2px;transition:.2s}
.password-wrap input:focus{outline:none;border-color:rgba(55,214,255,.8);box-shadow:0 0 0 4px rgba(55,214,255,.10),0 12px 30px rgba(0,0,0,.22)}.lock{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--cyan);font-size:11px;border:1px solid rgba(55,214,255,.35);border-radius:7px;padding:4px 6px}
.auth-card button{width:100%;height:56px;margin-top:16px;border:0;border-radius:15px;color:#fff;background:linear-gradient(110deg,var(--blue),var(--violet));font:800 15px inherit;cursor:pointer;box-shadow:0 15px 35px rgba(76,111,255,.28);transition:.2s}.auth-card button:hover{transform:translateY(-2px);filter:brightness(1.08)}.auth-card button span{margin-inline-start:8px}
.auth-alert{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px solid rgba(255,100,124,.25);background:rgba(255,100,124,.09);color:#ffb2be;border-radius:13px;margin-bottom:18px;font-size:13px}.auth-alert span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,100,124,.18);font-weight:900}.auth-alert.neutral{border-color:rgba(55,214,255,.25);background:rgba(55,214,255,.07);color:#a9edff}.auth-alert.neutral span{background:rgba(55,214,255,.15)}
.secure-note{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:11px;margin-top:24px}.secure-note span{width:6px;height:6px;border-radius:50%;background:#35d49a;box-shadow:0 0 10px #35d49a}
.denied-page{min-height:100vh;display:grid;place-items:center;padding:24px;text-align:center;background:radial-gradient(600px 380px at 50% 40%,rgba(76,111,255,.14),transparent 70%),#050812}
.denied-card{width:min(580px,100%);padding:54px 28px;border:1px solid var(--line);border-radius:28px;background:rgba(11,16,32,.72);box-shadow:0 35px 90px rgba(0,0,0,.48)}
.denied-icon{width:92px;height:92px;border-radius:27px;margin:0 auto 25px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,100,124,.16),rgba(76,111,255,.12));border:1px solid rgba(255,100,124,.22)}.denied-icon span{width:34px;height:42px;border:3px solid #ff7188;border-radius:9px;position:relative}.denied-icon span:before{content:"";position:absolute;width:22px;height:20px;border:3px solid #ff7188;border-bottom:0;border-radius:20px 20px 0 0;left:3px;top:-18px}
.denied-card .code{color:#ff7188;font:800 11px ui-monospace,monospace;letter-spacing:2px}.denied-card h1{font-size:38px;margin:12px 0}.denied-card p{color:var(--muted);line-height:1.8;margin:0 auto;max-width:420px}.denied-line{display:flex;align-items:center;gap:12px;margin-top:34px;color:#71809e;font:700 9px ui-monospace,monospace;letter-spacing:1px}.denied-line i{height:1px;flex:1;background:var(--line)}
@media(max-width:780px){.auth-page{padding:14px}.auth-shell{grid-template-columns:1fr;min-height:0;border-radius:24px}.auth-visual{display:none}.auth-card{padding:42px 26px}.mobile-brand{display:flex;margin-bottom:42px}.auth-card h1{font-size:30px}.denied-card{padding:44px 20px}.denied-card h1{font-size:31px}}
