/*
 * PBFA — RTL for Profile Builder front-end forms.
 * Scoped to body.pbfa-rtl-enabled (set by the layer) so it never leaks into the theme.
 * :is(#…-1-wrapper, …) keeps ID-level specificity to beat the form-design sheets.
 */

/* ---------------------------------------------------------------- base */
.pbfa-rtl-enabled .wppb-user-forms,
.pbfa-rtl-enabled #wppb-login-wrap,
.pbfa-rtl-enabled .wppb-userlisting-container,
.pbfa-rtl-enabled #wppb-recover-password-container,
.pbfa-rtl-enabled .wppb-form-style-wrapper,
.pbfa-rtl-enabled [id^="wppb-form-style-"][id$="-wrapper"] {
    direction: rtl;
    text-align: right;
}
.pbfa-rtl-enabled .wppb-user-forms ul,
.pbfa-rtl-enabled .wppb-user-forms li { padding-right: 0; margin-right: 0; }
.pbfa-rtl-enabled .wppb-user-forms input[type="checkbox"],
.pbfa-rtl-enabled .wppb-user-forms input[type="radio"] { margin-left: 6px; margin-right: 0; }
.pbfa-rtl-enabled .wppb-description-delimiter { text-align: right; }
.pbfa-rtl-enabled .wppb-repeater { direction: rtl; }

/* Values that are always read left-to-right */
.pbfa-rtl-enabled .wppb-user-forms input[type="email"],
.pbfa-rtl-enabled .wppb-user-forms input[type="url"],
.pbfa-rtl-enabled .wppb-user-forms input[type="tel"],
.pbfa-rtl-enabled .wppb-user-forms input[name="email"],
.pbfa-rtl-enabled .wppb-user-forms input[name="website"],
.pbfa-rtl-enabled .wppb-user-forms input#wppb_user_login,
.pbfa-rtl-enabled .wppb-user-forms input[name="username"] {
    direction: ltr;
    text-align: right;
}
.pbfa-rtl-enabled .wppb-user-forms input[type="password"] { direction: ltr; text-align: right; }

/* Default design: show-password eye goes to the left */
.pbfa-rtl-enabled .wppb-user-forms .wppb-password-field-container { position: relative; }
.pbfa-rtl-enabled .wppb-user-forms button.wppb-toggle-pw { right: auto !important; left: 8px !important; }
.pbfa-rtl-enabled .wppb-user-forms .wppb-password-field-container input[type="password"],
.pbfa-rtl-enabled .wppb-user-forms .wppb-password-field-container input[type="text"] { padding-left: 40px; }

/* Login / recover links */
.pbfa-rtl-enabled #wppb-login-wrap .login-remember,
.pbfa-rtl-enabled #wppb-login-wrap .login-register-lost-password,
.pbfa-rtl-enabled #wppb-login-wrap .login-submit { text-align: right; }
.pbfa-rtl-enabled #wppb-login-wrap .login-remember input { margin: 0 0 0 6px; }

/* Messages */
.pbfa-rtl-enabled .wppb-error,
.pbfa-rtl-enabled .wppb-success,
.pbfa-rtl-enabled .wppb-warning,
.pbfa-rtl-enabled .wppb-alert { direction: rtl; text-align: right; }
.pbfa-rtl-enabled .wppb-alert-title { margin-left: 0; margin-right: -40px; }

/* Password strength meter */
.pbfa-rtl-enabled #pass-strength-result { direction: rtl; }

/* Select2 single + multiple */
.pbfa-rtl-enabled .wppb-user-forms .select2-container,
.pbfa-rtl-enabled .wppb-userlisting-container .select2-container { direction: rtl; text-align: right; }
.pbfa-rtl-enabled .select2-container .select2-selection { text-align: right; }
.pbfa-rtl-enabled .select2-container--default .select2-selection--single .select2-selection__rendered { padding-left: 20px; padding-right: 8px; }
.pbfa-rtl-enabled .select2-container--default .select2-selection--single .select2-selection__arrow { left: 1px; right: auto; }
.pbfa-rtl-enabled .select2-container--default .select2-selection--single .select2-selection__clear { float: left; }
.pbfa-rtl-enabled .select2-container--default .select2-selection--multiple .select2-selection__choice { float: right; margin-left: 5px; margin-right: 0; }
.pbfa-rtl-enabled .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { margin-left: 2px; margin-right: 0; }
.pbfa-rtl-enabled .select2-container--default .select2-search--inline .select2-search__field { text-align: right; }
.pbfa-rtl-enabled .select2-dropdown { direction: rtl; text-align: right; }
.pbfa-rtl-enabled .select2-results__option { text-align: right; }

/* International telephone input: the number itself stays LTR, dropdown aligns RTL */
.pbfa-rtl-enabled .wppb-user-forms .iti { direction: ltr; width: 100%; }
.pbfa-rtl-enabled .wppb-user-forms .iti input[type="tel"] { text-align: left; }
.pbfa-rtl-enabled .iti__dropdown-content,
.pbfa-rtl-enabled .iti__country-list { direction: rtl; text-align: right; }

/* Upload / avatar (default design) */
.pbfa-rtl-enabled .wppb-user-forms .wppb-upload .upload-field-details,
.pbfa-rtl-enabled .wppb-user-forms .wppb-avatar .upload-field-details { text-align: right; }
.pbfa-rtl-enabled .wppb-user-forms .upload-field-details img,
.pbfa-rtl-enabled .wppb-user-forms .file-thumb { float: right; margin-left: 10px; margin-right: 0; }

/* Datepicker (Gregorian, jQuery UI) when kept for excluded fields */
.pbfa-rtl-enabled .ui-datepicker { direction: rtl; }
.pbfa-rtl-enabled .ui-datepicker .ui-datepicker-prev { right: 2px; left: auto; }
.pbfa-rtl-enabled .ui-datepicker .ui-datepicker-next { left: 2px; right: auto; }

/* Timepicker selects */
.pbfa-rtl-enabled .wppb-timepicker select { direction: ltr; }

/* GDPR / terms checkbox rows */
.pbfa-rtl-enabled .wppb-gdpr-checkbox label,
.pbfa-rtl-enabled .wppb-checkbox-terms-and-conditions label { text-align: right; }

/* ------------------------------------------- form designs (style 1/2/3) */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) {
    direction: rtl;
    text-align: right;
}
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) li.wppb-form-field { margin-right: 0; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-description-delimiter:not(.wppb-heading .wppb-description-delimiter) { margin-left: 0; margin-right: 5px; }

/* Show-password eye */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) button.wppb-toggle-pw { right: auto !important; left: 10px !important; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-password-field-container input { padding-left: 44px !important; }

/* Labels placed inside the field (placeholder-labels) */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .label-inside label:not(.wppb-epaa-switch):not(.wppb-field-visibility-settings label),
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-form-select-field.label-inside label:not(.wppb-field-visibility-settings label):not(.wppb-epaa-switch),
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .pms-invite-code-name-field.label-inside label,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-subscription-plans.label-inside .pms-group-description-field label,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-map label {
    left: auto;
    right: 0;
    text-align: right;
}
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .label-inside input,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .label-inside select,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .label-inside textarea { text-align: right; }

/* Checkboxes / radios */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-checkboxes input[type="checkbox"],
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-radios input[type="radio"] { margin-right: 0 !important; margin-left: 10px !important; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-checkboxes li,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-radios li { text-align: right; }

/* Avatar / upload */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-avatar > label:after { left: auto; right: 0; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-avatar .wppb_upload_button { margin-left: 0; margin-right: 100px; }
.pbfa-rtl-enabled #wppb-form-style-3-wrapper .wppb-avatar:not(.file-selected) > label { padding-left: 0; padding-right: 100px; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-upload div.file-thumb,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-avatar div.file-thumb { margin-right: 0; margin-left: 15px; }

/* Multi-step form buttons */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) input[type="button"].wppb-msf-prev { margin-right: 0; margin-left: auto; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) input[type="button"].wppb-msf-next { margin-left: 0; margin-right: auto; }

/* Repeater add button (centered → keep centered from the right) */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-repeater .wppb-rpf-add { left: auto; right: calc(50% - 15px); }

/* Select2 multiple / timepicker / BuddyPress visibility */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-select2-multiple .select2-container { margin-right: 0; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-timepicker label:not(.wppb-field-visibility-settings label) { margin-right: 0; margin-left: 15px; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb_bdp_visibility_settings,
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb_bdp_visibility_settings .wppb-field-visibility-settings-toggle { text-align: right; }

/* Paid Member Subscriptions blocks inside PB forms */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-subscription-plans .pms-subscription-plan span.pms-subscription-plan-name { margin-right: 0; margin-left: 10px; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .pms-price-breakdown__holder .pms-price-breakdown table tbody tr td.pms-value { text-align: left; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) #pms-register-form.pms-ec-register-form .pms-subscription-plan-description { margin-left: 0; margin-right: 5px; }

/* Two-factor / edit-profile select user */
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-two-factor-authentication input[type=button] { margin-right: 0; margin-left: 5px; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) #select_user_to_edit_form .wppb-form-field label { left: auto; right: 0; }
.pbfa-rtl-enabled :is(#wppb-form-style-1-wrapper, #wppb-form-style-2-wrapper, #wppb-form-style-3-wrapper) .wppb-form-field label.wppb-epaa-switch { left: auto; right: 0; }
.pbfa-rtl-enabled #wppb-form-style-1-wrapper #wppb-recover-password { margin-left: 0; margin-right: 5px; }
.pbfa-rtl-enabled #wppb-form-style-3-wrapper .wppb-alert-title .wppb-alert-icon-container { left: auto; right: 20px; }

/* ----------------------------------------------------------- user listing */
.pbfa-rtl-enabled .wppb-userlisting-container table,
.pbfa-rtl-enabled .wppb-table { direction: rtl; }
.pbfa-rtl-enabled .wppb-userlisting-container th,
.pbfa-rtl-enabled .wppb-userlisting-container td,
.pbfa-rtl-enabled .wppb-table th,
.pbfa-rtl-enabled .wppb-table td { text-align: right; }
.pbfa-rtl-enabled .wppb-userlisting-container .wppb-search-users-wrap,
.pbfa-rtl-enabled .wppb-userlisting-container .wppb-ul-search,
.pbfa-rtl-enabled .wppb-userlisting-container .wppb-faceted-list { text-align: right; }
.pbfa-rtl-enabled .wppb-userlisting-container .wppb-faceted-list li,
.pbfa-rtl-enabled .wppb-faceted-list .wppb-facet-checkbox input { margin-left: 6px; margin-right: 0; }
.pbfa-rtl-enabled .wppb-userlisting-container .userlisting_pagination,
.pbfa-rtl-enabled .wppb-userlisting-container .wppb-pagination { direction: rtl; text-align: center; }
.pbfa-rtl-enabled .wppb-userlisting-container .wppb-avatar-image,
.pbfa-rtl-enabled .wppb-userlisting-container .avatar { margin-left: 10px; margin-right: 0; }
.pbfa-rtl-enabled .wppb-ul-theme-template :is(.wppb-ul-details, .wppb-ul-user-info, .wppb-ul-meta) { text-align: right; }

/* ---------------------------------------------- Jalali datepicker fields */
.pbfa-rtl-enabled .wppb-persian-datepicker input.pbfa-jalali-input,
.pbfa-rtl-enabled .wppb-datepicker input.pbfa-jalali-input { text-align: right; }
.wppb-persian-datepicker input[type="text"] { width: 100%; box-sizing: border-box; }

/* Iranian identifiers are typed left-to-right (digits / IR…), aligned right like the rest of the form. */
.pbfa-rtl-enabled .wppb-user-forms input[name="national_code"],
.pbfa-rtl-enabled .wppb-user-forms input[name="postal_code"],
.pbfa-rtl-enabled .wppb-user-forms input[name="card_number"],
.pbfa-rtl-enabled .wppb-user-forms input[name="iban"],
.pbfa-rtl-enabled .wppb-user-forms input[name="mobile"] {
    direction: ltr;
    text-align: right;
    unicode-bidi: plaintext;
    letter-spacing: .5px;
}
