.auth-main{padding:20px 16px 32px}@media (width>=640px){.auth-main{padding:24px 24px 40px}}.auth-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 6px;font-size:31px;font-weight:800;line-height:1.15}.auth-note{color:var(--muted-foreground);margin:0 0 20px}.auth-card{border:1px solid var(--border);background:var(--card);border-radius:4px;min-width:0;margin-top:16px;padding:20px}.auth-card:first-child{margin-top:0}.auth-actions{gap:12px;display:grid}.auth-cta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.auth-cta>form{margin:0}.auth-btn{background:var(--primary);min-height:40px;color:var(--primary-foreground);font:inherit;white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:700;line-height:1;text-decoration:none;transition:opacity .12s,background-color .12s;display:inline-flex}.auth-btn:hover{opacity:.9}.auth-actions>.auth-btn{min-height:44px}.auth-btn-alt{border-color:var(--border-strong);color:var(--foreground);background:0 0}.auth-btn-alt:hover{opacity:1;background:var(--muted)}.auth-btn-small{min-height:32px;padding:0 16px;font-size:14px}.auth-btn[aria-disabled=true],.auth-btn:disabled{opacity:.5;pointer-events:none}.auth-btn[aria-busy=true]{cursor:progress}.auth-btn-google{border-color:var(--border-strong);color:#0f1419;background:#fff}.auth-btn-google:hover{opacity:1;background:#f2f2f2}.auth-btn-mark{flex:none;width:18px;height:18px}.auth-divider{color:var(--muted-foreground);align-items:center;gap:12px;margin:20px 0;font-size:14px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.verify-state{color:var(--muted-foreground);margin:0}.magic-form{margin:0}.magic-form+.magic-form{margin-top:16px}.magic-label{margin-bottom:8px;font-weight:700;display:block}.magic-row{flex-wrap:wrap;gap:8px;display:flex}.magic-row input{border:1px solid var(--input);min-width:0;height:44px;color:var(--foreground);font:inherit;background:0 0;border-radius:8px;flex:14rem;padding:0 12px;font-size:16px;transition:border-color .12s,box-shadow .12s}.magic-row input::placeholder{color:var(--muted-foreground)}.magic-row input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.magic-row input[aria-invalid=true]{border-color:var(--destructive)}.magic-row button{background:var(--primary);height:44px;color:var(--primary-foreground);font:inherit;white-space:nowrap;border:0;border-radius:6px;flex:none;padding:0 20px;font-weight:700}.magic-row button:hover{opacity:.9}.magic-row button[aria-disabled=true]{opacity:.5;pointer-events:none}.magic-row button[aria-busy=true]{cursor:progress}.magic-check:not(:empty){margin-top:12px}.magic-status{min-height:20px;color:var(--muted-foreground);margin:8px 0 0;font-size:14px}.magic-status:is([data-state=error],[data-state=limited],[data-state=unverified],[data-state=failed],[data-state=shape],[data-state=wrong],[data-state=banned]){color:var(--destructive)}.magic-status[data-state=done]{color:var(--success)}.magic-foot{color:var(--muted-foreground);margin:16px 0 0;font-size:14px}.magic-foot a{color:var(--accent);font-weight:700;text-decoration:none}.magic-foot a:hover{text-decoration:underline}.banner{border:1px solid var(--border);background:var(--muted);border-radius:4px;justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 16px;padding:12px 16px;display:flex}.banner[data-tone=error]{border-color:color-mix(in srgb, var(--destructive) 40%, transparent);background:color-mix(in srgb, var(--destructive) 10%, transparent)}.banner[data-tone=status]{border-color:color-mix(in srgb, var(--success) 40%, transparent);background:color-mix(in srgb, var(--success) 10%, transparent)}.banner-close{width:28px;height:28px;color:inherit;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;margin:-4px -8px -4px 0;display:grid}.banner-close:hover{background:var(--muted)}.banner-close svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:12px;height:12px}.legal-foot{color:var(--muted-foreground);justify-content:center;gap:8px;margin:32px 0 0;font-size:13px;display:flex}.legal-foot a{text-decoration:none}.legal-foot a:hover{text-decoration:underline}@media (prefers-reduced-motion:reduce){.auth-btn,.magic-row input{transition:none}}
