.auth-room,.auth-shell{min-height:100dvh}.auth-shell{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(1.5rem,5vh,4rem) 1.25rem;position:relative;isolation:isolate}.auth-shell:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 20% 15%,color-mix(in srgb,var(--studio-orchid) 10%,transparent),transparent 55%),radial-gradient(ellipse at 85% 80%,color-mix(in srgb,var(--studio-pink) 8%,transparent),transparent 55%)}.auth-wordmark{margin-bottom:2rem;color:var(--studio-ink)}.auth-card{width:min(100%,29rem);padding:clamp(1.5rem,5vw,2.5rem);border:1px solid var(--studio-line);border-radius:1.75rem;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.015)),var(--studio-void-elevated);box-shadow:0 24px 80px #0005,inset 0 1px 0 #ffffff0c}.auth-eyebrow{margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:600;color:var(--studio-pink)}.auth-card h1{font-family:var(--studio-display);font-size:clamp(1.8rem,5vw,2.15rem);line-height:1.15;letter-spacing:-.055em;font-weight:700;margin:0}.auth-lead{color:var(--studio-ink-soft);line-height:1.6;margin:.85rem 0 0;font-size:.96rem}.auth-entry{margin-top:2rem}.auth-fields,.auth-form,.auth-providers{display:flex;flex-direction:column;gap:.85rem}.auth-provider.auth-provider--google{background:#fff;color:#242127;border:1px solid #e6e3e9}.auth-provider.auth-provider--google:hover{background:#f1edf3}.auth-provider.auth-provider--apple{background:#28222f;color:#fff;border:1px solid #605466}.auth-provider.auth-provider--apple:hover{background:#362d3f}.auth-provider.auth-provider{min-height:3.25rem;border-radius:.9rem;font-size:.96rem;letter-spacing:0;gap:.85rem;font-weight:500}.auth-provider svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;gap:1rem;margin:.3rem 0;color:var(--studio-ink-soft);font-size:.8rem}.auth-divider:after,.auth-divider:before{content:"";height:1px;flex:1;background:var(--studio-line)}.auth-fields label{font-size:.8rem;font-weight:500;color:var(--studio-ink-soft);margin-bottom:-.4rem}.auth-fields input:not([type=hidden]){min-height:3.15rem;border-radius:.8rem;background:var(--studio-void);border:1px solid #726579;color:var(--studio-ink)}.auth-continue.auth-continue{min-height:3.15rem;border-radius:.9rem;background:var(--studio-pink);color:#291620;font-weight:600;letter-spacing:0}.auth-continue.auth-continue:hover{background:#f6bdd4}.auth-footer,.auth-small{font-size:.77rem;line-height:1.6;color:var(--studio-ink-soft);margin:0}.auth-footer{margin-top:1.5rem;font-size:.8rem}.auth-continuity{margin-top:1.75rem;padding-top:1.1rem;border-top:1px solid var(--studio-line);font-size:.8rem;line-height:1.65;color:var(--studio-ink-soft)}.auth-continuity summary{cursor:pointer;width:fit-content}.auth-continuity p{margin:.7rem 0 0}.auth-inbox h2{font-family:var(--studio-display);font-size:1.35rem;letter-spacing:-.025em;margin:0 0 .6rem}.auth-inbox p{color:var(--studio-ink-soft);line-height:1.6;font-size:.9rem;margin:0 0 .55rem;overflow-wrap:anywhere}.auth-inbox strong{color:var(--studio-ink);font-weight:500}.auth-text-button{color:var(--studio-pink);text-underline-offset:4px;text-decoration:underline;font-size:.8rem;cursor:pointer;min-height:2rem;padding:.2rem 0}.auth-text-button:disabled{color:var(--studio-ink-soft);cursor:default;text-decoration:none}.auth-fields .auth-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:2rem;text-align:center;letter-spacing:.35em;padding:.7rem .5rem .7rem 1.2rem;width:100%;font-variant-numeric:tabular-nums}.auth-code::placeholder{color:#8c7e95;opacity:.65}.auth-resend{font-size:.8rem;color:var(--studio-ink-soft);text-align:center}.auth-error{color:#ffc2c2;font-size:.85rem;line-height:1.6;margin:.6rem 0 0}.auth-message{color:var(--studio-ink-soft);font-size:.82rem;line-height:1.6;margin:0}.auth-card :focus-visible{outline:2px solid var(--studio-focus);outline-offset:4px}@media (prefers-reduced-motion:reduce){.auth-card *{transition:none!important}}.account-page{padding-top:3rem}.account-card{margin-top:2rem;width:min(100%,36rem)}.account-email{overflow-wrap:anywhere;color:var(--studio-ink-soft);margin:0 0 1.5rem}.account-method{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--studio-line)}.account-method>div{display:flex;align-items:center;gap:.75rem}.account-connected{color:var(--studio-ink-soft);font-size:.8rem}.account-card>.auth-small{margin-top:1.5rem}