/* RTL (Right-to-Left) specific CSS overrides */

body {
    direction: rtl;
    text-align: right;
}

.navbar-nav {
    margin-right: auto;
    margin-left: 0;
}

.dropdown-menu {
    right: 0;
    left: auto;
    text-align: right;
}

.form-check-input {
    float: right;
    margin-left: 0.5em;
    margin-right: -1.5em;
}

.ml-auto {
    margin-right: auto !important;
    margin-left: 0 !important;
}

.mr-auto {
    margin-left: auto !important;
    margin-right: 0 !important;
}

.text-left {
    text-align: right !important;
}

.text-right {
    text-align: left !important;
}

.float-left {
    float: right !important;
}

.float-right {
    float: left !important;
}

.offset-1 {
    margin-right: 8.333333%;
    margin-left: 0;
}

.offset-2 {
    margin-right: 16.666667%;
    margin-left: 0;
}

.offset-3 {
    margin-right: 25%;
    margin-left: 0;
}

.offset-4 {
    margin-right: 33.333333%;
    margin-left: 0;
}

.star-rating {
    direction: ltr;
}

.list-unstyled {
    padding-right: 0;
}

.toast {
    right: 0;
    left: auto;
}

/* Bootstrap RTL fixes */
.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.input-group > .form-control,
.input-group > .custom-select,
.input-group > .custom-file {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    margin-bottom: 0;
}

.input-group-prepend {
    margin-left: -1px;
    margin-right: 0;
}

.input-group-append {
    margin-right: -1px;
    margin-left: 0;
}

.pagination {
    padding-right: 0;
}

.page-item:first-child .page-link {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.page-item:last-child .page-link {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.alert-dismissible {
    padding-right: 1.25rem;
    padding-left: 4rem;
}

.alert-dismissible .close {
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    padding: 0.75rem 1.25rem;
}

.modal-header .close {
    padding: 1rem;
    margin: -1rem auto -1rem -1rem;
}

.close {
    float: left;
}

.modal-footer > :not(:last-child) {
    margin-left: 0.25rem;
    margin-right: 0;
}

.dropdown-menu {
    right: 0;
    left: auto;
    text-align: right;
}

.custom-file-label {
    padding-right: 0.75rem;
    padding-left: 4rem;
}

.custom-file-label::after {
    left: 0;
    right: auto;
    border-right: 1px solid #ced4da;
    border-left: none;
    border-radius: 0.25rem 0 0 0.25rem;
}

/* Service card RTL customization */
.service-card {
    border-right: 5px solid transparent;
    border-left: none;
}
