.customer-auth-modal .modal-dialog { max-width: 440px; margin: 1.75rem auto; }
.customer-auth-modal .modal-content { border-radius: 16px; position: relative; background-color: var(--customer-bg-color); color: var(--text-color); }
.customer-auth-modal .customer-modal-close { position: absolute; top: 16px; right: 16px; z-index: 1060; cursor: pointer; background-color: var(--theme-color-f1f5f9); border-radius: 50%; width: 32px; height: 32px; padding: 0; display: inline-flex; align-items: center; justify-content: center; opacity: .8; transition: opacity .2s ease, background-color .2s ease; }
.customer-auth-modal .customer-modal-close:hover { opacity: 1; background-color: var(--theme-color-e2e8f0); }
.customer-auth-modal .auth-avatar-circle { width: 56px; height: 56px; border-radius: 50%; background: var(--customer-surface-color); color: var(--primary-color); display: inline-flex; align-items: center; justify-content: center; }
.customer-auth-modal .btn-social { min-height: 44px; font-size: 14px; transition: transform .15s ease, box-shadow .15s ease; border: 1px solid var(--border-color); text-decoration: none; }
.customer-auth-modal .btn-social:hover { transform: translateY(-1px); box-shadow: 0 4px 12px color-mix(in srgb, var(--text-color) 8%, transparent) !important; }
.customer-auth-modal .btn-google { background-color: var(--theme-color-ffffff); color: var(--theme-color-3c4043); }
.customer-auth-modal .btn-google:hover { background-color: var(--customer-surface-color); color: var(--theme-color-202124); }
.customer-auth-modal .btn-facebook { background-color: var(--theme-color-1877f2); border-color: var(--theme-color-1877f2); color: var(--theme-color-ffffff); }
.customer-auth-modal .btn-facebook:hover { background-color: var(--theme-color-166fe5); border-color: var(--theme-color-166fe5); color: var(--theme-color-ffffff); }
.customer-auth-modal .legal-notice { font-size: 11px; color: var(--muted-color); }
.customer-auth-modal .google-blue { fill: var(--theme-color-4285f4); }
.customer-auth-modal .google-green { fill: var(--theme-color-34a853); }
.customer-auth-modal .google-yellow { fill: var(--theme-color-fbbc05); }
.customer-auth-modal .google-red { fill: var(--theme-color-ea4335); }
.customer-auth-modal .facebook-icon { fill: var(--theme-color-ffffff); }

/* Tabs Navigation */
.customer-auth-modal .auth-nav-pills { background-color: var(--customer-surface-color); padding: 4px; border-radius: 12px; }
.customer-auth-modal .auth-nav-pills .nav-link { color: var(--muted-color); font-size: 14px; font-weight: 600; padding: 8px 16px; border-radius: 8px; border: none; transition: all .2s ease; }
.customer-auth-modal .auth-nav-pills .nav-link:hover { color: var(--text-color); }
.customer-auth-modal .auth-nav-pills .nav-link.active { background-color: var(--theme-color-ffffff); color: var(--primary-color); box-shadow: 0 2px 6px color-mix(in srgb, var(--text-color) 6%, transparent); }

/* Form Fields */
.customer-auth-modal .auth-form-label { font-size: 13px; font-weight: 600; color: var(--text-color); margin-bottom: 6px; text-align: start; display: block; }
.customer-auth-modal .form-control { border-radius: 8px; font-size: 14px; min-height: 42px; border-color: var(--border-color); background-color: var(--theme-color-ffffff); color: var(--text-color); }
.customer-auth-modal .form-control:focus { border-color: var(--primary-color); box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--primary-color) 20%, transparent); }
.customer-auth-modal .auth-input-group .form-control { border-top-right-radius: 0; border-bottom-right-radius: 0; border-right: none; }
.customer-auth-modal .auth-password-toggle { border-color: var(--border-color); background-color: var(--theme-color-ffffff); color: var(--muted-color); border-radius: 0 8px 8px 0; border-left: none; }
.customer-auth-modal .auth-password-toggle:hover { color: var(--text-color); background-color: var(--customer-surface-color); }
.customer-auth-modal .auth-input-group.has-validation > .form-control:focus + .auth-password-toggle { border-color: var(--primary-color); }
.customer-auth-modal .auth-input-group.has-validation > .form-control.is-invalid + .auth-password-toggle { border-color: var(--bs-danger); }

/* Divider */
.customer-auth-modal .auth-divider { display: flex; align-items: center; text-align: center; margin: 18px 0; color: var(--muted-color); font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; }
.customer-auth-modal .auth-divider::before, .customer-auth-modal .auth-divider::after { content: ''; flex: 1; border-bottom: 1px solid var(--border-color); }
.customer-auth-modal .auth-divider:not(:empty)::before { margin-right: 12px; }
.customer-auth-modal .auth-divider:not(:empty)::after { margin-left: 12px; }

/* Submit Button & Switch Link */
.customer-auth-modal .btn-auth-submit { min-height: 44px; font-size: 14px; font-weight: 600; border-radius: 8px; background-color: var(--customer-btn-color); border-color: var(--customer-btn-color); color: var(--on-button-color); }
.customer-auth-modal .btn-auth-submit:hover, .customer-auth-modal .btn-auth-submit:focus { background-color: var(--customer-btn-hover-color); border-color: var(--customer-btn-hover-color); color: var(--on-button-hover-color); }
.customer-auth-modal .auth-switch-prompt { font-size: 13px; color: var(--muted-color); }
.customer-auth-modal .auth-switch-link { color: var(--customer-link-color); font-weight: 600; text-decoration: none; cursor: pointer; }
.customer-auth-modal .auth-switch-link:hover { text-decoration: underline; color: var(--customer-link-hover-color); }
.customer-auth-modal .auth-error-alert { font-size: 13px; border-radius: 8px; text-align: start; }

@media (max-width: 575.98px) {
    .customer-auth-modal .modal-dialog { width: calc(100% - 24px); margin: 12px auto; }
    .customer-auth-modal .modal-body { padding: 20px 16px !important; }
}
