/* Merchant content and working controls layered on the supplied login design. */
.clbp-lftpart-brand-logo { flex-shrink: 0; overflow: hidden; }
.clbp-lftpart-brand-logo img { width: 100%; height: 100%; object-fit: contain; }
.clbp-lftpart-brand-name, .portal-brand-caption, .portal-brand-description { overflow-wrap: anywhere; }
.portal-brand-caption { margin:10px 0 0 0; font-weight: 600;text-align:start; }
.portal-brand-description { margin: 0 0 24px; color: #667085; font-size: 14px; }
.portal-support-details { display: none; margin-top: 12px; font-size: 13px; color: #667085; }
.portal-support-details:target { display: block; }
.clbp-lftpart-password-toggle:focus-visible { outline: 2px solid #f04f29; outline-offset: 3px; }

/* Keep the longer registration form readable at desktop and phone widths. */
.portal-register .clbp-lftpart-login-panel { max-width: 520px; width: 100%; }
.portal-register .login-lft .inner_container_wrap { padding-top: 32px; padding-bottom: 32px; }
.portal-register-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.portal-register-fields .clbp-lftpart-form-group { margin-bottom: 0; min-width: 0; }
.portal-password-help { color: #667085; font-size: 12px; line-height: 1.6; margin: 12px 0 16px; }
@media (max-width: 575px) {
    .portal-register-fields { grid-template-columns: minmax(0, 1fr); }
}

/* Keep typed passwords clear of the show/hide button. */
.clbp-lftpart-input-wrapper:has(.clbp-lftpart-password-toggle) .clbp-lftpart-form-input { padding-right: 3rem; }
/* Ellipsis only while the password is shown; a masked password never gets one (UNIN-16439). */
.clbp-lftpart-input-wrapper:has(.clbp-lftpart-password-toggle) .clbp-lftpart-form-input[type="text"] { text-overflow: ellipsis; }

/* Verification code field has no leading icon, so it needs no icon gap. */
.clbp-lftpart-form-input.portal-otp-input { padding-left: 0.875rem !important; }
.portal-resend-button { padding: 0; border: 0; background: transparent; color: #f04f29; font-weight: 600; text-decoration: underline; }
.portal-resend-button:disabled { color: #a9afb7; cursor: not-allowed; text-decoration: none; }
.portal-resend-timer { margin: 8px 0 0; color: #667085; font-size: 14px; }
