.auth-shell{width:100%;min-height:min(100%,calc(100dvh - var(--auth-topbar-height, 64px) - 2rem));display:grid;place-items:center;align-content:center;padding:clamp(1rem,4vw,2rem);gap:0;position:relative;isolation:isolate}.auth-shell:before,.auth-shell:after{content:"";position:absolute;inset:auto;width:clamp(240px,34vw,420px);height:clamp(240px,34vw,420px);border-radius:50%;pointer-events:none;filter:blur(42px);opacity:.65;z-index:-1}.auth-shell:before{top:6%;right:-4%;background:radial-gradient(circle,color-mix(in oklch,var(--brand-primary) 16%,transparent) 0%,transparent 68%)}.auth-shell:after{bottom:-6%;left:-4%;background:radial-gradient(circle,color-mix(in oklch,var(--brand-accent) 14%,transparent) 0%,transparent 68%)}.auth-card{width:min(100%,470px);max-width:470px;padding:clamp(2rem,4vw,3rem);border:1px solid color-mix(in oklch,var(--border-subtle) 82%,transparent);border-radius:18px;background:linear-gradient(180deg,color-mix(in oklch,var(--surface-primary) 88%,transparent),color-mix(in oklch,var(--surface-secondary) 92%,transparent));box-shadow:0 28px 90px color-mix(in oklch,black 44%,transparent),0 0 0 1px color-mix(in oklch,var(--border) 18%,transparent),0 0 90px color-mix(in oklch,var(--accent) 8%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,color-mix(in oklch,var(--accent) 76%,white),transparent);opacity:.85}.auth-card .auth-intro{margin-top:.5rem;margin-bottom:1.25rem;line-height:1.55;color:var(--text-secondary)}.auth-message{margin-top:.75rem;margin-bottom:0;color:var(--text-secondary);line-height:1.45;min-height:1.35rem}.auth-closed-note{display:grid;gap:1rem;margin-top:.5rem}.auth-closed-actions{display:grid;gap:.7rem;margin-top:.25rem}.auth-closed-actions .btn-primary,.auth-closed-actions .btn-ghost{width:100%}.auth-card .grid-form{gap:.85rem}.auth-card .grid-form label{gap:.5rem;font-size:10px;font-weight:var(--fw-black);text-transform:uppercase;letter-spacing:.18em;color:color-mix(in oklch,var(--muted) 82%,var(--fg));margin-bottom:0}.auth-card .grid-form input,.auth-card .grid-form select,.auth-card .grid-form textarea{width:100%;background:color-mix(in oklch,var(--surface-secondary) 70%,black);border:1px solid color-mix(in oklch,var(--border-subtle) 84%,transparent);border-radius:12px;padding:.75rem 1rem;color:var(--text-primary);outline:none;box-shadow:inset 0 1px #ffffff08;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.auth-card .grid-form input::-moz-placeholder,.auth-card .grid-form textarea::-moz-placeholder{color:var(--text-secondary)}.auth-card .grid-form input::placeholder,.auth-card .grid-form textarea::placeholder{color:var(--text-secondary)}.auth-card .grid-form input:focus,.auth-card .grid-form select:focus,.auth-card .grid-form textarea:focus{border-color:color-mix(in oklch,var(--brand-primary) 58%,var(--border-strong));box-shadow:0 0 0 1px color-mix(in oklch,var(--brand-primary) 18%,transparent),0 0 0 4px color-mix(in oklch,var(--brand-primary) 10%,transparent);transform:translateY(-1px)}.auth-shell .btn-primary{width:100%;height:3rem;border-radius:12px;border:var(--border-width) solid transparent;background:linear-gradient(180deg,var(--brand-primary),color-mix(in oklch,var(--brand-primary) 88%,white));color:var(--text-inverse);font-size:var(--fluid-label-font);font-weight:var(--fw-black);letter-spacing:.15em;text-transform:uppercase;box-shadow:0 12px 28px color-mix(in oklch,var(--brand-primary) 16%,transparent);transition:background-color .18s ease,transform .12s ease,box-shadow .18s ease}.auth-shell .btn-primary:hover{box-shadow:0 14px 32px color-mix(in oklch,var(--brand-primary) 20%,transparent)}.auth-shell .btn-primary:active{transform:scale(.98)}.auth-shell .btn-primary.is-loading{transform:none}@media(max-width:760px){.auth-shell{min-height:auto;display:block;padding:0}}.auth-text-link{font-size:var(--fluid-label-font);color:var(--text-secondary);text-decoration:none;font-weight:var(--fw-medium);text-underline-offset:4px;transition:color .15s ease}.auth-text-link:hover{color:color-mix(in oklch,var(--brand-primary) 72%,var(--brand-accent));text-decoration:underline}.auth-cta-row{margin-top:.85rem;padding-top:1.2rem;border-top:1px solid color-mix(in oklch,var(--border-subtle) 90%,transparent);display:flex;align-items:center;justify-content:space-between;gap:.72rem;flex-wrap:wrap}html[data-theme=light] .auth-card{border-color:var(--border-subtle);background:var(--surface-primary)}html[data-theme=light] .auth-card .auth-intro,html[data-theme=light] .auth-message,html[data-theme=light] .auth-card .grid-form label{color:var(--text-secondary)}html[data-theme=light] .auth-card .grid-form input,html[data-theme=light] .auth-card .grid-form select,html[data-theme=light] .auth-card .grid-form textarea{background:var(--field-surface);border-color:var(--border-subtle);color:var(--text-primary)}html[data-theme=light] .auth-card .grid-form input::-moz-placeholder,html[data-theme=light] .auth-card .grid-form textarea::-moz-placeholder{color:var(--text-secondary)}html[data-theme=light] .auth-card .grid-form input::placeholder,html[data-theme=light] .auth-card .grid-form textarea::placeholder{color:var(--text-secondary)}html[data-theme=light] .auth-cta-row{border-top-color:var(--border-subtle)}.auth-cta-row .helper-text{margin:0;font-size:var(--fluid-text-base);line-height:1.45;color:var(--text-secondary)}.btn-auth-cta{display:inline-flex;align-items:center;justify-content:center;min-height:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--brand-accent);font-weight:var(--fw-bold);font-size:var(--fluid-text-base);text-decoration:none;text-underline-offset:4px;box-shadow:none}.btn-auth-cta:hover{color:color-mix(in srgb,var(--brand-primary) 78%,white);text-decoration:underline}:global(body.auth-page-shell){background:var(--safe-area-bg)}.auth-card-login{width:min(100%,470px);max-width:470px}.auth-card-login .eyebrow{margin:0 0 .25rem}.auth-card-login h1{margin:0}.auth-card-login .auth-intro{margin-top:.5rem;margin-bottom:1.25rem;color:var(--text-secondary)}.auth-card-login .grid-form{gap:.85rem}.auth-card-login .grid-form label{gap:.5rem;font-size:10px;font-weight:var(--fw-black);text-transform:uppercase;letter-spacing:.18em;color:color-mix(in oklch,var(--muted) 82%,var(--fg));margin-bottom:0}.auth-card-login .grid-form input{width:100%;background:color-mix(in oklch,var(--surface-secondary) 70%,black);border:1px solid color-mix(in oklch,var(--border-subtle) 84%,transparent);border-radius:12px;padding:.75rem 1rem;color:var(--text-primary);outline:none;box-shadow:inset 0 1px #ffffff08;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.auth-card-login .grid-form input::-moz-placeholder{color:var(--text-secondary)}.auth-card-login .grid-form input::placeholder{color:var(--text-secondary)}.auth-card-login .grid-form input:focus{border-color:color-mix(in oklch,var(--brand-primary) 58%,var(--border-strong));box-shadow:0 0 0 1px color-mix(in oklch,var(--brand-primary) 18%,transparent),0 0 0 4px color-mix(in oklch,var(--brand-primary) 10%,transparent);transform:translateY(-1px)}.auth-card-login .auth-message{margin-top:.75rem;margin-bottom:0;color:var(--text-secondary);min-height:1.35rem}.auth-card-login .auth-resend-wrap .btn-ghost{height:auto;padding:.45rem .72rem;font-size:var(--fluid-label-font);letter-spacing:.08em}.auth-resend-wrap{display:grid;gap:.45rem;margin-top:1rem}.auth-resend-wrap .btn-ghost{justify-self:start;min-height:2.35rem;padding-inline:.9rem;border-radius:12px;font-size:var(--fluid-label-font);font-weight:var(--fw-black);letter-spacing:.12em;text-transform:uppercase}.auth-login-submit{width:100%;height:3rem;border-radius:var(--radius-sm);border:var(--border-width) solid transparent;background:var(--brand-primary);color:var(--text-inverse);font-size:var(--fluid-label-font);font-weight:var(--fw-black);letter-spacing:.15em;text-transform:uppercase;transition:background-color .18s ease,transform .12s ease}.auth-login-submit:hover{background:color-mix(in srgb,var(--brand-primary) 82%,white)}.auth-login-submit:active{transform:scale(.98)}.auth-login-submit.is-loading{transform:none}.auth-links-row{margin-top:.72rem}.auth-resend-wrap{margin-top:.6rem;display:flex;justify-content:center;padding-top:.2rem}#login-message.is-verification{text-align:center;margin-top:.75rem;padding:.55rem .68rem;border:var(--border-width) solid color-mix(in srgb,var(--brand-primary) 32%,var(--border-subtle));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--brand-primary) 10%,transparent)}html[data-theme=light] .auth-card-login{border-color:var(--border-subtle);background:var(--surface-primary)}html[data-theme=light] .auth-card-login .auth-intro,html[data-theme=light] .auth-card-login .auth-message,html[data-theme=light] .auth-card-login .grid-form label{color:var(--text-secondary)}html[data-theme=light] .auth-card-login .grid-form input{background:var(--field-surface);border-color:var(--border-subtle);color:var(--text-primary)}html[data-theme=light] .auth-card-login .grid-form input::-moz-placeholder{color:var(--text-secondary)}html[data-theme=light] .auth-card-login .grid-form input::placeholder{color:var(--text-secondary)}.auth-create-link{color:var(--brand-accent);text-decoration:none;font-weight:var(--fw-bold);font-size:var(--fluid-text-base);transition:color .15s ease}.auth-create-link:hover{color:color-mix(in srgb,var(--brand-primary) 82%,white)}.auth-success-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:color-mix(in srgb,var(--safe-area-bg) 86%,transparent);backdrop-filter:blur(4px)}.auth-success-overlay[hidden]{display:none}.auth-success-card{width:min(320px,calc(100vw - 2rem));border:1px solid color-mix(in oklch,var(--border-subtle) 84%,transparent);border-radius:16px;background:linear-gradient(180deg,color-mix(in oklch,var(--surface-primary) 88%,transparent),color-mix(in oklch,var(--surface-secondary) 92%,transparent));box-shadow:var(--shadow-lg),0 0 0 1px color-mix(in oklch,var(--border) 16%,transparent),0 0 70px color-mix(in oklch,var(--accent) 7%,transparent);padding:.86rem .92rem}.auth-success-card p{margin:0 0 .55rem;font-size:var(--fluid-text-base);font-weight:var(--fw-bold);color:var(--text-primary)}.auth-success-track{height:.34rem;border-radius:999px;background:var(--border-subtle);overflow:hidden}.auth-success-progress{display:block;height:100%;width:55%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-primary) 0%,color-mix(in srgb,var(--brand-primary) 72%,white) 100%);animation:authSuccessSlide .9s ease-in-out infinite}html[data-theme=dark] .auth-success-overlay{background:color-mix(in srgb,var(--safe-area-bg) 90%,transparent)}html[data-theme=dark] .auth-success-card{background:var(--surface-primary);border-color:var(--border-subtle)}html[data-theme=light] .auth-success-overlay{background:color-mix(in srgb,var(--safe-area-bg) 84%,transparent)}.auth-card-signup{padding-bottom:1rem}.auth-captcha-wrap{margin-top:.35rem;margin-bottom:.35rem;display:flex;justify-content:center;width:100%}.auth-captcha-wrap .cf-turnstile{margin-inline:auto}.auth-captcha-note{margin-top:.2rem}.auth-card .grid-form .auth-legal-acceptance{display:flex;align-items:flex-start;gap:.7rem;padding:.72rem .82rem;border:1px solid color-mix(in oklch,var(--border-subtle) 80%,transparent);border-radius:12px;background:color-mix(in oklch,var(--surface-secondary) 42%,transparent);color:var(--text-secondary);font-size:.78rem;font-weight:var(--fw-semibold);line-height:1.45;letter-spacing:0;text-transform:none}.auth-card .grid-form .auth-legal-acceptance input{width:1rem;height:1rem;margin:.12rem 0 0;padding:0;flex:0 0 auto;accent-color:var(--brand-primary)}.auth-legal-acceptance a{color:color-mix(in oklch,var(--brand-primary) 76%,var(--text-primary));font-weight:var(--fw-bold);text-decoration:none}.auth-legal-acceptance a:hover{color:var(--text-primary)}.auth-card-forgot,.auth-card-reset{padding-bottom:1rem}.auth-reset-status{margin:.1rem 0 .92rem;border:var(--border-width) solid var(--border-subtle);border-radius:var(--radius-sm);padding:.6rem .7rem;font-size:var(--fluid-text-base);line-height:1.4;font-weight:var(--fw-semibold);color:var(--text-secondary)}.auth-reset-status.is-ready{border-color:color-mix(in srgb,var(--brand-primary) 32%,var(--border-subtle));background:color-mix(in srgb,var(--brand-primary) 10%,transparent);color:color-mix(in srgb,var(--brand-primary) 68%,white)}.auth-reset-status.is-invalid{border-color:color-mix(in srgb,var(--status-danger) 34%,var(--border-subtle));background:color-mix(in srgb,var(--status-danger) 10%,transparent);color:color-mix(in srgb,var(--status-danger) 68%,white)}.auth-reset-actions{display:flex;align-items:center;gap:.72rem;flex-wrap:wrap}.btn-auth-alt{display:inline-flex;align-items:center;justify-content:center;min-height:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--brand-accent);font-weight:var(--fw-bold);font-size:var(--fluid-text-base);text-decoration:none;text-underline-offset:4px}.btn-auth-alt:hover{color:color-mix(in srgb,var(--brand-primary) 82%,white);text-decoration:underline}@keyframes authSuccessSlide{0%{transform:translate(-82%)}to{transform:translate(180%)}}@media(prefers-reduced-motion:reduce){.auth-success-progress{animation:none;width:100%}}.auth-card-verify{padding-bottom:1rem}.verify-email-pending{color:var(--text-secondary)}.verify-email-error{color:var(--status-danger);font-weight:600}.verify-email-success{color:var(--status-success);font-weight:600}.auth-card-check-email,.auth-card-admin-login{padding-bottom:1rem}@media(max-width:980px){.auth-shell{padding:1rem .85rem}.auth-card,.auth-card-login{padding:1.6rem 1.35rem}.auth-cta-row,.auth-reset-actions{align-items:stretch;flex-wrap:wrap;gap:.65rem}}@media(max-width:760px){.auth-card,.auth-card-login{width:100%;max-width:none;padding:1.2rem 1rem}.auth-cta-row,.auth-reset-actions{align-items:stretch;flex-direction:column}.btn-auth-cta,.btn-auth-alt{width:100%;justify-content:flex-start}}
