.login-shell{background:var(--color-ground);min-height:100dvh;color:var(--color-fg);flex-direction:column;display:flex}.login-topbar{background:var(--color-bg);border-bottom:1px solid var(--color-line-soft);justify-content:space-between;align-items:center;gap:24px;min-height:80px;padding:16px 32px;display:flex}.login-wordmark{letter-spacing:-.03em;align-items:center;gap:12px;font-size:1.05rem;font-weight:750;display:flex}.login-wordmark>svg{flex-shrink:0;width:40px;height:40px}.login-wordmark small{color:var(--color-fg-muted);border-left:1px solid var(--color-line-soft);margin-left:8px;padding-left:16px;font-size:.72rem;font-weight:400}.login-main{flex:1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:0 72px;width:100%;max-width:1600px;margin-inline:auto;padding:48px 48px 24px;display:grid}.login-welcome{background:linear-gradient(180deg,var(--color-surface) 0%,color-mix(in srgb,var(--color-surface) 55%,transparent) 45%,transparent 70%),url(/images/showroom-plaza.png) center/cover;height:min(680px,75vh);min-height:560px;color:var(--color-fg);border-radius:24px;flex-direction:column;justify-content:space-between;padding:52px;display:flex;position:relative;overflow:hidden}.login-welcome>div>p{letter-spacing:.17em;color:var(--color-fg-muted);font-size:.67rem;font-weight:600}.login-welcome h1{letter-spacing:-.055em;margin:24px 0;font-size:clamp(2.2rem,3.4vw,3.7rem);font-weight:650;line-height:1.22}.login-welcome>div>span{word-break:keep-all;font-size:.9rem;line-height:1.7}.login-welcome-caption{font-size:.75rem;font-weight:500}.login-content{justify-self:center;width:100%;max-width:460px;padding:36px 0}.login-content header{margin-bottom:40px}.login-content header>p{letter-spacing:.14em;color:var(--color-fg-muted);margin-bottom:16px;font-size:.65rem}.login-content h2{letter-spacing:-.045em;margin-bottom:16px;font-size:2rem;font-weight:700;line-height:1.3}.login-content header>span{color:var(--color-fg-muted);font-size:.88rem;line-height:1.7}.login-content form{gap:24px;width:100%;max-width:none}.login-content form>label{max-width:none}.login-content form label>span{font-size:.85rem;font-weight:600}.login-content input:not([type=hidden]){border:1px solid var(--color-line-soft);background:var(--color-bg);letter-spacing:.02em;text-align:left;width:100%;min-width:0;min-height:60px;box-shadow:none;border-radius:12px;padding:16px;font-size:1.05rem}.login-content input:focus{outline:none;border-color:var(--field-focus-border)!important;box-shadow:var(--field-focus-shadow)!important}.login-content button[type=submit]{border-radius:12px;min-height:58px;font-size:.95rem;font-weight:600}.login-content [role=alert]{word-break:keep-all;overflow-wrap:anywhere;font-size:.85rem;line-height:1.7}.login-main>footer{color:var(--color-fg-muted);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;padding:28px 0 0;font-size:.65rem;display:flex}.login-main>footer>span{letter-spacing:.15em}.login-main>footer nav{gap:24px;display:flex}.login-main>footer a{align-items:center;min-height:44px;display:flex}@media (max-width:900px){.login-main{flex-direction:column;align-items:stretch;padding:40px 24px 24px;display:flex}.login-welcome{display:none}.login-content{width:100%;max-width:460px;margin:auto;padding:36px 0 64px}.login-content header{margin-bottom:32px}.login-main>footer{width:100%;max-width:460px;margin:0 auto;padding:12px 0 0}.login-topbar{flex-wrap:wrap;gap:12px;padding:16px 20px}.login-wordmark small{display:none}.login-topbar>.zoom-control{margin-left:auto}.login-content h2{font-size:1.8rem}}.login-content input:not([type=hidden]){background:var(--color-surface);border-color:var(--field-border);transition:border-color .18s,box-shadow .18s,background-color .18s}.login-content button[type=submit]:not([name=restart]):not(:disabled):hover{background:var(--color-accent);filter:brightness(.94)}.login-main>footer a:hover{color:var(--color-accent-ink)}.login-welcome h1{word-break:keep-all;overflow-wrap:anywhere;font-size:clamp(2rem,2.8vw,3.2rem)}.signup-field{font-size:var(--text-body,1rem);flex-direction:column;gap:.5rem;display:flex}.signup-field small{color:var(--color-fg-muted)}.signup-field input{min-height:var(--spacing-tap,48px);border:2px solid var(--color-line);border-radius:var(--radius-card,12px);background:var(--color-bg);color:var(--color-fg);padding:.75rem 1rem;font-size:1.05rem}.signup-field input:focus{border-color:var(--color-accent);outline:none}.signup-types{border:0;grid-template-columns:1fr 1fr;gap:.75rem;margin:0;padding:0;display:grid}.signup-types legend{font-size:var(--text-body,1rem);margin-bottom:.5rem}.signup-types label{border:2px solid var(--color-line);border-radius:var(--radius-card,12px);cursor:pointer;align-items:flex-start;gap:.6rem;padding:.9rem 1rem;transition:border-color .15s,background .15s;display:flex}.signup-types label:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-soft)}.signup-types input{accent-color:var(--color-accent);margin-top:.25rem}.signup-types span{flex-direction:column;gap:.15rem;display:flex}.signup-types small{color:var(--color-fg-muted);font-size:.8rem}.signup-link{min-height:var(--spacing-tap,44px);color:var(--color-accent-ink,var(--color-accent));justify-content:center;align-items:center;margin-top:12px;font-size:.9rem;font-weight:650;display:flex}.login-content .signup-types input{width:auto;min-width:0;min-height:0;box-shadow:none;border:0;flex:none;padding:0}@media (prefers-reduced-motion:reduce){.signup-types label{transition:none}}.k3-login .login-topbar{min-height:64px;padding:8px 32px}.k3-login-logo{object-fit:contain;width:auto;max-width:200px;height:36px}.k3-login-main{flex:1;grid-template-columns:minmax(0,460px);place-content:center;gap:48px;width:100%;max-width:1200px;margin-inline:auto;padding:24px 32px;display:grid}.k3-login-main.has-hero{grid-template-columns:minmax(0,1fr) minmax(0,460px);align-items:stretch}.k3-login-hero{background:var(--color-surface) center / cover no-repeat;border-radius:16px;min-height:420px}.k3-login .login-content{align-self:center;padding:0}.k3-login .login-content header{margin-bottom:32px}.k3-login .login-content h1{letter-spacing:-.02em;text-wrap:balance;margin-bottom:8px;font-size:2rem;font-weight:700;line-height:1.3}.k3-login .login-content header>span{font-size:var(--text-sub);color:var(--color-fg-muted)}.k3-login-foot{justify-content:center;padding:8px 24px 16px;display:flex}.k3-login-foot nav{color:var(--color-fg-muted);gap:24px;font-size:.78rem;display:flex}.k3-login-foot a{align-items:center;min-height:44px;display:flex}.k3-login-foot a:hover{color:var(--color-accent-ink,var(--color-accent))}@media (max-width:900px){.k3-login-main,.k3-login-main.has-hero{grid-template-columns:minmax(0,1fr);padding:24px 20px}.k3-login-hero{display:none}.k3-login .login-topbar{padding:8px 20px}}.login-content button[type=submit]:not(:disabled):active,.signup-link:active,.k3-login-foot a:active{transform:translateY(1px)}
