.auth-page{--bg:#0a0a0a;--bg-card:#111;--bg-input:#0e0e0e;--border:#222;--border-strong:#2a2a2a;--text:#f5f5f5;--text-muted:#8a8a8a;--text-dim:#5a5a5a;--red:#ef2b2b;--red-bright:#ff3838;--red-dim:#ef2b2b26;--red-glow:#ef2b2b59;--green:#22c55e;--focus-ring:0 0 0 3px #ef2b2b38}*{box-sizing:border-box}.auth-page{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.ambient{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.ambient:before{content:"";filter:blur(40px);background:radial-gradient(closest-side,#ef2b2b2e,#ef2b2b0f 45%,#0000 70%);width:90vw;max-width:900px;height:90vw;max-height:900px;position:absolute;top:-30vh;left:-20vw}.ambient:after{content:"";filter:blur(50px);background:radial-gradient(closest-side,#ef2b2b1a,#ef2b2b08 45%,#0000 70%);width:80vw;max-width:800px;height:80vw;max-height:800px;position:absolute;bottom:-40vh;right:-25vw}.grain{pointer-events:none;opacity:.04;z-index:1;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}.shell{z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100dvh;padding:48px 20px;display:flex;position:relative}.topbar{z-index:3;justify-content:space-between;align-items:center;padding:20px 28px;display:flex;position:absolute;top:0;left:0;right:0}.topbar .brand{letter-spacing:-.01em;color:var(--text);align-items:center;gap:10px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.topbar .brand img{width:28px;height:28px}.topbar .back{color:var(--text-muted);align-items:center;gap:6px;font-size:13px;text-decoration:none;transition:color .15s;display:inline-flex}.topbar .back:hover{color:var(--text)}.card{border:1px solid var(--border);background:linear-gradient(#131313 0%,#0f0f0f 100%);border-radius:16px;width:100%;max-width:420px;padding:36px 32px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 20px 60px #00000080,0 0 0 1px #ef2b2b0a}.card:before{content:"";opacity:.6;background:linear-gradient(90deg,#0000,#ef2b2b59,#0000);height:1px;position:absolute;top:0;left:0;right:0}.card-head{text-align:center;margin-bottom:28px}.logo-row{justify-content:center;align-items:center;gap:10px;margin-bottom:22px;display:flex}.logo-row img{filter:drop-shadow(0 0 18px #ef2b2b59);width:36px;height:36px}.logo-row .wordmark{letter-spacing:-.015em;font-size:17px;font-weight:700}.title{letter-spacing:-.02em;color:var(--text);margin:0 0 6px;font-size:24px;font-weight:700}.subtitle{color:var(--text-muted);margin:0;font-size:14px}form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:7px;display:flex;position:relative}.field-label-row{justify-content:space-between;align-items:center;display:flex}label{color:#cfcfcf;letter-spacing:-.005em;font-size:13px;font-weight:500}.forgot{color:var(--text-muted);font-size:12px;text-decoration:none;transition:color .15s}.forgot:hover{color:var(--red-bright)}.input-wrap{position:relative}input[type=text],input[type=email],input[type=password]{background:var(--bg-input);border:1px solid var(--border-strong);width:100%;min-height:46px;color:var(--text);-webkit-appearance:none;border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .2s,box-shadow .25s,background .2s}input::placeholder{color:#555}input:hover{border-color:#3a3a3a}input:focus{border-color:var(--red);box-shadow:var(--focus-ring);background:#0a0a0a}input.has-icon-right{padding-right:44px}.field.error input{border-color:var(--red);box-shadow:0 0 0 3px #ef2b2b1f}.field .msg{color:var(--red-bright);opacity:0;min-height:0;max-height:0;font-size:12px;transition:opacity .2s,max-height .25s;overflow:hidden}.field.error .msg,.field.success .msg{opacity:1;max-height:40px}.field.success .msg{color:var(--green)}.pw-toggle{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px;transition:color .15s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.pw-toggle:hover{color:var(--text)}.btn{appearance:none;letter-spacing:-.005em;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;padding:13px 16px;font-family:inherit;font-size:15px;font-weight:600;transition:transform 80ms,background .2s,border-color .2s,box-shadow .2s,color .2s;display:inline-flex;position:relative;overflow:hidden}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:active{transform:translateY(1px)scale(.995)}.btn-primary{color:#fff;background:linear-gradient(#ef2b2b 0%,#d21e1e 100%);box-shadow:inset 0 1px #ffffff2e,inset 0 -1px #0003,0 8px 24px -6px #ef2b2b80,0 0 0 1px #ffffff0a}.btn-primary:hover{background:linear-gradient(#ff3838 0%,#e52525 100%);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0003,0 10px 28px -6px #ef2b2b99,0 0 0 1px #ffffff0d}.btn-primary[disabled]{color:#ffffff80;cursor:not-allowed;box-shadow:none;background:#3a1a1a}.btn-primary .spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn-ghost{color:var(--text);border-color:var(--border-strong);background:0 0}.btn-ghost:hover{background:#ffffff08;border-color:#3a3a3a}.divider{color:var(--text-dim);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:12px;margin:4px 0;font-size:12px;display:flex}.divider:before,.divider:after{content:"";background:linear-gradient(90deg, transparent, var(--border-strong), transparent);flex:1;height:1px}.actions-stack{flex-direction:column;gap:12px;display:flex}.footer-note{text-align:center;color:var(--text-muted);margin-top:4px;font-size:13px}.footer-note a,.link-red{color:var(--red-bright);font-weight:500;text-decoration:none;transition:color .15s}.footer-note a:hover,.link-red:hover{color:#ff6161;text-decoration:underline}.disclaimer{text-align:center;color:var(--text-dim);margin-top:14px;font-size:12px;line-height:1.55}.disclaimer a{color:var(--text-muted);-webkit-text-decoration:underline #333;text-decoration:underline #333}.disclaimer a:hover{color:var(--text)}.below-card{text-align:center;color:var(--text-muted);font-size:14px}.view{width:100%;max-width:420px;display:none}.view.active{flex-direction:column;align-items:center;gap:18px;display:flex}.card,.below-card{animation:.55s cubic-bezier(.2,.7,.2,1) both rise}.below-card{animation-delay:80ms}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.success-panel{text-align:center;padding:4px 0 8px}.success-panel .icon{width:56px;height:56px;color:var(--green);background:#22c55e1f;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;animation:.4s cubic-bezier(.2,.8,.2,1) both pop;display:flex}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.success-panel p{color:var(--text-muted);margin:0 0 18px;font-size:14px}.success-panel .email-pill{color:var(--text);border:1px solid var(--border-strong);background:#0e0e0e;border-radius:999px;margin-bottom:4px;padding:6px 12px;font-size:13px;display:inline-block}.view-switcher{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);z-index:10;background:#141414d9;border-radius:999px;gap:4px;padding:4px;font-size:12px;display:flex;position:fixed;top:16px;right:16px}.view-switcher button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 12px;font-family:inherit;font-weight:500;transition:all .15s}.view-switcher button:hover{color:var(--text)}.view-switcher button.active{background:var(--red);color:#fff}@media (max-width:520px){.shell{padding:88px 16px 32px}.card{border-radius:14px;padding:28px 22px}.title{font-size:21px}.subtitle{font-size:13.5px}.topbar{padding:14px 16px}.view-switcher{top:auto;bottom:16px;right:50%;transform:translate(50%)}}@media (max-width:380px){.card{padding:24px 18px}.logo-row img{width:32px;height:32px}.logo-row .wordmark{font-size:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
