.portal-auth-shell{grid-template-columns:1fr;min-height:100dvh;display:grid}@media (width>=64rem){.portal-auth-shell{grid-template-columns:1.05fr 1fr}}.portal-auth-aside{background:var(--color-surface-sunken);border-bottom:1px solid var(--color-hairline);align-items:center;padding:clamp(1.75rem,5vw,4.5rem) clamp(1.25rem,5vw,4rem);display:flex}@media (width>=64rem){.portal-auth-aside{border-bottom:0;border-right:1px solid var(--color-hairline)}}.portal-auth-aside-inner{width:100%;max-width:34rem;margin-inline:auto}.portal-auth-wordmark{letter-spacing:-.02em;color:var(--color-ink);font-size:1.375rem;font-weight:700;text-decoration:none;display:inline-block}.portal-auth-photo{aspect-ratio:8/5;border:1px solid var(--color-hairline);background:var(--color-surface);border-radius:2rem;margin-top:2rem;position:relative;overflow:hidden;box-shadow:0 24px 60px -40px #05050559}.portal-auth-photo:after{content:"";pointer-events:none;background:linear-gradient(#0000 65%,#0505051a);position:absolute;inset:0}.portal-auth-photo img{object-fit:cover;width:100%;height:100%;display:block}.portal-auth-points{color:var(--color-ink-muted);gap:.875rem;margin-top:2rem;font-size:.9375rem;line-height:1.6;display:grid}.portal-auth-points li{padding-left:1.75rem;position:relative}.portal-auth-points li:before{content:"";background:var(--color-brand-500);border-radius:2px;width:.5rem;height:.5rem;position:absolute;top:.5rem;left:0}.portal-auth-aside-back{margin-top:2.5rem;font-size:.9375rem;font-weight:500}.portal-auth-aside-back a{color:var(--color-ink);text-decoration:none}@media (width<=63.99rem){.portal-auth-points,.portal-auth-aside-back{display:none}}.portal-auth-main{justify-content:center;align-items:center;padding:clamp(1.75rem,5vw,4rem) clamp(1.25rem,5vw,3rem);display:flex}.portal-auth-column{width:100%;max-width:30rem}.portal-auth-card{background:var(--color-surface);border:1px solid var(--color-hairline);border-radius:2rem;padding:clamp(1.5rem,4vw,2.5rem);box-shadow:0 24px 60px -40px #0505054d}.portal-auth-heading{letter-spacing:-.02em;color:var(--color-ink);font-size:1.5rem;font-weight:700;line-height:1.25}.portal-auth-subheading{color:var(--color-ink-muted);margin-top:.5rem;font-size:.9375rem;line-height:1.6}.portal-auth-form{margin-top:1.75rem}.portal-auth-form button[type=submit]{width:100%}.portal-auth-alt{border-top:1px solid var(--color-hairline);color:var(--color-ink-muted);text-align:center;margin-top:1.5rem;padding-top:1.5rem;font-size:.9375rem}.portal-auth-alt a{color:var(--color-ink);text-underline-offset:3px;font-weight:600;text-decoration:underline}.portal-auth-inline-link{color:var(--color-ink-muted);text-underline-offset:3px;margin-top:.75rem;font-size:.875rem;text-decoration:underline;display:inline-block}.portal-auth-inline-link:hover{color:var(--color-ink)}.portal-auth-consent{color:var(--color-ink-subtle);margin-top:1.25rem;font-size:.75rem;line-height:1.6}.portal-auth-consent a{color:var(--color-ink-muted);text-underline-offset:3px;text-decoration:underline}.portal-auth-footnote,.portal-auth-legal{text-align:center;color:var(--color-ink-subtle);margin-top:1.5rem;font-size:.8125rem}.portal-auth-legal{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.portal-auth-legal a{color:var(--color-ink-muted);text-underline-offset:3px;text-decoration:underline}.portal-auth-back-mobile{text-align:center;color:var(--color-ink);text-underline-offset:3px;margin-top:1.5rem;font-size:.875rem;font-weight:600;text-decoration:underline;display:block}@media (width>=64rem){.portal-auth-back-mobile{display:none}}.portal-auth-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.portal-auth-remember{color:var(--color-ink-muted);cursor:pointer;align-items:center;gap:.625rem;font-size:.875rem;display:inline-flex}.portal-auth-row .portal-auth-inline-link{margin-top:0}.portal-auth-notice{background:var(--color-surface-sunken);color:var(--color-ink-muted);border-radius:1rem;margin-top:1.5rem;padding:1rem 1.125rem;font-size:.9375rem;line-height:1.6}.portal-auth-notice a{color:var(--color-ink);text-underline-offset:3px;text-decoration:underline}.portal-auth-status{border:1px solid var(--color-brand-200);background:var(--color-brand-50);color:var(--color-ink);border-radius:1rem;margin-bottom:1.25rem;padding:.875rem 1.125rem;font-size:.9375rem;font-weight:500}.portal-auth-errors{border:1px solid var(--color-danger);border-radius:1rem;margin-bottom:1.5rem;padding:1rem 1.125rem}.portal-auth-errors-title{color:var(--color-danger);font-size:.875rem;font-weight:700}.portal-auth-errors-list{gap:.375rem;margin-top:.5rem;font-size:.875rem;display:grid}.portal-auth-errors-list a{color:var(--color-danger);text-underline-offset:3px;text-decoration:underline}.portal-auth-password{position:relative}.portal-auth-password-input{padding-right:5.25rem}.portal-auth-password-toggle{height:3.125rem;color:var(--color-ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9999px;align-items:center;padding-inline:.875rem;font-size:.8125rem;font-weight:600;transition:color .2s,background-color .2s;display:inline-flex;position:absolute;top:1.75rem;right:.3125rem}.portal-auth-password-toggle:hover{color:var(--color-ink);background:var(--color-surface-sunken)}.portal-auth-password-toggle[hidden]{display:none}.portal-auth-strength{margin-top:.75rem}.portal-auth-strength-track{grid-template-columns:repeat(4,1fr);gap:.375rem;display:grid}.portal-auth-strength-track[hidden]{display:none}.portal-auth-strength-segment{background:var(--color-hairline);border-radius:9999px;height:.25rem;transition:background-color .25s}.portal-auth-strength-segment[data-filled=true]{background:var(--color-ink)}.portal-auth-strength[data-level="3"] .portal-auth-strength-segment[data-filled=true],.portal-auth-strength[data-level="4"] .portal-auth-strength-segment[data-filled=true]{background:var(--color-brand-500)}.portal-auth-strength-label{color:var(--color-ink-muted);margin-top:.5rem;font-size:.8125rem;line-height:1.5}.portal-auth-strength-label strong{color:var(--color-ink);font-weight:600}@media (prefers-reduced-motion:reduce){.portal-auth-strength-segment,.portal-auth-password-toggle{transition:none!important}.portal-auth-card,.portal-auth-status,.portal-auth-errors{opacity:1!important;animation:none!important;transform:none!important}}
