.auth-page{display:flex;flex-direction:column;align-items:center;padding:clamp(32px,7vh,80px) var(--gutter) 48px}.auth-card{width:min(480px,100%);box-sizing:border-box;padding:40px;border:1px solid var(--rule);border-radius:12px;background:var(--paper);box-shadow:var(--sheet-shadow)}.auth-card.wide{width:min(560px,100%)}.auth-aside{width:min(480px,100%);margin-top:20px;color:var(--pencil);font-size:14px;text-align:center}.auth-heading{display:grid;gap:8px;margin-bottom:28px}.auth-heading h1,.auth-heading h2{font-size:1.75rem;font-stretch:96%;letter-spacing:-.015em;line-height:1.15}.auth-heading p{color:var(--ink-soft);font-size:15px;line-height:1.55}.auth-heading strong{color:var(--ink);font-weight:600;overflow-wrap:anywhere}.auth-status{display:grid;width:44px;height:44px;margin-bottom:12px;place-items:center;border-radius:50%;background:var(--wash);color:var(--blue)}.auth-status.error{background:var(--danger-wash);color:var(--danger)}.auth-status.pending{background:var(--canvas);color:var(--blue)}.auth-form{display:flex;flex-direction:column;gap:18px}.auth-field{display:grid;gap:6px;min-width:0}.auth-field label,.auth-field-row label{color:var(--ink);font-size:14px;font-weight:600}.auth-field-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-password{position:relative}.auth-password [data-slot=input]{padding-right:48px}.auth-password>button{position:absolute;top:1px;right:1px;display:grid;width:44px;height:44px;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--pencil);cursor:pointer}.auth-password>button:hover{color:var(--ink)}.auth-password>button:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}.public-site [data-slot=input],.public-site [data-slot=select-trigger],.public-site [data-slot=textarea]{border-color:var(--rule-strong);border-radius:10px;background:var(--control);color:var(--ink);font-size:16px}.public-site [data-slot=input],.public-site [data-slot=select-trigger]{min-height:46px}.auth-card [data-slot=button],.auth-surface [data-slot=button]{min-height:46px;height:auto;padding-block:10px;border-radius:10px;font-size:15px;line-height:1.35;white-space:normal;text-align:center}.auth-card [data-slot=button].bg-primary,.auth-surface [data-slot=button].bg-primary{background:var(--blue);color:var(--on-dark);font-weight:600}.auth-card [data-slot=button].bg-primary:hover,.auth-surface [data-slot=button].bg-primary:hover{background:var(--blue-hover)}.auth-card [data-slot=button].border,.auth-surface [data-slot=button].border{border-color:var(--rule-strong);background:var(--paper);color:var(--ink);box-shadow:none;font-weight:600}.auth-card [data-slot=button].border:hover,.auth-surface [data-slot=button].border:hover{background:var(--canvas)}.auth-surface [data-slot=button][aria-pressed]{min-height:44px;padding-block:8px;font-weight:500}.auth-surface [data-slot=button].border[aria-pressed=true],.auth-surface [data-slot=button].border[aria-pressed=true]:hover{border-color:var(--blue);background:var(--wash);color:var(--accent-foreground)}.public-site [data-slot=alert]{border-radius:10px;font-size:14px;line-height:1.55}.public-site [data-slot=alert]+*{margin-top:0}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--pencil);font-size:13px}.auth-divider:before,.auth-divider:after{height:1px;flex:1;background:var(--rule);content:""}.auth-social{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.auth-social [data-slot=button]{gap:10px}.auth-social svg{width:18px;height:18px;flex:none}.auth-fineprint{color:var(--pencil);font-size:13px;line-height:1.5}.auth-switch{color:var(--ink-soft);font-size:14px;text-align:center}.auth-link{border-radius:3px;color:var(--blue);font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline;text-underline-offset:3px}.auth-link:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.auth-actions{display:grid;gap:10px}.auth-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px;padding-top:20px;border-top:1px solid var(--rule);color:var(--pencil);font-size:13px}@media (max-width: 520px){.auth-card{padding:28px 20px}}@media (prefers-reduced-motion: reduce){.public-site [data-slot=button]{transition:none}}
