@font-face {
    font-family: 'Cairo';
    src: url('../assets/fonts/cairo-v28-arabic_latin_latin-ext-regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('../assets/fonts/cairo-v28-arabic_latin_latin-ext-700.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
}

body {
    font-family: 'Cairo', sans-serif;
}

.form-control {
    font-family: 'Cairo', sans-serif;
}

.form-select {
    font-family: 'Cairo', sans-serif;
}

.Isrequired {
    background-color: #ffff0033;
    /*background-color: #d82c5b17;*/
}

.Isrequired:focus {
    background-color: white;
}

input[disabled='disabled'],
select[disabled='disabled'] {
    border: solid 1px silver;
    background-color: #F9F9F9;
    color: blue;
}

@media (min-width: 992px) {
    [data-sidebar-behaviour=condensed] .navbar-vertical .navbar-brand .navbar-brand-name {
        display: none;
    }
}


.navbar-vertical.navbar-expand-lg .navbar-nav .nav-link .nav-link-icon {
    width: 1.7rem;
    height: 1.7rem;
}

.select2 {
    /*    display: block;
    width:90%;
    padding-bottom:0px;
    padding-left:0px;
    padding-right:32px;*/
}

.input-group-text {
    /*background-color:rgb(253 253 253);*/
}

.content-main {
    /* padding: 30px 3%;*/
    margin-left: auto;
    margin-right: auto;
    /*    background-color: #f8f9fa;*/

}

.content-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 30px;
}

.card {
    /*   margin-bottom: 24px;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid #eee;
    border-radius: 10px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    overflow: hidden;*/
}

.card-header {
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    /*background-color: rgba(0,0,0,.03);*/
    border-bottom: 1px solid rgba(0, 0, 0, .125);
}

.card-headersys {
    /*  padding: 1.3rem 1.3rem;*/
    padding: 10px 10px 10px 20px;
    margin-bottom: 0;
    /*background-color: #fff;*/
    border-bottom: 1px solid rgba(222, 226, 230, 0.7);
}

.table> :not(caption)>*>* {
    /*padding: .1rem .2rem;*/
}


.table>thead>tr>th {
    /*padding: .4rem .4rem;*/
}


.bt-custom {
    /*padding: 0.625rem 1.75rem;*/
}

.btn-primary {
    color: #fff;
    background-color: #337ab7;
    border-color: #2e6da4
}

.btn-primary.focus,
.btn-primary:focus {
    color: #fff;
    background-color: #286090;
    border-color: #122b40
}

.btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74
}


.form-check-input:not(:checked) {
    border: 1px solid #d82c5b;
    /* Light blue border */
}

:root {
    --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji", "Open Sans"
}

* {
    /*font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji","Open Sans"*/
}



.accordion {
    --bs-accordion-color: var(--bs-body-color);
    --bs-accordion-bg: var(--bs-body-bg);
    --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
    --bs-accordion-border-color: var(--bs-border-color);
    --bs-accordion-border-width: var(--bs-border-width);
    --bs-accordion-border-radius: var(--bs-border-radius);
    --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
    --bs-accordion-btn-padding-x: 1.25rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: var(--bs-body-color);
    --bs-accordion-btn-bg: var(--bs-accordion-bg);
    --bs-accordion-btn-icon: url(data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%230E2238' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='m2 5 6 6 6-6'/%3E%3C/svg%3E);
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-active-icon: url(data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2300BAC7' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='m2 5 6 6 6-6'/%3E%3C/svg%3E);
    --bs-accordion-btn-focus-box-shadow: 0 4px 12px rgba(var(--bs-btn-focus-shadow-rgb), 0.35);
    --bs-accordion-body-padding-x: 1.25rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: #00a7b3;
    --bs-accordion-active-bg: #e6f8f9;
}

.action-toolbar #moreMenu {
    flex-shrink: 0;
}

.nav-item .add-quick-access svg {
    display: block;
    width: 18px;
    height: 18px;
}

.action-toolbar .action-item {
    padding-right: 0.5rem;
    /* ����� �������� ������� */
}

.action-toolbar button.position-absolute {
    font-size: 0.7rem;
    line-height: 1;
    border-radius: 50%;
}

.action-item-wrapper {
    position: relative;
    display: inline-block;
}

.remove-btn {
    position: absolute;
    top: -5px;
    right: -5px;
    width: 16px;
    height: 16px;
    font-size: 10px;
    line-height: 14px;
    padding: 0;
    border-radius: 50%;
}

@media (min-width: 992px) {
    [data-sidebar-behaviour=condensed] .navbar-vertical .navbar-nav>.nav-item>.add-quick-access {
        display: none;
    }
}

:root,
[data-theme=light] {
    --prefix: --bs-;
    /* -------------------------------------------------------------
       ����� ������ �������� (BETA Brand Colors)
       ------------------------------------------------------------- */
    --bs-primary: #00c6d7;
    /* ������� ��������� ����� (���� ����) */
    --bs-primary-rgb: 0, 198, 215;
    --bs-dark: #0f172a;
    /* ������ ������ ������ ������ */
    --bs-dark-rgb: 15, 23, 42;
    --bs-success: #10b981;
    /* ������ ������� ����� �������� ��������� ������� */
    --bs-success-rgb: 16, 185, 129;
    --bs-warning: #f59e0b;
    /* ������ ������ ��������� �������� ������� */
    --bs-warning-rgb: 245, 158, 11;
    --bs-danger: #ef4444;
    /* ������ ����� �������� ������� �������� */
    --bs-danger-rgb: 239, 68, 68;
    --bs-info: #00c6d7;
    /* ������� ��������� �������� */
    --bs-info-rgb: 0, 198, 215;
    /* -------------------------------------------------------------
       ������� ������ ������� ������� (Typography & Body)
       ------------------------------------------------------------- */
    /*    --bs-body-bg: #f8fafc;*/
    --bs-body-bg: #e4ebf2;
    --bs-main-content-bg: #e4ebf2;
    /* ����� ���� ���� ���� ���� ����� */
    --bs-body-bg-rgb: 248, 250, 252;
    --bs-body-color: #0f172a;
    /* ��� ������ ������� (���� ���� ����� �� ������ �����) */
    --bs-body-color-rgb: 15, 23, 42;
    --bs-link-color: #00c6d7;
    /* ������� ������ ������� ������� */
    --bs-link-hover-color: #00a5b2;
    /* ���� ����� ���� ��� ����� ������ */
    --bs-code-color: #00c6d7;
    /* -------------------------------------------------------------
       ����� �������� �������� ������� ��������
       ------------------------------------------------------------- */
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-orange: #fd7e14;
    --bs-yellow: #f59e0b;
    --bs-green: #10b981;
    --bs-teal: #20c997;
    --bs-cyan: #00c6d7;
    --bs-gray: #989ea6;
    --bs-gray-dark: #1e293b;
    --bs-secondary: #9ea9b4;
    --bs-light: #f1f5f9;
    --bs-light-green: #f1f5f7;
    --bs-white: #ffffff;
    --bs-black: #000000;
    --bs-blue: #2563eb;
    --bs-gray-100: #f8fafc;
    --bs-gray-200: #f1f5f9;
    --bs-gray-300: #e2e8f0;
    --bs-gray-400: #cbd5e1;
    --bs-gray-500: #94a3b8;
    --bs-gray-600: #64748b;
    --bs-gray-700: #475569;
    --bs-gray-800: #1e293b;
    --bs-gray-900: #0f172a;
    --bs-secondary-rgb: 158, 169, 180;
    --bs-light-rgb: 241, 245, 249;
    --bs-light-green-rgb: 241, 245, 247;
    --bs-blue-rgb: 37, 99, 235;
    --bs-gray-100-rgb: 248, 250, 252;
    --bs-gray-200-rgb: 241, 245, 249;
    --bs-gray-300-rgb: 226, 232, 240;
    --bs-gray-400-rgb: 203, 213, 225;
    --bs-gray-500-rgb: 148, 163, 184;
    --bs-gray-600-rgb: 100, 116, 139;
    --bs-gray-700-rgb: 71, 85, 105;
    --bs-gray-800-rgb: 30, 41, 59;
    --bs-gray-900-rgb: 15, 23, 42;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: "Cairo", "Outfit", "Open Sans", sans-serif;
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, hsla(0, 0%, 100%, .15), hsla(0, 0%, 100%, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 0.875rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-heading-color: #0f172a;
    --bs-highlight-bg: #fef08a;
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1400px;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #e2e8f0;
    --bs-border-color-translucent: rgba(226, 232, 240, 0.5);
    --bs-border-radius: 0.625rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.75rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-2xl: 2rem;
    --bs-border-radius-pill: 50rem;
    --bs-form-control-bg: #f8fafc;
    --bs-chart-tooltip-bg: var(--bs-dark);
}

[data-theme=dark] {
    /* -------------------------------------------------------------
       ����� ������ ��������� �������� (Body & Backgrounds)
       ------------------------------------------------------------- */
    --bs-body-bg: #090d16;
    /* ����� ������ �������� (���� ���� ����) */
    --bs-body-bg-rgb: 9, 13, 22;
    --bs-body-color: #cbd5e1;
    /* ���� ������� �������� (����� ����� ����) */
    --bs-body-color-rgb: 203, 213, 225;
    /* -------------------------------------------------------------
       ������� �������� ������ ������ (System States & Brand)
       ------------------------------------------------------------- */
    --bs-primary: #00c6d7;
    /* ������� ��������� ������ */
    --bs-primary-rgb: 0, 198, 215;
    --bs-success: #10b981;
    /* ������ ������� �������� ��������� �������� */
    --bs-success-rgb: 16, 185, 129;
    --bs-warning: #f59e0b;
    /* ������ ������ ��������� �������� ������� */
    --bs-warning-rgb: 245, 158, 11;
    --bs-danger: #ef4444;
    /* ������ ������ �������� ������� �������� */
    --bs-danger-rgb: 239, 68, 68;
    --bs-info: #00c6d7;
    /* ����� ������� ��������� �������� */
    --bs-info-rgb: 0, 198, 215;
    --bs-secondary: #64748b;
    /* ������� ������ �������� ������� */
    --bs-secondary-rgb: 100, 116, 139;
    /* -------------------------------------------------------------
       ����� �������� ��������� �������� (Cards & Components)
       ------------------------------------------------------------- */
    --bs-white: #111827;
    /* ����� �������� �������� (����� ���� ���� ����� �� ������) */
    --bs-white-rgb: 17, 24, 39;
    --bs-light: #1f2937;
    /* ����� ������ �������� �������� ������� */
    --bs-light-rgb: 31, 41, 55;
    --bs-dark: #090d16;
    /* �������� ������� ������� */
    --bs-dark-rgb: 9, 13, 22;
    --bs-light-green: #0d1527;
    /* ������ ��������� ��������� ������ */
    --bs-light-green-rgb: 13, 21, 39;
    --bs-black: #ffffff;
    /* ������ �������� (����� ��� ����) */
    --bs-black-rgb: 255, 255, 255;
    --bs-border-color: #1f2937;
    /* ���� ������� ��������� (����� ���� ����) */
    /* -------------------------------------------------------------
       ����� ���� ������� ������� ����� ������ (Slate Gray Scale)
       ------------------------------------------------------------- */
    --bs-gray-100: #0f172a;
    --bs-gray-200: #1e293b;
    --bs-gray-300: #334155;
    --bs-gray-400: #475569;
    --bs-gray-500: #64748b;
    --bs-gray-600: #94a3b8;
    --bs-gray-700: #cbd5e1;
    --bs-gray-800: #e2e8f0;
    --bs-gray-900: #f8fafc;
    --bs-gray-100-rgb: 15, 23, 42;
    --bs-gray-200-rgb: 30, 41, 59;
    --bs-gray-300-rgb: 51, 65, 85;
    --bs-gray-400-rgb: 71, 85, 105;
    --bs-gray-500-rgb: 100, 116, 139;
    --bs-gray-600-rgb: 148, 163, 184;
    --bs-gray-700-rgb: 203, 213, 225;
    --bs-gray-800-rgb: 226, 232, 240;
    --bs-gray-900-rgb: 248, 250, 252;
}


[data-theme=light] main {
    --bs-main-content-bg: #dbe4ed;
}

@media (min-width: 992px) {
    .navbar-vertical~main:before {
        background-color: var(--bs-main-content-bg);
    }
}

/* =========================================================
   Driver.js (Page Tour) Overrides
   ========================================================= */
.driver-popover {
    font-family: 'Cairo', sans-serif !important;
    border-radius: 16px !important;
    border: none !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
    padding: 1.25rem 1.5rem !important;
}

.driver-popover-title {
    font-weight: 700 !important;
    font-size: 1.15rem !important;
    color: var(--bs-primary) !important;
    margin-bottom: 0.75rem !important;
}

.driver-popover-description {
    font-size: 0.95rem !important;
    color: var(--bs-body-color) !important;
    line-height: 1.6 !important;
}

/* Navigation Buttons Container */
.driver-popover-footer {
    margin-top: 1.25rem !important;
}

/* Primary buttons (Next, Done) */
.driver-popover-footer button.driver-popover-next-btn {
    background-color: var(--bs-primary) !important;
    color: #fff !important;
    text-shadow: none !important;
    border: none !important;
    border-radius: 50rem !important;
    /* rounded-pill */
    padding: 0.5rem 1.5rem !important;
    font-weight: 600 !important;
    font-family: 'Cairo', sans-serif !important;
    transition: all 0.2s ease !important;
}

.driver-popover-footer button.driver-popover-next-btn:hover {
    opacity: 0.9 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1) !important;
}

/* Secondary buttons (Prev) */
.driver-popover-footer button.driver-popover-prev-btn {
    background-color: transparent !important;
    color: var(--bs-secondary-color) !important;
    border: 1px solid var(--bs-border-color) !important;
    text-shadow: none !important;
    border-radius: 50rem !important;
    padding: 0.5rem 1.5rem !important;
    font-weight: 600 !important;
    font-family: 'Cairo', sans-serif !important;
    transition: all 0.2s ease !important;
}

.driver-popover-footer button.driver-popover-prev-btn:hover {
    background-color: var(--bs-secondary-bg) !important;
    color: var(--bs-body-color) !important;
}

/* Close button */
.driver-popover-close-btn {
    color: var(--bs-secondary-color) !important;
    transition: color 0.2s ease !important;
}

.driver-popover-close-btn:hover {
    color: var(--bs-danger) !important;
}

.driver-popover-progress-text {
    font-family: 'Cairo', sans-serif !important;
    color: var(--bs-secondary-color) !important;
    font-weight: 600 !important;
    font-size: 0.85rem !important;
}

/* RTL Support for Driver.js layout */
html[dir="rtl"] .driver-popover,
html[dir="RTL"] .driver-popover {
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] .driver-popover-close-btn,
html[dir="RTL"] .driver-popover-close-btn {
    right: auto !important;
    left: 10px !important;
}

html[dir="rtl"] .driver-popover-footer,
html[dir="RTL"] .driver-popover-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

html[dir="rtl"] .driver-popover-navigation-btns,
html[dir="RTL"] .driver-popover-navigation-btns {
    display: flex !important;
    gap: 0.5rem !important;
}

/* =========================================================
   Unified Tour Trigger Button & Compass Magnetic Animation
   ========================================================= */
.tour-trigger-btn {
    position: relative;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    flex-shrink: 0 !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    animation: tourHaloPulse 3.5s infinite;
}

.tour-trigger-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(var(--bs-primary-rgb, 13, 110, 253), 0.3) !important;
    animation: none;
}

.tour-trigger-btn .tour-compass-icon {
    font-size: 1.4rem !important;
    line-height: 1;
    display: inline-block;
    transform-origin: center center;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    animation: compassMagneticWiggle 4s cubic-bezier(0.36, 0, 0.66, 1) infinite;
}

.tour-trigger-btn:hover .tour-compass-icon {
    animation-play-state: paused;
    transform: rotate(180deg) scale(1.15);
}

/* Magnetic Compass Needle Wiggle Animation */
@keyframes compassMagneticWiggle {
    0%, 65%, 100% {
        transform: rotate(0deg) scale(1);
    }
    70% {
        transform: rotate(-35deg) scale(1.18);
    }
    77% {
        transform: rotate(30deg) scale(1.18);
    }
    84% {
        transform: rotate(-15deg) scale(1.1);
    }
    90% {
        transform: rotate(10deg) scale(1.05);
    }
}

/* Subtle outer halo pulse around the button */
@keyframes tourHaloPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(var(--bs-primary-rgb, 13, 110, 253), 0.35);
    }
    60% {
        box-shadow: 0 0 0 7px rgba(var(--bs-primary-rgb, 13, 110, 253), 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(var(--bs-primary-rgb, 13, 110, 253), 0);
    }
}