:root {
    --spr-blue-950: #102444;
    --spr-blue-900: #173968;
    --spr-blue-800: #214f8f;
    --spr-blue-700: #2f6dcc;
    --spr-blue-500: #4d91f2;
    --spr-blue-100: #eaf3ff;
    --spr-cyan: #55c7e8;
    --spr-ink: #12213a;
    --spr-muted: #66758d;
    --spr-line: #dce7f4;
    --spr-card: #ffffff;
    --spr-page: #f3f7fc;
    --spr-danger: #ff5c5c;
    --spr-shadow: 0 28px 70px rgba(23, 57, 104, .16);
}

.salehly-provider-register,
.salehly-provider-register * {
    box-sizing: border-box;
}

.salehly-provider-register {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    padding: clamp(20px, 3vw, 46px);
    background:
        radial-gradient(circle at 8% 9%, rgba(77, 145, 242, .16), transparent 27%),
        radial-gradient(circle at 93% 90%, rgba(85, 199, 232, .13), transparent 24%),
        linear-gradient(145deg, #edf4fd 0%, #f8fbff 53%, #eef5fc 100%);
    color: var(--spr-ink);
    font-family: inherit;
}

.salehly-provider-register__ambient {
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .42;
    background-image:
        linear-gradient(rgba(38, 88, 156, .045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(38, 88, 156, .045) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(to bottom, #000, transparent 92%);
}

.salehly-provider-register__shell {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(560px, 1.05fr);
    width: min(1460px, 100%);
    min-height: calc(100vh - clamp(40px, 6vw, 92px));
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 34px;
    background: rgba(255, 255, 255, .78);
    box-shadow: var(--spr-shadow);
    backdrop-filter: blur(22px);
}

.salehly-provider-register__intro {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: clamp(34px, 5vw, 72px);
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 16% 12%, rgba(129, 195, 255, .31), transparent 28%),
        linear-gradient(145deg, var(--spr-blue-950), var(--spr-blue-800) 48%, var(--spr-blue-700));
}

.salehly-provider-register__intro::before,
.salehly-provider-register__intro::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 50%;
    pointer-events: none;
}
.salehly-provider-register__intro::before {
    width: 420px; height: 420px;
    inset-inline-start: -210px;
    top: -180px;
}
.salehly-provider-register__intro::after {
    width: 280px; height: 280px;
    inset-inline-end: -130px;
    bottom: -120px;
}

.salehly-provider-register__brand {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    width: max-content;
    color: #fff !important;
    font-size: 1.15rem;
    font-weight: 900;
    text-decoration: none !important;
}
.salehly-provider-register__brand-icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 15px;
    background: rgba(255, 255, 255, .13);
    box-shadow: inset 0 1px rgba(255, 255, 255, .24);
}
.salehly-provider-register__brand-icon svg { width: 27px; height: 27px; }

.salehly-provider-register__intro-copy {
    position: relative;
    z-index: 2;
    max-width: 650px;
    margin-top: clamp(48px, 8vh, 92px);
}
.salehly-provider-register__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(255, 255, 255, .1);
    color: #e4f2ff;
    font-size: .82rem;
    font-weight: 800;
}
.salehly-provider-register__intro h1 {
    max-width: 620px;
    margin: 22px 0 14px;
    color: #fff !important;
    font-size: clamp(2.2rem, 4.2vw, 4.65rem);
    line-height: 1.08;
    letter-spacing: -.035em;
    font-weight: 950;
}
.salehly-provider-register__intro p {
    max-width: 590px;
    margin: 0 !important;
    color: rgba(239, 247, 255, .84) !important;
    font-size: clamp(.98rem, 1.2vw, 1.16rem);
    line-height: 1.95;
}

.salehly-provider-register__visual {
    position: relative;
    z-index: 1;
    width: min(620px, 100%);
    margin: auto auto 8px;
}
.salehly-provider-register__visual svg { display: block; width: 100%; height: auto; }
.spr-orbit--one { animation: spr-spin 24s linear infinite; transform-origin: 320px 200px; }
.spr-orbit--two { animation: spr-spin-reverse 18s linear infinite; transform-origin: 320px 200px; }
.spr-node { animation: spr-float 4.8s ease-in-out infinite; }
.spr-node--two { animation-delay: -.8s; }
.spr-node--three { animation-delay: -1.6s; }
.spr-node--four { animation-delay: -2.4s; }

.salehly-provider-register__benefits {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
}
.salehly-provider-register__benefits li {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 54px;
    padding: 11px 12px;
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 16px;
    background: rgba(255, 255, 255, .09);
    color: #f3f8ff;
    font-size: .78rem;
    font-weight: 750;
}
.salehly-provider-register__benefits li span {
    display: grid;
    place-items: center;
    flex: 0 0 25px;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .16);
    color: #bfe9ff;
}

.salehly-provider-register__form-side {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    padding: clamp(24px, 4vw, 58px);
    background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(246,250,255,.96));
}
.salehly-provider-register__card {
    width: min(760px, 100%);
    padding: clamp(25px, 3vw, 44px);
    border: 1px solid rgba(210, 225, 242, .92);
    border-radius: 28px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 22px 56px rgba(28, 64, 113, .12);
}
.salehly-provider-register__card-heading {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 28px;
}
.salehly-provider-register__card-icon {
    display: grid;
    place-items: center;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border-radius: 17px;
    color: #fff;
    background: linear-gradient(145deg, var(--spr-blue-500), var(--spr-blue-700));
    box-shadow: 0 12px 25px rgba(47, 109, 204, .28);
}
.salehly-provider-register__card-icon svg { width: 27px; height: 27px; }
.salehly-provider-register__card-heading h2 {
    margin: 0 0 6px;
    color: var(--spr-ink) !important;
    font-size: clamp(1.65rem, 2vw, 2.15rem);
    font-weight: 950;
}
.salehly-provider-register__card-heading p {
    margin: 0 !important;
    color: var(--spr-muted) !important;
    line-height: 1.75;
    font-size: .9rem;
}
.salehly-provider-register__alert {
    margin-bottom: 20px;
    padding: 13px 15px;
    border: 1px solid rgba(255, 92, 92, .3);
    border-radius: 14px;
    background: #fff0f0;
    color: #9b2f2f;
    font-size: .88rem;
    font-weight: 750;
}

#providerregisterForm {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 19px 16px;
}
.salehly-provider-register__section-label {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 6px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e7eef7;
    color: var(--spr-ink);
    font-size: 1rem;
    font-weight: 900;
}
.salehly-provider-register__section-label::before {
    content: "";
    width: 7px;
    height: 24px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--spr-cyan), var(--spr-blue-700));
}
.spr-field { min-width: 0; margin: 0 !important; }
.spr-field--wide { grid-column: 1 / -1; }
.spr-field > label {
    display: block;
    margin: 0 0 8px;
    color: #2a3e5c;
    font-size: .86rem;
    font-weight: 850;
}

.salehly-provider-register .form-control,
.salehly-provider-register .form-select {
    width: 100%;
    min-height: 54px;
    padding: 13px 15px;
    border: 1.5px solid var(--spr-line) !important;
    border-radius: 15px !important;
    outline: 0;
    background: #fff !important;
    color: #172945 !important;
    box-shadow: 0 8px 20px rgba(43, 77, 124, .04) !important;
    font-size: .94rem;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.salehly-provider-register .form-control::placeholder { color: #9aa7b8; opacity: 1; }
.salehly-provider-register .form-control:focus,
.salehly-provider-register .form-select:focus {
    border-color: var(--spr-blue-500) !important;
    box-shadow: 0 0 0 4px rgba(77, 145, 242, .13) !important;
}

.spr-password-wrap {
    position: relative;
    display: flex;
    align-items: stretch;
}
.spr-password-wrap .form-control { padding-inline-end: 58px; }
.spr-password-toggle {
    position: absolute;
    z-index: 3;
    inset-inline-end: 7px;
    top: 7px;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 11px;
    background: #edf4fd;
    color: #5f6f86;
    cursor: pointer;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}
.spr-password-toggle:hover { color: var(--spr-blue-700); background: #e1edfd; transform: translateY(-1px); }

.salehly-provider-register__meter {
    display: flex;
    gap: 5px;
    margin-top: 9px;
}
.salehly-provider-register__meter span {
    flex: 1;
    height: 5px;
    border-radius: 999px;
    background: #e4ebf4;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s cubic-bezier(.34, 1.56, .64, 1), background .25s ease;
}
[dir="rtl"] .salehly-provider-register__meter span { transform-origin: right; }
.salehly-provider-register__meter[data-score="1"] span:nth-child(-n+1),
.salehly-provider-register__meter[data-score="2"] span:nth-child(-n+2),
.salehly-provider-register__meter[data-score="3"] span:nth-child(-n+3),
.salehly-provider-register__meter[data-score="4"] span { transform: scaleX(1); }
.salehly-provider-register__meter[data-score="1"] span { background: #ff7b7b; }
.salehly-provider-register__meter[data-score="2"] span { background: #f4b949; }
.salehly-provider-register__meter[data-score="3"] span { background: #55bce4; }
.salehly-provider-register__meter[data-score="4"] span { background: #35b974; }
.salehly-provider-register__hint {
    display: block;
    margin-top: 7px;
    color: #7d8ba0;
    font-size: .72rem;
    line-height: 1.55;
}
.help-block.with-errors {
    display: block;
    min-height: 17px;
    margin-top: 6px;
    font-size: .75rem;
    font-weight: 700;
}

.spr-field.is-error .form-control,
.spr-field.is-error .form-select,
.spr-field.has-error .form-control,
.spr-field.has-error .form-select {
    border-color: var(--spr-danger) !important;
    box-shadow: 0 0 0 4px rgba(255, 92, 92, .1) !important;
    animation: spr-shake-x .45s cubic-bezier(.36,.07,.19,.97) both;
}

.salehly-provider-register .select2-container { width: 100% !important; }
.salehly-provider-register .select2-container .select2-selection--single {
    display: flex !important;
    align-items: center !important;
    min-height: 54px !important;
    height: 54px !important;
    padding: 0 15px !important;
    border: 1.5px solid var(--spr-line) !important;
    border-radius: 15px !important;
    background: #fff !important;
    color: #172945 !important;
    box-shadow: 0 8px 20px rgba(43, 77, 124, .04) !important;
}
.salehly-provider-register .select2-selection__rendered {
    width: 100%;
    padding: 0 !important;
    color: #172945 !important;
    line-height: 1.4 !important;
}
.salehly-provider-register .select2-selection__arrow {
    top: 50% !important;
    inset-inline-end: 12px !important;
    transform: translateY(-50%);
}

#salehly-provider-register-submit {
    position: relative;
    min-height: 56px;
    overflow: hidden;
    border: 0 !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, var(--spr-blue-500), var(--spr-blue-700) 55%, var(--spr-blue-900)) !important;
    color: #fff !important;
    font-size: .98rem;
    font-weight: 900;
    box-shadow: 0 16px 30px rgba(47, 109, 204, .26);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
#salehly-provider-register-submit:hover { transform: translateY(-2px); box-shadow: 0 20px 34px rgba(47, 109, 204, .31); filter: saturate(1.06); }
#salehly-provider-register-submit:active { transform: scale(.985); }
#salehly-provider-register-submit:disabled { opacity: .72; cursor: wait; }

.salehly-provider-register__signin {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 7px;
    margin-top: 22px;
    color: #65758b;
    font-size: .87rem;
}
.salehly-provider-register__signin a { color: var(--spr-blue-700) !important; font-weight: 900; text-decoration: none; }
.salehly-provider-register__signin a:hover { text-decoration: underline; }

[data-bs-theme="dark"] .salehly-provider-register {
    --spr-ink: #f1f6ff;
    --spr-muted: #aebbd0;
    --spr-line: #2c4162;
    --spr-card: #152642;
    --spr-page: #0d192b;
    background:
        radial-gradient(circle at 8% 9%, rgba(77,145,242,.13), transparent 28%),
        radial-gradient(circle at 92% 91%, rgba(85,199,232,.08), transparent 24%),
        linear-gradient(145deg, #0b1728, #101f35 55%, #0d192b);
}
[data-bs-theme="dark"] .salehly-provider-register__shell { border-color: rgba(87, 119, 163, .24); background: rgba(12, 25, 43, .88); }
[data-bs-theme="dark"] .salehly-provider-register__form-side { background: linear-gradient(180deg, rgba(14,28,48,.94), rgba(11,23,40,.98)); }
[data-bs-theme="dark"] .salehly-provider-register__card { border-color: #2a4163; background: rgba(21, 38, 66, .96); box-shadow: 0 26px 68px rgba(0,0,0,.32); }
[data-bs-theme="dark"] .salehly-provider-register__card-heading h2,
[data-bs-theme="dark"] .salehly-provider-register__section-label { color: #f2f7ff !important; }
[data-bs-theme="dark"] .salehly-provider-register__card-heading p { color: #aebbd0 !important; }
[data-bs-theme="dark"] .spr-field > label { color: #dce8fa; }
[data-bs-theme="dark"] .salehly-provider-register .form-control,
[data-bs-theme="dark"] .salehly-provider-register .form-select,
[data-bs-theme="dark"] .salehly-provider-register .select2-container .select2-selection--single {
    border-color: #314968 !important;
    background: #10213a !important;
    color: #eef5ff !important;
    box-shadow: none !important;
}
[data-bs-theme="dark"] .salehly-provider-register .form-control::placeholder { color: #7789a5; }
[data-bs-theme="dark"] .salehly-provider-register .select2-selection__rendered { color: #eef5ff !important; }
[data-bs-theme="dark"] .spr-password-toggle { background: #1d3454; color: #b6c5da; }
[data-bs-theme="dark"] .salehly-provider-register__signin { color: #adbad0; }
[data-bs-theme="dark"] .salehly-provider-register__section-label { border-bottom-color: #283e5d; }

@keyframes spr-shake-x {
    10%, 90% { transform: translateX(-1px); }
    20%, 80% { transform: translateX(2px); }
    30%, 50%, 70% { transform: translateX(-4px); }
    40%, 60% { transform: translateX(4px); }
}
@keyframes spr-spin { to { transform: rotate(1turn); } }
@keyframes spr-spin-reverse { to { transform: rotate(-1turn); } }
@keyframes spr-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@media (max-width: 1180px) {
    .salehly-provider-register__shell { grid-template-columns: minmax(0, .82fr) minmax(520px, 1.18fr); }
    .salehly-provider-register__intro { padding: 38px; }
    .salehly-provider-register__intro h1 { font-size: clamp(2rem, 4vw, 3.4rem); }
    .salehly-provider-register__benefits { grid-template-columns: 1fr; }
    .salehly-provider-register__visual { margin-top: 18px; }
}

@media (max-width: 960px) {
    .salehly-provider-register { padding: 18px; }
    .salehly-provider-register__shell { grid-template-columns: 1fr; min-height: auto; border-radius: 28px; }
    .salehly-provider-register__intro { min-height: auto; padding: 32px; }
    .salehly-provider-register__intro-copy { margin-top: 38px; }
    .salehly-provider-register__visual { width: min(500px, 100%); margin: 10px auto -5px; }
    .salehly-provider-register__benefits { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .salehly-provider-register__form-side { padding: 28px; }
}

@media (max-width: 700px) {
    .salehly-provider-register { padding: 0; }
    .salehly-provider-register__shell { border: 0; border-radius: 0; }
    .salehly-provider-register__intro { padding: 26px 20px 28px; }
    .salehly-provider-register__intro-copy { margin-top: 28px; }
    .salehly-provider-register__intro h1 { font-size: clamp(2rem, 10vw, 2.8rem); }
    .salehly-provider-register__visual { margin-top: 2px; }
    .salehly-provider-register__benefits { grid-template-columns: 1fr; }
    .salehly-provider-register__form-side { padding: 18px 12px 34px; }
    .salehly-provider-register__card { padding: 22px 16px; border-radius: 22px; }
    .salehly-provider-register__card-heading { gap: 12px; }
    #providerregisterForm { grid-template-columns: 1fr; gap: 16px; }
    .spr-field--wide,
    .salehly-provider-register__section-label { grid-column: auto; }
    .salehly-provider-register__section-label { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .salehly-provider-register *,
    .salehly-provider-register *::before,
    .salehly-provider-register *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

/* V1.2: Arabic copy, clear blue Select2 menu, and field-level error feedback. */
.salehly-provider-register__intro-copy {
    text-wrap: balance;
}

.salehly-provider-register__intro h1 {
    font-size: clamp(2.15rem, 3.7vw, 4rem);
    line-height: 1.16;
}

.salehly-provider-register .form-control.error,
.salehly-provider-register .form-select.error,
.salehly-provider-register .input.error,
.salehly-provider-register select.error + .select2-container .select2-selection--single {
    border-color: #ff5c5c !important;
    box-shadow: 0 0 0 4px rgba(255, 92, 92, .12) !important;
    animation: shake-x .45s cubic-bezier(.36,.07,.19,.97) both;
}

@keyframes shake-x {
    10%, 90% { transform: translateX(-1px); }
    20%, 80% { transform: translateX(2px); }
    30%, 50%, 70% { transform: translateX(-4px); }
    40%, 60% { transform: translateX(4px); }
}

/* Select2 appends its dropdown to body, so this dedicated class is intentionally global. */
.spr-register-select-dropdown {
    z-index: 10050 !important;
    overflow: hidden;
    border: 1px solid #b9d2f2 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 22px 50px rgba(22, 61, 113, .2) !important;
}

.spr-register-select-dropdown .select2-search--dropdown {
    padding: 10px !important;
    background: #f6f9fd !important;
    border-bottom: 1px solid #e1ebf6 !important;
}

.spr-register-select-dropdown .select2-search__field {
    min-height: 44px;
    padding: 9px 12px !important;
    border: 1px solid #cdddf0 !important;
    border-radius: 11px !important;
    outline: none !important;
    color: #172945 !important;
    background: #fff !important;
}

.spr-register-select-dropdown .select2-results__options {
    max-height: 260px !important;
    padding: 6px !important;
}

.spr-register-select-dropdown .select2-results__option {
    margin: 3px 0;
    padding: 11px 13px !important;
    border-radius: 10px;
    color: #344963 !important;
    background: transparent !important;
    font-weight: 750;
    transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.spr-register-select-dropdown .select2-results__option--highlighted[aria-selected],
.spr-register-select-dropdown .select2-results__option[aria-selected="true"],
.spr-register-select-dropdown .select2-results__option--selected {
    color: #fff !important;
    background: linear-gradient(135deg, #2f6dcc, #214f8f) !important;
}

.spr-register-select-dropdown .select2-results__option--highlighted[aria-selected] {
    transform: translateX(-2px);
}

[dir="ltr"] .spr-register-select-dropdown .select2-results__option--highlighted[aria-selected] {
    transform: translateX(2px);
}

[data-bs-theme="dark"] .spr-register-select-dropdown {
    border-color: #365273 !important;
    background: #12233c !important;
    box-shadow: 0 24px 54px rgba(0, 0, 0, .42) !important;
}

[data-bs-theme="dark"] .spr-register-select-dropdown .select2-search--dropdown {
    background: #0f2037 !important;
    border-bottom-color: #2b4363 !important;
}

[data-bs-theme="dark"] .spr-register-select-dropdown .select2-search__field {
    border-color: #365273 !important;
    color: #edf5ff !important;
    background: #0c1b30 !important;
}

[data-bs-theme="dark"] .spr-register-select-dropdown .select2-results__option {
    color: #c5d4e8 !important;
}

@media (prefers-reduced-motion: reduce) {
    .salehly-provider-register .form-control.error,
    .salehly-provider-register .form-select.error,
    .salehly-provider-register .input.error,
    .salehly-provider-register select.error + .select2-container .select2-selection--single {
        animation: none !important;
    }
}


/* Secure email-verification state */
.salehly-provider-register__success {
    display: grid;
    justify-items: center;
    gap: 12px;
    padding: 28px 22px;
    border: 1px solid rgba(38, 107, 205, .22);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(239, 247, 255, .96), rgba(255, 255, 255, .98));
    text-align: center;
}
.salehly-provider-register__success-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #2167c7;
    color: #fff;
    font-size: 28px;
    font-weight: 800;
    box-shadow: 0 14px 30px rgba(33, 103, 199, .24);
}
.salehly-provider-register__success h3 { margin: 0; color: #123a70; }
.salehly-provider-register__success p { margin: 0; color: #53657a; line-height: 1.8; }
.salehly-provider-register__login-link { color: #175db8; font-weight: 700; text-decoration: none; }
.salehly-provider-register__login-link:hover { text-decoration: underline; }
.dark .salehly-provider-register__success,
[data-bs-theme="dark"] .salehly-provider-register__success { background: #182333; border-color: rgba(103, 169, 255, .25); }
.dark .salehly-provider-register__success h3,
[data-bs-theme="dark"] .salehly-provider-register__success h3 { color: #eaf3ff; }
.dark .salehly-provider-register__success p,
[data-bs-theme="dark"] .salehly-provider-register__success p { color: #b9c8da; }
