/* Display-only /login and /register variant. Other guest/legal layouts stay unchanged. */
html.auth-page { font-size: 100%; }
.auth-clean { font-size: 1rem; line-height: 1.5; }
.auth-clean .auth-shell { min-height: 100svh; min-width: 0; }
.auth-clean .auth-panel { min-width: 0; padding: clamp(1.5rem, 4vw, 4rem); }
.auth-clean .auth-card { width: min(32rem, 100%); min-width: 0; overflow-wrap: anywhere; }
.auth-clean .auth-brand-copy h1 { line-height: 1.1; }
.auth-clean .auth-brand-copy p { font-size: 1rem; line-height: 1.65; color: #b9c1cf; }
.auth-clean .auth-proof { font-size: .9375rem; line-height: 1.5; color: #b9c1cf; }
.auth-clean .eyebrow { font-size: .875rem; line-height: 1.5; letter-spacing: .06em; }
.auth-clean .eyebrow-inverse { color: #8ea1ff; }
.auth-clean .platform-product { font-size: .875rem !important; }
.auth-clean .auth-heading { margin-bottom: 1.5rem; }
.auth-clean .auth-heading h2 { font-size: 1.875rem; line-height: 1.2; letter-spacing: -.035em; margin: .5rem 0 .75rem; }
.auth-clean .auth-heading p { font-size: 1rem; line-height: 1.5; color: #586171; margin-bottom: 0; }
.auth-clean .stack-form { gap: 1.125rem; }
.auth-clean .form-label { font-size: .9375rem; line-height: 1.5; font-weight: 600; margin-bottom: .375rem; }
.auth-clean .form-control, .auth-clean .form-select { min-width: 0; max-width: 100%; font-size: 1rem; line-height: 1.5; min-height: 3rem; padding: .6875rem .8125rem; }
.auth-clean .hp-field { visibility: hidden; pointer-events: none; }
.auth-clean .form-control::placeholder { color: #626b78; opacity: 1; }
.auth-clean .form-text, .auth-clean .muted-link, .auth-clean .auth-consent,
.auth-clean .registration-consent, .auth-clean .password-match { font-size: .875rem; line-height: 1.5; color: #586171; }
.auth-clean .form-text { margin-top: .5rem; }
.auth-clean .label-row { gap: .75rem; align-items: baseline; flex-wrap: wrap; }
.auth-clean .muted-link { text-underline-offset: .2em; }
.auth-clean .btn { font-size: 1rem; line-height: 1.5; min-height: 3rem; padding: .6875rem 1rem; white-space: normal; }
.auth-clean .password-control .form-control { padding-right: 3rem; }
.auth-clean .password-toggle { width: 2.5rem; height: 2.5rem; }
.auth-clean .password-feedback .password-strength-heading,
.auth-clean .password-feedback .password-strength-detail,
.auth-clean .password-feedback .password-requirements-title,
.auth-clean .password-feedback .password-requirements li { font-size: .875rem; line-height: 1.5; }
.auth-clean .password-feedback { padding: .875rem; }
.auth-clean .password-feedback .password-strength-heading span,
.auth-clean .password-feedback .password-strength-detail,
.auth-clean .password-feedback .password-requirements li { color: #586171; }
.auth-clean .password-feedback .password-requirements li.complete { color: #087f5b; }
.auth-clean .password-match[data-state="match"] { color: #087f5b; }
.auth-clean .password-match[data-state="mismatch"] { color: #c92a2a; }
.auth-clean .auth-switch { font-size: 1rem; line-height: 1.5; color: #586171; margin: 1.5rem 0 0; }
.auth-clean .auth-consent { margin: 0; }
.auth-clean .auth-consent a, .auth-clean .registration-consent a { text-underline-offset: .2em; }
.auth-clean .registration-plan-summary { margin: 0 0 1.5rem; }
.auth-clean .registration-plan-summary > div { min-width: 0; padding: .875rem 1rem; }
.auth-clean .registration-plan-summary span { font-size: .875rem; line-height: 1.5; color: #586171; letter-spacing: .04em; }
.auth-clean .registration-plan-summary strong { font-size: 1rem; line-height: 1.5; }
.auth-clean .registration-interval { flex-wrap: wrap; gap: .5rem 1.25rem; }
.auth-clean .registration-interval label { font-size: .9375rem; line-height: 1.5; }
.auth-clean .registration-interval { min-width: 0; }
.auth-clean .registration-interval[hidden] { display: none; }
.auth-clean .verification-code { font-size: 1.5rem; }
.auth-clean .auth-security-note { display: grid; gap: .375rem; padding: 1rem; margin-top: 1.25rem; background: #f7f8fa; border: 1px solid #e4e7ec; border-radius: .5rem; font-size: .875rem; line-height: 1.5; color: #586171; }
.auth-clean .auth-security-note strong { color: #111318; }
.auth-clean .alert { font-size: .875rem; line-height: 1.5; overflow-wrap: anywhere; }
.auth-clean .auth-footer { margin-top: 1.75rem; padding-top: 1.25rem; border-top: 1px solid #e4e7ec; }
.auth-clean .auth-footer-links { display: flex; flex-wrap: wrap; justify-content: center; row-gap: .5rem; font-size: .875rem; line-height: 1.5; color: #586171; }
.auth-clean .auth-footer-links a { white-space: nowrap; text-decoration: none; }
.auth-clean .auth-footer-links a + a::before { content: "·"; display: inline-block; margin-inline: .5rem; }
.auth-clean .auth-footer-links a:hover { text-decoration: underline; text-underline-offset: .2em; }
.auth-clean .kdp-cookie-entry { font-size: .875rem; line-height: 1.5; color: #586171; }
.auth-clean :focus-visible { outline: 2px solid #375dfb; outline-offset: 3px; }
/* Consent UI remains unchanged in function; only raise undersized text here. */
.auth-clean #kdp-consent { font-size: .875rem; }
.auth-clean #kdp-consent :is(.cc-note, .cc-policies, .cc-category p, .cc-purpose-summary p, dl) { font-size: .875rem; }
.auth-clean #kdp-consent .cc-button { font-size: 1rem; }
.auth-clean #kdp-consent .cc-floating { font-size: 1rem !important; }
@media (max-width: 780px) {
  .auth-clean .auth-brand { display: none; }
  .auth-clean .auth-panel { padding: 2rem 1.25rem; }
  .auth-clean .auth-heading h2 { font-size: 1.5625rem; }
}
@media (max-width: 520px) {
  .auth-clean .registration-plan-summary, .auth-clean .form-grid-two { grid-template-columns: minmax(0, 1fr); }
  .auth-clean .registration-interval { flex-direction: column; }
  .auth-clean .password-requirements { grid-template-columns: minmax(0, 1fr); }
}
