.auth-shell{display:flex;flex-direction:column;min-height:100dvh}.auth-shell__main{position:relative;flex:1;display:flex;justify-content:center;align-items:flex-start;overflow:hidden;padding:clamp(1.25rem,4vw,2rem) clamp(.85rem,3vw,1.25rem) clamp(1.75rem,5vw,2.5rem);background:var(--bg-main)}.auth-shell__backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;background-color:var(--bg-main);pointer-events:none}.auth-shell__backdrop:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0,rgba(0,0,0,.02),transparent 55%);pointer-events:none}.auth-shell__wash{position:absolute;inset:0;z-index:0;pointer-events:none;background:var(--bg-main)}.auth-shell__wrap{position:relative;z-index:1;width:100%;max-width:64rem;display:grid;grid-template-columns:1fr;gap:clamp(1.75rem,4vw,2.75rem);align-items:center}@media(min-width:640px){.auth-shell__main{align-items:center;padding-top:clamp(4rem,14vh,7rem);padding-bottom:clamp(4rem,14vh,7rem)}}@media(min-width:960px){.auth-shell__wrap{grid-template-columns:minmax(0,1fr) minmax(0,27rem);gap:clamp(2.5rem,5vw,4rem)}}.auth-shell__aside{order:2;display:flex;flex-direction:column;gap:1rem;animation:auth-rise .7s var(--reveal-ease) both}@media(min-width:960px){.auth-shell__aside{order:0;gap:1.15rem}}.auth-shell__brand{display:inline-flex;width:-moz-fit-content;width:fit-content}.auth-shell__aside-eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin:0;color:var(--accent)}.auth-shell__aside-eyebrow:before{content:"";width:1.6rem;height:2px;border-radius:2px;background:var(--accent)}.auth-shell__aside-title{margin:0;max-width:18ch;text-wrap:balance;color:var(--text-title,var(--text-main))}.auth-shell__aside-accent{color:var(--accent-on-surface)}.auth-shell__highlights{display:grid;gap:.7rem;margin:.35rem 0 0;padding:0;list-style:none}.auth-shell__highlight{display:flex;align-items:center;gap:.65rem;color:var(--text-main)}.auth-shell__highlight svg{width:1.2rem;height:1.2rem;flex-shrink:0;color:var(--accent)}.auth-shell__aside-note{margin:.35rem 0 0;color:var(--text-muted)}.auth-shell__panel{order:1;position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-hard);animation:auth-rise .7s var(--reveal-ease) .08s both}@media(min-width:960px){.auth-shell__panel{order:0}}.auth-shell__panel:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--accent)}.auth-shell__header{flex-shrink:0;padding:1.1rem 1.35rem;border-bottom:1px solid var(--line)}.auth-shell__kicker{margin:0;color:var(--accent)}.auth-shell__title{margin:.3rem 0 0;line-height:1.2;color:var(--text-title,var(--text-main))}.auth-shell__content{display:flex;flex-direction:column;gap:.875rem;padding:1rem 1.25rem 1.25rem}.auth-shell__intro{margin:0;line-height:1.55;color:var(--text-muted)}.auth-shell__footer{flex-shrink:0;padding:.875rem 1.25rem 1.125rem;border-top:1px solid var(--line);display:grid;gap:.35rem;line-height:1.45;color:var(--text-muted)}.auth-form{display:flex;flex-direction:column;gap:.75rem}.auth-form--shake{animation:auth-form-shake .48s var(--ease-out-quart)}.auth-field{display:flex;flex-direction:column;gap:.375rem}.auth-field__label{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--type-label-font);line-height:var(--type-label-leading);color:var(--text-muted)}.auth-field__label svg{width:1rem;height:1rem;flex-shrink:0}.auth-field__input{width:100%;min-height:2.75rem;padding:.625rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--text-main);font-family:var(--type-input-font);line-height:var(--type-input-leading);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.auth-field__input:hover{border-color:color-mix(in srgb,var(--accent) 22%,var(--line))}.auth-field__input:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent);outline:none}.auth-field__input::-moz-placeholder{color:color-mix(in srgb,var(--text-muted) 75%,transparent)}.auth-field__input::placeholder{color:color-mix(in srgb,var(--text-muted) 75%,transparent)}.auth-field__input--invalid{border-color:var(--danger);animation:auth-field-nudge .42s var(--ease-out-quart)}.auth-field__hint{margin:0;line-height:1.45;color:var(--text-muted)}.auth-field__error{margin:0;color:var(--danger)}.auth-consent{display:flex;align-items:flex-start;gap:.6rem;margin-top:.15rem;cursor:pointer}.auth-consent--invalid .auth-consent__input{outline:2px solid var(--danger);outline-offset:1px}.auth-consent__input{margin-top:.15rem;width:1rem;height:1rem;flex-shrink:0;accent-color:var(--accent)}.auth-consent__text{line-height:1.5;color:var(--text-muted)}.auth-consent__error{margin-top:-.25rem}.auth-alert{margin:0;padding:.625rem .75rem;border-radius:var(--radius-md);line-height:1.45}.auth-alert--danger{border:1px solid var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.auth-alert--danger p+p{margin-top:.35rem;color:var(--text-main)}.auth-alert__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.65rem}.auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.5rem;padding:.55rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--line);text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .15s ease,box-shadow .15s ease}.auth-btn:disabled{opacity:.55;pointer-events:none}.auth-btn--primary{width:100%;min-height:3rem;padding:.75rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--btn-primary-bg);background:var(--btn-primary-bg);color:var(--btn-primary-text);box-shadow:none}.auth-btn--primary:hover{background:var(--btn-primary-hover);border-color:var(--btn-primary-hover);transform:none;box-shadow:none}.auth-btn--danger{border-color:var(--danger);background:var(--danger);color:#fff}.auth-btn--ghost{background:var(--surface);color:var(--text-muted)}.auth-btn--ghost:hover{background:var(--surface-strong);color:var(--text-main)}.auth-actions{display:flex;flex-direction:column;gap:.75rem;padding-top:.25rem}.auth-actions__row{justify-content:space-between;gap:.65rem 1rem;margin-top:5px}.auth-actions__row,.auth-actions__start{display:flex;flex-wrap:wrap;align-items:center}.auth-actions__start{gap:.65rem}.auth-actions__start .auth-btn--primary{width:auto;min-width:9rem}.auth-actions__aside{color:var(--text-muted)}.auth-link{color:var(--accent);text-decoration:underline;text-underline-offset:.12em}.auth-link:hover{color:var(--accent-on-surface)}.auth-link--muted{text-decoration:none}.auth-link--muted:hover{text-decoration:underline}.auth-result{display:grid;gap:.5rem;padding:.875rem 1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,var(--surface-strong))}.auth-result--success{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.auth-result--info{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.auth-result--danger{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));background:color-mix(in srgb,var(--danger) 10%,var(--surface))}.auth-form--resend{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.auth-result__title{margin:0;color:var(--text-main)}.auth-result__copy{margin:0;line-height:1.55;color:var(--text-muted)}.auth-btn__spinner{width:.875rem;height:.875rem;border:2px solid rgba(255,248,242,.35);border-top-color:#fff;border-radius:50%;animation:auth-spin .75s linear infinite}.auth-field-error-enter-active,.auth-field-error-leave-active{transition:opacity .2s var(--ease-out-expo),transform .2s var(--ease-out-expo)}.auth-field-error-enter-from,.auth-field-error-leave-to{opacity:0;transform:translate3d(0,-4px,0)}@keyframes auth-form-shake{0%,to{transform:translateZ(0)}20%{transform:translate3d(-4px,0,0)}40%{transform:translate3d(4px,0,0)}60%{transform:translate3d(-2px,0,0)}80%{transform:translate3d(2px,0,0)}}@keyframes auth-field-nudge{0%,to{transform:translateZ(0)}35%{transform:translate3d(-2px,0,0)}70%{transform:translate3d(2px,0,0)}}@keyframes auth-spin{to{transform:rotate(1turn)}}@keyframes auth-rise{0%{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.auth-field__input--invalid,.auth-form--shake,.auth-shell__aside,.auth-shell__panel{animation:none}.auth-btn--primary:hover{transform:none}.auth-btn__spinner{animation:none;opacity:.85}}
