.auth-page{--teal-dark: #2c776f;--teal: #14b8a6;--teal-bright: #2dd4a8;--fg: #1a1a1a;--muted: #64748b;--border: #e5e7eb;--pale-teal: #e6f7f4;--font-display: "Source Serif 4", "Iowan Old Style", Charter, Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;background:#f5f5f5;min-height:calc(100vh - 64px);padding:56px 16px 96px;font-family:var(--font-body);color:var(--fg)}.auth-shell{max-width:520px;margin:0 auto}.auth-shell--narrow{max-width:460px}.auth-eyebrow{font:500 11px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-dark);margin-bottom:12px}.auth-h1{font-family:var(--font-display);font-style:italic;font-weight:600;font-size:clamp(32px,4vw,44px);line-height:1.08;margin:0 0 14px;color:var(--fg);letter-spacing:-.015em}.auth-lede{font-size:15px;line-height:1.55;color:var(--muted);margin:0 0 28px}.auth-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px;box-shadow:0 1px 2px #0f17290a,0 20px 60px -30px #0f17292e}.auth-form{display:flex;flex-direction:column;gap:4px}.auth-tabs{display:inline-flex;background:#f1f5f9;border:1px solid var(--border);border-radius:999px;padding:3px;margin:0 0 18px;align-self:flex-start;gap:2px}.auth-tab{background:transparent;color:var(--muted);border:0;padding:7px 16px;border-radius:999px;font:600 12px/1.2 var(--font-body);letter-spacing:.02em;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease}.auth-tab:hover:not(.auth-tab--active){color:var(--teal-dark)}.auth-tab--active{background:#fff;color:var(--teal-dark);box-shadow:0 1px 3px #0f17291a}.auth-tab:focus-visible{outline:2px solid var(--teal);outline-offset:1px}.auth-foot--right{text-align:right;margin-top:6px}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:480px){.auth-row{grid-template-columns:1fr}}.auth-col{display:flex;flex-direction:column;min-width:0}.auth-label{font:500 12px/1.2 var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:14px;margin-bottom:6px}.auth-opt{text-transform:none;letter-spacing:0;color:#94a3b8;font-weight:400}.auth-input{background:#fff;border:1px solid var(--border);color:var(--fg);padding:11px 13px;border-radius:10px;font:500 14px/1.4 var(--font-body);width:100%;transition:border-color .15s ease,box-shadow .15s ease}.auth-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #14b8a62e}.auth-input[aria-invalid=true]{border-color:#dc2626}.auth-fielderr{margin-top:4px;color:#b91c1c;font-size:12px;line-height:1.4}.auth-consent{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-size:13px;line-height:1.5;color:var(--fg)}.auth-consent input[type=checkbox]{margin-top:3px;accent-color:var(--teal);width:16px;height:16px;flex-shrink:0}.auth-btn{margin-top:22px;background:var(--teal);color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:600;font-size:14px;letter-spacing:-.005em;cursor:pointer;transition:background .18s ease,transform .18s ease,box-shadow .18s ease;box-shadow:0 4px 12px -3px #14b8a673}.auth-btn:hover:not(:disabled){background:var(--teal-bright);transform:translateY(-1px);box-shadow:0 8px 18px -4px #2dd4a88c}.auth-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.auth-error{margin-top:14px;background:#dc262614;border:1px solid rgba(220,38,38,.25);color:#b91c1c;padding:11px 13px;border-radius:10px;font-size:13px;line-height:1.5}.auth-foot{margin-top:22px;font-size:13px;color:var(--muted);text-align:center}.auth-link{color:var(--teal-dark);text-decoration:underline}.auth-linkbtn{background:none;border:0;padding:0;color:var(--teal-dark);text-decoration:underline;font:inherit;cursor:pointer}.auth-success{text-align:center}.auth-success-mark{width:56px;height:56px;border-radius:50%;background:#2dd4a81f;border:2px solid var(--teal-bright);color:var(--teal-dark);display:grid;place-items:center;margin:0 auto 18px;font-size:26px;font-weight:700}.auth-success-h{font-family:var(--font-display);font-style:italic;font-weight:600;font-size:26px;line-height:1.2;margin:0 0 12px;color:var(--fg)}.auth-success-p{font-size:15px;line-height:1.55;color:var(--fg);margin:0 0 18px}.auth-success-foot{font-size:13px;color:var(--muted);margin:0}.auth-ref-pill{margin-top:18px;background:var(--pale-teal);border:1px solid rgba(20,184,166,.25);color:var(--teal-dark);padding:9px 12px;border-radius:10px;font-size:13px;line-height:1.4}.auth-ref-pill code{font-family:var(--font-mono);font-weight:600;letter-spacing:.04em}
