.lx-v2-auth { max-width: 64rem; padding-block: 2rem 4rem; }
.lx-v2-auth-login { max-width: 54rem; }
.lx-v2-auth .lx-v2-breadcrumb { padding-inline: 0; }
.lx-v2-auth-heading { margin-bottom: 1.75rem; }
.lx-v2-auth-heading h1 { font-size: clamp(1.8rem, 4vw, 2.8rem); line-height: 1.2; margin-block: .5rem 1rem; }
.lx-v2-auth-heading > p:last-child { color: var(--lx-muted); max-width: 46rem; }
.lx-v2 .lx-v2-signup-welcome { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:clamp(.75rem,2vw,1.5rem); padding:clamp(1rem,3vw,1.75rem); border:1px solid #e0e9f4; border-radius:1.25rem; background:linear-gradient(110deg,#f1f7ff,#fffaf2); }
.lx-v2 .lx-v2-signup-copy { min-width:0; }
.lx-v2 .lx-v2-signup-copy h1 { font-size:clamp(1.6rem,3vw,2.4rem); line-height:1.2; margin-block:.4rem .75rem; overflow-wrap:anywhere; }
.lx-v2 .lx-v2-signup-copy > p:last-child { margin:0; color:var(--lx-muted); max-width:46rem; }
.lx-v2 .lx-v2-signup-kumi { display:block; width:9rem; height:auto; }
@media (max-width:39.99rem) { .lx-v2 .lx-v2-signup-kumi { width:5.5rem; } }
.lx-v2-auth .lx-v2-feedback { margin-bottom: 1.5rem; }
.lx-v2-auth-block { min-width: 0; margin: 0 0 1.5rem; padding: clamp(1rem, 3vw, 1.75rem); border: 1px solid #bdcec5; border-radius: 1rem; background: #f6f9f7; }
.lx-v2-auth-block legend { padding-inline: .4rem; font-weight: 700; font-size: 1.1rem; }
.lx-v2-auth-field { display: grid; grid-template-columns: minmax(0, 1fr); gap: .45rem; margin-block: 0 1.25rem; }
.lx-v2-auth-field > label, .lx-v2-auth-field > .lx-v2-auth-label { font-weight: 600; }
.lx-v2-auth-control { min-width: 0; }
.lx-v2-auth-gender .lx-v2-gender-select > label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.lx-v2-auth-input { min-width: 0; }
.lx-v2-auth-form input:not([type="checkbox"]):not([type="hidden"]), .lx-v2-auth-form select { display: block; width: 100%; min-width: 0; min-height: 3rem; border: 1px solid #bdcec5; border-radius: .6rem; padding: .65rem .8rem; font: inherit; color: #193b2e; background: #fff; }
.lx-v2-password-input { display: flex; align-items: stretch; gap: .5rem; }
.lx-v2-password-input input { flex: 1; }
.lx-v2-password-input button { flex: 0 0 auto; padding: .5rem .7rem; border: 1px solid #bdcec5; border-radius: .6rem; background: #fff; color: #193b2e; font: inherit; font-size: .875rem; cursor: pointer; }
.lx-v2-auth-error { color: #a42525; font-size: .9rem; margin: .4rem 0 0; overflow-wrap: anywhere; }
.lx-v2-auth-error:empty { display: none; }
.lx-v2-auth-form [aria-invalid="true"] { border-color: #a42525 !important; }
.lx-v2-auth-hint { color: var(--lx-muted); font-size: .875rem; margin: .4rem 0 0; }
.lx-v2-auth-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.lx-v2-auth-actions a { font-size: .9rem; }
.lx-v2-auth-switch { text-align: center; margin-top: 1.5rem; }
.lx-v2-auth-switch a { font-weight: 700; }
.lx-v2-auth-birthday { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr) minmax(0, 1fr); gap: .4rem; }
.lx-v2-auth-form .lx-v2-auth-birthday select { padding-inline: .35rem; }
.lx-v2-auth-consent { display: flex; align-items: flex-start; gap: .7rem; }
.lx-v2-auth-consent input { margin-top: .3rem; flex: 0 0 auto; }
.lx-v2-auth-consent label { min-width: 0; overflow-wrap: anywhere; }
.lx-v2-auth-progress { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0 0 1.5rem; padding: 0; list-style: none; }
.lx-v2-auth-progress li { display: flex; align-items: center; gap: .5rem; padding: .5rem .8rem; border: 1px solid #bdcec5; border-radius: .65rem; background: #f6f9f7; }
.lx-v2-auth-progress li[aria-current] { border-color: #197454; background: #e2f3ec; font-weight: 700; }
.lx-v2-auth-progress li > span { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; border-radius: 50%; background: #fff; }
.lx-v2-auth [hidden] { display: none !important; }
.lx-v2-auth :focus-visible { outline: 3px solid #3e67b1; outline-offset: 3px; }
.lx-v2-account-notice { margin-bottom: 1.5rem; padding: 1rem; border: 1px solid #ce9898; border-radius: .75rem; background: #fff1ef; color: #862c2c; }
.lx-v2 .lx-v2-account-danger { background: #ac2929; color: #fff; border-color: #ac2929; }
.lx-v2 .lx-v2-account-danger:hover { background: #862020; }
.lx-v2-account-success { border-color: #91b9a2; color: #196441; }
.lx-v2-account-links { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.lx-v2-account-page h1 { overflow-wrap: anywhere; }
.lx-v2 .lx-v2-account-unavailable .lx-v2-auth-heading { text-align:center; margin-block-end:.75rem; }
.lx-v2 .lx-v2-account-kumi { display:block; width:10rem; max-width:100%; height:auto; margin:1.5rem auto 1rem; }
.lx-v2 .lx-v2-account-unavailable .lx-v2-auth-block { border:0; background:transparent; padding:0 1rem; margin-block-end:0; text-align:center; }
.lx-v2 .lx-v2-account-unavailable .lx-v2-auth-block p { max-width:36rem; margin:0 auto; color:var(--lx-muted); }
.lx-v2 .lx-v2-account-unavailable .lx-v2-account-links { justify-content:center; }
.lx-v2 .lx-v2-account-signup-success .lx-v2-auth-heading { text-align:center; }
.lx-v2 .lx-v2-account-signup-success .lx-v2-feedback { text-align:center; }
.lx-v2 .lx-v2-account-signup-success .lx-v2-account-links { justify-content:center; }
@media (max-width:39.99rem) { .lx-v2 .lx-v2-account-kumi { width:8rem; } }
@media (min-width: 48rem) {
    .lx-v2-auth-field { grid-template-columns: minmax(10rem, 1fr) minmax(0, 2fr); gap: 1.5rem; }
    .lx-v2-auth-field > label, .lx-v2-auth-field > .lx-v2-auth-label { padding-block: .65rem; }
    .lx-v2-auth-birthday { max-width: 28rem; }
    .lx-v2-auth-actions { margin-inline-start: calc((100% - 1.5rem) / 3 + 1.5rem); }
}
