.auth-page{position:relative;display:flex;min-height:calc(100dvh - 8rem);flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:2.5rem 1rem 4rem}.auth-page:before{content:"";position:absolute;inset:12% 50% auto;width:min(36rem,80vw);height:18rem;translate:-50% 0;pointer-events:none;background:radial-gradient(ellipse at center,rgba(201,162,107,.16),transparent 70%);z-index:0}html[data-theme=dark] .auth-page:before{background:radial-gradient(ellipse at center,rgba(201,162,107,.12),transparent 70%)}.auth-stage{position:relative;z-index:1;width:100%;max-width:56rem;min-height:34rem;overflow:hidden;isolation:isolate}.auth-stage--enter{animation:auth-stage-in .7s var(--easing) both}.auth-stage__grid{display:grid;grid-template-columns:1fr;min-height:34rem}.auth-pane{display:flex;flex-direction:column;justify-content:center;gap:1rem;padding:1.75rem 1.35rem 1.5rem}.auth-pane__title{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;letter-spacing:.02em;color:var(--text-primary)}.auth-pane__lead{margin-top:-.35rem;font-size:.8125rem;line-height:1.5;color:var(--text-secondary)}.auth-form{display:flex;flex-direction:column;gap:.9rem}.auth-field{position:relative}.auth-field__input{width:100%;height:3rem;padding:1.15rem .85rem .35rem;border:1px solid var(--accent-muted);border-radius:2px;background:color-mix(in srgb,var(--bg-primary) 70%,transparent);color:var(--text-primary);font-size:.875rem;outline:none;transition:border-color .22s var(--easing),box-shadow .22s var(--easing),background-color .22s var(--easing)}.auth-field__input--toggle{padding-right:2.75rem}.auth-field__input:hover{border-color:color-mix(in srgb,var(--accent) 65%,var(--accent-muted))}.auth-field__input:focus{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);background:var(--bg-card)}.auth-field__label{position:absolute;left:.85rem;top:50%;translate:0 -50%;font-size:.875rem;color:var(--text-secondary);pointer-events:none;transform-origin:left center;transition:transform .22s var(--easing),color .22s var(--easing),font-size .22s var(--easing)}.auth-field__input:focus+.auth-field__label,.auth-field__input:not(:placeholder-shown)+.auth-field__label{top:.55rem;translate:0 0;font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.auth-field__toggle{position:absolute;right:.35rem;top:50%;display:grid;place-items:center;width:2.25rem;height:2.25rem;translate:0 -50%;border:0;background:transparent;color:var(--text-secondary);cursor:pointer}.auth-field__toggle:hover{color:var(--accent)}.auth-tabs{display:flex;gap:.25rem;padding:.2rem;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:2px}.auth-tabs__btn{flex:1;height:2rem;border:0;border-radius:2px;background:transparent;color:var(--text-secondary);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background-color .2s var(--easing),color .2s var(--easing)}.auth-tabs__btn.is-active{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.auth-chips{display:flex;flex-wrap:wrap;gap:.4rem}.auth-chip{height:1.75rem;padding:0 .65rem;border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:.6875rem;cursor:pointer;transition:border-color .18s var(--easing),color .18s var(--easing),background-color .18s var(--easing)}.auth-chip.is-active,.auth-chip:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.auth-alert{padding:.55rem .75rem;border:1px solid color-mix(in srgb,var(--error) 35%,transparent);border-radius:2px;background:color-mix(in srgb,var(--error) 10%,transparent);color:var(--error);font-size:.8125rem}.auth-alert--info{border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text-primary)}.auth-alert-stack{display:flex;flex-direction:column;gap:.55rem}.auth-alert__body{margin:0}.auth-alert__list{margin:.35rem 0 0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.4rem}.auth-alert__list li{line-height:1.45}.auth-alert__cta{display:inline-flex;align-items:center;justify-content:center;margin-top:.45rem;border:0;background:transparent;padding:0;color:var(--accent);font-size:.8125rem;font-weight:600;text-decoration:underline;text-underline-offset:.18em;cursor:pointer}.auth-alert__cta:hover{color:var(--text-primary)}.auth-submit{position:relative;display:grid;place-items:center;width:100%;height:2.75rem;overflow:hidden;border:0;border-radius:2px;background:var(--accent);color:#151823;font-family:var(--font-heading);font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:width .42s var(--easing),border-radius .42s var(--easing),background-color .3s var(--easing),filter .2s var(--easing)}html[data-theme=light] .auth-submit{background-image:linear-gradient(to right,#e8cba0,var(--accent))}.auth-submit:hover{filter:brightness(1.04)}.auth-submit:active{transform:scale(.98)}.auth-submit:disabled{pointer-events:none}.auth-submit--loading,.auth-submit--success{width:2.75rem;margin-inline:auto;border-radius:999px}.auth-submit--success{background:var(--success);background-image:none}.auth-submit__check,.auth-submit__label,.auth-submit__spin{grid-area:1/1}.auth-submit__label{transition:opacity .18s var(--easing),transform .18s var(--easing)}.auth-submit--loading .auth-submit__label,.auth-submit--success .auth-submit__label{opacity:0;transform:scale(.86)}.auth-submit__check,.auth-submit__spin{opacity:0;width:1.15rem;height:1.15rem}.auth-submit--loading .auth-submit__spin{opacity:1;animation:auth-spin .8s linear infinite}.auth-submit--success .auth-submit__check{opacity:1}.auth-submit__check-path{fill:none;stroke:#151823;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24}.auth-submit--success .auth-submit__check-path{animation:auth-check-draw .42s var(--easing) forwards}.auth-switch-mobile{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;padding-top:.25rem;font-size:.75rem;color:var(--text-secondary)}.auth-switch-mobile button{border:0;background:none;color:var(--accent);font-weight:600;cursor:pointer}.auth-switch-mobile button:hover{text-decoration:underline}.auth-overlay{display:none}.auth-overlay__face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:2.5rem;text-align:center;transition:opacity .38s var(--easing),transform .65s var(--easing)}.auth-overlay__title{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;line-height:1.2}.auth-overlay__body{max-width:18rem;font-size:.875rem;line-height:1.55;opacity:.86}.auth-overlay__cta{margin-top:.5rem;height:2.5rem;padding:0 1.4rem;border:1px solid;border-radius:2px;background:transparent;font-family:var(--font-heading);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .2s var(--easing),transform .2s var(--easing)}.auth-overlay__cta:hover{background:color-mix(in srgb,#151823 10%,transparent);transform:translateY(-1px)}.auth-success-veil{position:absolute;inset:0;z-index:4;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at 50% 40%,rgba(255,248,236,.2),transparent 42%),linear-gradient(160deg,#e8cba0 0,var(--accent) 55%,#8d6a3a 100%);color:#151823;clip-path:circle(0 at 50% 78%);opacity:0}.auth-success-veil.is-open{pointer-events:auto;opacity:1;clip-path:circle(150% at 50% 50%);transition:clip-path .72s cubic-bezier(.83,0,.17,1),opacity .18s linear}.auth-success-veil__mark{width:4.25rem;height:4.25rem;opacity:0;transform:scale(.7)}.auth-success-veil.is-open .auth-success-veil__mark{opacity:1;transform:scale(1);transition:opacity .28s .28s var(--easing),transform .42s .22s var(--easing)}.auth-success-card{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem .5rem;text-align:center}.auth-success-card__icon{display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.auth-pane--login,.auth-pane--register{min-height:0}@media (max-width:767px){.auth-stage{max-width:26rem;min-height:0}.auth-stage__grid{min-height:0;grid-template-columns:1fr}.auth-pane--login,.auth-pane--register{grid-area:1/1;transition:opacity .38s var(--easing),transform .38s var(--easing)}.auth-stage[data-mode=login] .auth-pane--register,.auth-stage[data-mode=register] .auth-pane--login{opacity:0;pointer-events:none;transform:translateY(12px)}.auth-stage[data-mode=login] .auth-pane--login,.auth-stage[data-mode=register] .auth-pane--register{opacity:1;transform:none}.auth-stage--enter .auth-pane--active .auth-chips,.auth-stage--enter .auth-pane--active .auth-field,.auth-stage--enter .auth-pane--active .auth-pane__title,.auth-stage--enter .auth-pane--active .auth-tabs{animation:auth-rise .48s var(--easing) both;animation-delay:calc(var(--i, 0) * 60ms)}}@media (min-width:768px){.auth-stage__grid{grid-template-columns:1fr 1fr}.auth-pane{padding:2.25rem 2rem}.auth-switch-mobile{display:none}.auth-overlay{display:block;position:absolute;inset:0 auto 0 0;z-index:3;width:50%;overflow:hidden;color:#151823;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.22),transparent 46%),linear-gradient(165deg,#e8cba0 0,var(--accent) 48%,#9a7340 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.28);transform:translate3d(100%,0,0);will-change:transform;backface-visibility:hidden;transition:transform .7s cubic-bezier(.83,0,.17,1)}.auth-stage--enter .auth-overlay{animation:auth-door-in-login .9s cubic-bezier(.83,0,.17,1) both}.auth-stage--enter[data-mode=register] .auth-overlay{animation-name:auth-door-in-register}.auth-overlay:after{content:"";position:absolute;inset:12% auto 12% 0;width:1px;background:linear-gradient(180deg,transparent,rgba(21,24,35,.18),transparent)}.auth-stage[data-mode=register] .auth-overlay{transform:translateZ(0)}.auth-stage[data-mode=login] .auth-overlay__face--welcome{opacity:1;transform:none}.auth-stage[data-mode=login] .auth-overlay__face--back{opacity:0;transform:translateX(1.25rem);pointer-events:none}.auth-stage[data-mode=register] .auth-overlay__face--welcome{opacity:0;transform:translateX(-1.25rem);pointer-events:none}.auth-stage[data-mode=register] .auth-overlay__face--back{opacity:1;transform:none}.auth-stage--enter .auth-pane--active .auth-chips,.auth-stage--enter .auth-pane--active .auth-field,.auth-stage--enter .auth-pane--active .auth-pane__title,.auth-stage--enter .auth-pane--active .auth-tabs{animation:auth-rise .52s var(--easing) both;animation-delay:calc(var(--i, 0) * 55ms)}}@keyframes auth-stage-in{0%{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:none}}@keyframes auth-door-in-login{0%{transform:translate3d(200%,0,0)}to{transform:translate3d(100%,0,0)}}@keyframes auth-door-in-register{0%{transform:translate3d(-100%,0,0)}to{transform:translateZ(0)}}@keyframes auth-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes auth-spin{to{transform:rotate(1turn)}}@keyframes auth-check-draw{to{stroke-dashoffset:0}}@keyframes auth-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}.auth-form.is-error{animation:auth-shake .42s cubic-bezier(.36,.07,.19,.97)}@media (prefers-reduced-motion:reduce){.auth-field__label,.auth-overlay,.auth-overlay__face,.auth-pane--login,.auth-pane--register,.auth-stage--enter,.auth-submit,.auth-success-veil,.auth-success-veil__mark{transition:none!important;animation:none!important}.auth-success-veil.is-open{clip-path:none}.auth-submit--loading .auth-submit__spin{animation:none}}