.auth-page{--bg:#0a0a0c;--bg-1:#0e0e11;--surface:#16161b;--surface-2:#1d1d24;--line:#ffffff14;--line-2:#ffffff24;--line-strong:#fff3;--ink:#f5f5f7;--ink-2:#d4d4d8;--muted:#8b8b93;--muted-2:#5c5c66;--accent:#ff4438;--accent-soft:#ff443826;--accent-glow:#ff443866;--sans:var(--font-geist), "Geist", -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, sans-serif;--serif:var(--font-instrument-serif), "Instrument Serif", "Fraunces", Georgia, serif;--mono:var(--font-jetbrains-mono), "JetBrains Mono", "SF Mono", ui-monospace, monospace;font-family:var(--sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;letter-spacing:-.005em;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex;position:relative;overflow:hidden}.auth-page:before{content:"";background:radial-gradient(circle, var(--accent-soft) 0%, transparent 70%);opacity:.4;pointer-events:none;width:600px;height:600px;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}.auth-page:after{content:"";background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.3;pointer-events:none;background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 20%,#0000 70%);mask-image:radial-gradient(#000 20%,#0000 70%)}.auth-logo{z-index:1;color:var(--ink);align-items:center;gap:10px;margin-bottom:32px;text-decoration:none;display:flex;position:relative}.auth-logo-text{font-family:var(--serif);letter-spacing:-.015em;font-size:20px;font-style:italic;font-weight:400}.auth-card{z-index:1;background:var(--surface);border:1px solid var(--line-2);border-radius:20px;width:100%;max-width:420px;padding:32px 28px;animation:.5s ease-out auth-float-in;position:relative}@media (min-width:640px){.auth-card{border-radius:24px;padding:40px 36px}}@keyframes auth-float-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-title{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:28px;font-style:italic;font-weight:400;line-height:1.15}@media (min-width:640px){.auth-title{font-size:32px}}.auth-subtitle{color:var(--muted);margin-top:6px;font-size:14px;line-height:1.5}.auth-error{color:#ff8a80;background:#ff44381a;border:1px solid #ff443840;border-radius:12px;margin-top:16px;padding:10px 14px;font-size:13px}.auth-form{flex-direction:column;gap:18px;margin-top:28px;display:flex}.auth-field-label{color:var(--ink-2);letter-spacing:.01em;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.auth-input-wrap{position:relative}.auth-input-icon{color:var(--muted-2);pointer-events:none;width:18px;height:18px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.auth-input{background:var(--bg-1);border:1px solid var(--line-2);width:100%;color:var(--ink);font-family:var(--sans);border-radius:12px;outline:none;padding:12px 14px 12px 42px;font-size:14px;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:var(--muted-2)}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), 0 0 16px #ff44381a}.auth-input-noicon{padding-left:14px}.auth-input-toggle{color:var(--muted-2);cursor:pointer;background:0 0;border:none;padding:4px;transition:color .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.auth-input-toggle:hover{color:var(--ink-2)}.auth-type-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-type-btn{font-family:var(--sans);border:1px solid var(--line-2);background:var(--bg-1);color:var(--muted);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:14px 12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.auth-type-btn:hover{border-color:var(--line-strong);color:var(--ink-2)}.auth-type-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);box-shadow:0 0 0 3px #ff443814}.auth-btn{width:100%;font-family:var(--sans);letter-spacing:-.01em;cursor:pointer;color:#fff;background:linear-gradient(#ff6055,#e83a2e);border:none;border-radius:14px;margin-top:6px;padding:13px 20px;font-size:15px;font-weight:600;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:inset 0 1px #ffffff40,inset 0 -1px #0003,0 0 0 1px #ff443866,0 8px 24px #ff44384d,0 1px 2px #0000004d}.auth-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #0003,0 0 0 1px #ff443880,0 12px 32px #ff443866,0 1px 2px #0000004d}.auth-btn:disabled{opacity:.5;cursor:not-allowed}.auth-footer{text-align:center;color:var(--muted);z-index:1;margin-top:24px;font-size:13.5px;position:relative}.auth-footer a{color:var(--accent);font-weight:600;text-decoration:none;transition:opacity .15s}.auth-footer a:hover{opacity:.8}.auth-link-quiet{color:var(--muted);font-size:13px;text-decoration:none;transition:color .15s;display:inline-block}.auth-link-quiet:hover{color:var(--ink-2)}
