.auth-shell{--auth-bg:var(--hud-canvas);--auth-card:#1b1b1bad;--auth-border:#ffffff1a;--auth-ink:var(--hud-ink);--auth-muted:var(--hud-muted);--auth-accent:var(--hud-accent);--auth-field:#1212129e;--auth-field-border:#ffffff1f;background:var(--auth-bg);min-height:100dvh;color:var(--auth-ink);place-items:center;padding:24px;display:grid;position:relative;overflow:hidden}.auth-backdrop-layer{position:fixed;inset:0;overflow:hidden}.auth-backdrop{background:var(--auth-bg) url(/auth-backdrop.webp) center / cover no-repeat;filter:brightness(1.18)saturate(1.08);will-change:transform;animation:46s ease-in-out infinite alternate auth-drift;position:absolute;inset:-3%}.auth-showcase-frame{pointer-events:none;opacity:0;filter:brightness(1.06);border:0;width:100%;height:100%;transition:opacity .9s;position:absolute;inset:0}.auth-showcase-frame.is-loaded{opacity:1}@media (prefers-reduced-motion:reduce){.auth-showcase-frame{transition:none}}@keyframes auth-drift{0%{transform:scale(1.02)translateY(0)}to{transform:scale(1.09)translateY(-1.2%)}}.auth-scrim{background:radial-gradient(1200px 800px at 50% 42%,#0808081a,#08080885 82%),linear-gradient(#08080829,#08080847);position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.auth-backdrop{animation:none}}@media (min-width:1100px){.auth-shell{justify-items:start;padding-left:clamp(48px,7vw,140px)}}.auth-card{background:var(--auth-card);-webkit-backdrop-filter:blur(20px)saturate(1.35);backdrop-filter:blur(20px)saturate(1.35);border:1px solid var(--auth-border);border-radius:18px;width:100%;max-width:408px;padding:34px 32px 30px;animation:.45s cubic-bezier(.2,.7,.2,1) both auth-rise;position:relative;box-shadow:0 32px 80px -24px #000000bf,0 4px 18px #00000059,inset 0 1px #ffffff0f}.auth-card:before{content:"";background:linear-gradient(90deg,#0000,#ffcc2999,#0000);height:1px;position:absolute;top:-1px;left:18%;right:18%}@keyframes auth-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.auth-card{animation:none}}.auth-brand{align-items:center;gap:10px;margin-bottom:22px;display:flex}.auth-brand .dot{background:var(--auth-accent);border-radius:50%;width:11px;height:11px}.auth-brand b{letter-spacing:.2px;font-size:15px}.auth-brand span{color:var(--auth-muted);font-size:13px}.auth-card h1{margin:0 0 4px;font-size:22px;font-weight:650}.auth-card .sub{color:var(--auth-muted);margin:0 0 22px;font-size:13.5px}.auth-field{margin-bottom:14px;display:block}.auth-field span{color:var(--auth-muted);margin-bottom:6px;font-size:12.5px;display:block}.auth-field input{background:var(--auth-field);border:1px solid var(--auth-field-border);width:100%;color:var(--auth-ink);border-radius:10px;outline:none;padding:11px 13px;font-size:14.5px;transition:border-color .15s,box-shadow .15s}.auth-field input::placeholder{color:var(--ink-faint)}.auth-field input:focus{border-color:var(--auth-accent);box-shadow:0 0 0 3px #ffcc292e}.auth-field input.code{letter-spacing:.5em;text-align:center;font-size:18px}.auth-input-wrap{display:block;position:relative}.auth-input-wrap input{padding-right:44px}.auth-reveal{width:32px;height:32px;color:var(--auth-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:0;transition:color .15s,background .15s;display:grid;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.auth-reveal:hover{color:var(--auth-ink);background:#ffffff0f}.auth-reveal:focus-visible{color:var(--auth-ink);outline:none;box-shadow:0 0 0 3px #ffcc292e}.auth-reveal svg{width:18px;height:18px;display:block}.auth-btn{background:var(--auth-accent);width:100%;color:var(--accent-ink);cursor:pointer;border:0;border-radius:10px;margin-top:6px;padding:12px;font-size:14.5px;font-weight:650;transition:filter .15s,transform 50ms,box-shadow .15s;box-shadow:0 8px 24px -10px #0009}.auth-btn:hover{filter:brightness(1.08)}.auth-btn:active{transform:translateY(1px)}.auth-btn:disabled{opacity:.6;cursor:progress}.auth-ghost{width:100%;color:var(--auth-muted);border:1px solid var(--auth-border);cursor:pointer;background:0 0;border-radius:10px;margin-top:10px;padding:10px;font-size:13.5px}.auth-ghost:hover{color:var(--auth-ink);border-color:#ffffff3d}.auth-msg{border-radius:10px;margin-bottom:16px;padding:10px 12px;font-size:13px}.auth-msg.err{color:#fca5a5;background:#f871711f;border:1px solid #f871714d}.auth-msg.ok{color:#86efac;background:#22c55e1f;border:1px solid #22c55e4d}.auth-alt{text-align:center;color:var(--auth-muted);margin-top:20px;font-size:13px}.auth-alt a{color:var(--auth-accent);font-weight:550;text-decoration:none}.auth-alt a:hover{text-decoration:underline}.auth-forgot{text-align:right;margin:-4px 0 14px;font-size:12.5px}.auth-forgot a{color:var(--auth-muted);text-decoration:none}.auth-forgot a:hover{color:var(--auth-ink);text-decoration:underline}.auth-btn-link{box-sizing:border-box;text-align:center;text-decoration:none;display:block}.auth-rules{color:var(--auth-muted);margin:-4px 0 14px;font-size:12.5px}.auth-rules p{margin:0 0 5px}.auth-rules ul{gap:3px;margin:0;padding:0;list-style:none;display:grid}.auth-rules li{align-items:center;gap:7px;display:flex}.auth-rules li .mark{text-align:center;width:13px;color:var(--ink-faint)}.auth-rules li.is-met{color:var(--auth-ink)}.auth-rules li.is-met .mark{color:var(--good)}.auth-hint{color:var(--auth-muted);margin:-8px 0 12px;font-size:12.5px}.auth-hint.err{color:var(--bad)}.auth-notice{border-left:2px solid var(--auth-accent);color:var(--auth-muted);margin:0 0 12px;padding-left:11px;font-size:12.5px;line-height:1.5}.auth-section{--auth-border:#ffffff1a;--auth-ink:var(--hud-ink);--auth-muted:var(--hud-muted);--auth-accent:var(--hud-accent);--auth-field:#1212129e;--auth-field-border:#ffffff1f;background:var(--panel);border:1px solid var(--auth-border);color:var(--auth-ink);border-radius:14px;padding:22px 20px 20px}.auth-section h2{margin:0 0 4px;font-size:16px;font-weight:650}.auth-section .sub{color:var(--auth-muted);margin:0 0 18px;font-size:13px}.auth-section .auth-btn,.auth-section .auth-ghost{width:auto;min-width:200px}:root[data-theme=light] .auth-shell{--auth-card:#ffffffc7;--auth-border:#0000001a;--auth-field:#0000000d;--auth-field-border:#00000024}:root[data-theme=light] .auth-scrim{background:radial-gradient(1200px 800px at 50% 42%,#ffffff0a,#ffffff6b 82%),linear-gradient(#ffffff1a,#ffffff38)}:root[data-theme=light] .auth-card{box-shadow:0 24px 60px -24px #00000047,0 4px 16px #0000001a,inset 0 1px #ffffffb3}:root[data-theme=light] .auth-card:before{background:linear-gradient(90deg,#0000,#8a6a0080,#0000)}:root[data-theme=light] .auth-btn{box-shadow:0 8px 22px -12px #00000059}:root[data-theme=light] .auth-ghost:hover{border-color:#0000003d}:root[data-theme=light] .auth-reveal:hover{background:#0000000d}:root[data-theme=light] .auth-msg.err{color:var(--bad)}:root[data-theme=light] .auth-msg.ok{color:var(--good)}:root[data-theme=light] .auth-alt a{color:var(--hud-accent-text)}:root[data-theme=light] .auth-section{--auth-border:#0000001a;--auth-field:#0000000d;--auth-field-border:#00000024}:root[data-theme=light] .auth-notice{border-left-color:var(--hud-accent-text)}
