@font-face {
    font-family: "OmidFaNum";
    src: url("../fonts/Vazir-FD.woff") format("woff");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

.ui-theme-theme-2 {
    --ux-page-bg: #f4f7fb;
    --ux-surface: #ffffff;
    --ux-surface-soft: #f8fafc;
    --ux-border: #d8e0ea;
    --ux-border-strong: #b9c6d8;
    --ux-text: #172033;
    --ux-muted: #66758f;
    --ux-primary: #0f766e;
    --ux-primary-strong: #0b5f59;
    --ux-blue: #2563eb;
    --ux-amber: #d97706;
    --ux-red: #dc2626;
    --ux-violet: #6d28d9;
    --ux-shadow-sm: 0 8px 22px rgba(15, 23, 42, .06);
    --ux-shadow-md: 0 18px 44px rgba(15, 23, 42, .09);
    --bs-body-font-family: "OmidFaNum", "IRANSansWeb", "Vazir", Tahoma, Arial, sans-serif;
    background:
        radial-gradient(circle at 13% 0%, rgba(15, 118, 110, .08), transparent 24rem),
        radial-gradient(circle at 92% 7%, rgba(37, 99, 235, .07), transparent 22rem),
        var(--ux-page-bg) !important;
    color: var(--ux-text);
    font-family: var(--bs-body-font-family) !important;
    font-variant-numeric: normal;
}

.ui-theme-theme-2 * {
    letter-spacing: 0 !important;
}

.ui-theme-theme-2 .app-page,
.ui-theme-theme-2 .app-main,
.ui-theme-theme-2 .app-content,
.ui-theme-theme-2 #kt_app_root,
.ui-theme-theme-2 #kt_app_page,
.ui-theme-theme-2 #kt_app_wrapper {
    background: transparent !important;
}

.ui-theme-theme-2 .app-container.container-fluid {
    max-width: none;
}

@media (min-width: 992px) {
    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 #kt_app_content_container.app-container,
    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 #kt_app_header_container.app-container,
    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 #kt_app_footer .app-container {
        padding-right: 14px !important;
        padding-left: 22px !important;
    }

    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 .app-wrapper {
        gap: 0;
    }
}

.ui-theme-theme-2 #kt_app_header.app-header {
    margin: 10px 12px 0;
    border: 1px solid rgba(216, 224, 234, .82);
    border-radius: 8px;
    background: rgba(255, 255, 255, .9) !important;
    box-shadow: var(--ux-shadow-sm);
    backdrop-filter: blur(14px);
}

.ui-theme-theme-2 #kt_app_header_container {
    min-height: 64px;
}

.ui-theme-theme-2 .app-navbar .btn,
.ui-theme-theme-2 .guide-navbar-link {
    border-radius: 8px !important;
}

.ui-theme-theme-2 .guide-navbar-link {
    border-color: var(--ux-border) !important;
    background: linear-gradient(180deg, #fff, #f8fafc) !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .05);
}

.ui-theme-theme-2 .guide-navbar-link .fs-3 {
    font-size: .92rem !important;
}

.ui-theme-theme-2 #notification-toggle,
.ui-theme-theme-2 #kt_header_user_menu_toggle .symbol,
.ui-theme-theme-2 #kt_app_sidebar_mobile_toggle {
    border: 1px solid var(--ux-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .04);
}

.ui-theme-theme-2 #kt_app_header .menu-sub-dropdown,
.ui-theme-theme-2 #notification-panel.notification-panel {
    direction: rtl;
    text-align: right;
}

.ui-theme-theme-2 #kt_app_header .menu-sub-dropdown {
    max-width: min(calc(100vw - 24px), 420px);
}

.ui-theme-theme-2 #kt_app_header .menu-sub-dropdown .menu-link,
.ui-theme-theme-2 #kt_app_header .menu-sub-dropdown .menu-content {
    text-align: right;
}

.ui-theme-theme-2 #notification-container {
    position: relative;
}

.ui-theme-theme-2 #notification-panel.notification-panel {
    right: auto;
    left: 0;
    border: 1px solid var(--ux-border);
    border-radius: 8px;
    box-shadow: var(--ux-shadow-md);
}

.ui-theme-theme-2 #notification-panel .notification-title,
.ui-theme-theme-2 #notification-panel .notification-item-title,
.ui-theme-theme-2 #notification-panel .notification-item-message {
    text-align: right;
}

.ui-theme-theme-2 #notification-panel .notification-item:hover {
    transform: translateX(-5px);
}

.ui-theme-theme-2 #notification-panel .notification-item-time {
    margin-right: 0;
    margin-left: 8px;
}

.ui-theme-theme-2 .app-sidebar-logo {
    min-height: 78px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.ui-theme-theme-2 .app-sidebar-logo a {
    display: flex;
    align-items: center;
    gap: .7rem;
    color: #f8fafc !important;
    text-decoration: none;
}

.ui-theme-theme-2 #kt_app_content {
    padding-top: 18px;
}

.ui-theme-theme-2 .card,
.ui-theme-theme-2 .card.card-flush,
.ui-theme-theme-2 .card.border,
.ui-theme-theme-2 .modal-content,
.ui-theme-theme-2 .accordion,
.ui-theme-theme-2 .dropdown-menu,
.ui-theme-theme-2 .menu-sub-dropdown,
.ui-theme-theme-2 .border.rounded,
.ui-theme-theme-2 .table-responsive.border {
    border: 1px solid var(--ux-border) !important;
    border-radius: 8px !important;
    background: var(--ux-surface) !important;
    box-shadow: var(--ux-shadow-sm) !important;
}

.ui-theme-theme-2 .card:hover {
    box-shadow: var(--ux-shadow-md) !important;
}

.ui-theme-theme-2 .card-header {
    min-height: 58px;
    border-bottom: 1px solid #eef2f7 !important;
    background: linear-gradient(180deg, #fff, #fbfdff) !important;
}

.ui-theme-theme-2 .card-body {
    color: var(--ux-text);
}

/* ─────────────────────────────────────────────────────────────
   Statistic info-cards (.cst-card-1..4 — defined in master layout)
   The generic .card.card-flush rule above flattens these gradient
   cards to a light surface, which left their white text invisible.
   Under theme-2 give them a soft tinted surface, a coloured icon
   chip, and dark/legible text. Used on food-categories, contractors,
   contract-personnel and order-statistics pages.
   ───────────────────────────────────────────────────────────── */
.ui-theme-theme-2 .card.card-flush.cst-card-1 {
    background: linear-gradient(135deg, rgba(109, 40, 217, .10), rgba(109, 40, 217, .03)), #fff !important;
}
.ui-theme-theme-2 .card.card-flush.cst-card-2 {
    background: linear-gradient(135deg, rgba(220, 38, 38, .10), rgba(220, 38, 38, .03)), #fff !important;
}
.ui-theme-theme-2 .card.card-flush.cst-card-3 {
    background: linear-gradient(135deg, rgba(37, 99, 235, .10), rgba(37, 99, 235, .03)), #fff !important;
}
.ui-theme-theme-2 .card.card-flush.cst-card-4 {
    background: linear-gradient(135deg, rgba(15, 118, 110, .11), rgba(15, 118, 110, .03)), #fff !important;
}

/* dark, legible text in place of the now-invisible white */
.ui-theme-theme-2 .card-flush.cst-card-1 .text-white,
.ui-theme-theme-2 .card-flush.cst-card-2 .text-white,
.ui-theme-theme-2 .card-flush.cst-card-3 .text-white,
.ui-theme-theme-2 .card-flush.cst-card-4 .text-white {
    color: var(--ux-text) !important;
}
.ui-theme-theme-2 .card-flush.cst-card-1 .text-white.opacity-75,
.ui-theme-theme-2 .card-flush.cst-card-2 .text-white.opacity-75,
.ui-theme-theme-2 .card-flush.cst-card-3 .text-white.opacity-75,
.ui-theme-theme-2 .card-flush.cst-card-4 .text-white.opacity-75 {
    color: var(--ux-muted) !important;
    opacity: 1 !important;
}

/* accent-tinted icon chips keep each card distinguishable */
.ui-theme-theme-2 .card-flush.cst-card-1 .symbol-label { background: rgba(109, 40, 217, .12) !important; }
.ui-theme-theme-2 .card-flush.cst-card-2 .symbol-label { background: rgba(220, 38, 38, .12) !important; }
.ui-theme-theme-2 .card-flush.cst-card-3 .symbol-label { background: rgba(37, 99, 235, .12) !important; }
.ui-theme-theme-2 .card-flush.cst-card-4 .symbol-label { background: rgba(15, 118, 110, .12) !important; }
.ui-theme-theme-2 .card-flush.cst-card-1 .symbol-label i { color: var(--ux-violet) !important; }
.ui-theme-theme-2 .card-flush.cst-card-2 .symbol-label i { color: var(--ux-red) !important; }
.ui-theme-theme-2 .card-flush.cst-card-3 .symbol-label i { color: var(--ux-blue) !important; }
.ui-theme-theme-2 .card-flush.cst-card-4 .symbol-label i { color: var(--ux-primary) !important; }

.ui-theme-theme-2 .card-footer {
    border-top: 1px solid #eef2f7 !important;
    background: #fbfdff !important;
}

.ui-theme-theme-2 .card-title,
.ui-theme-theme-2 .card-label,
.ui-theme-theme-2 h1,
.ui-theme-theme-2 h2,
.ui-theme-theme-2 h3,
.ui-theme-theme-2 h4 {
    color: var(--ux-text) !important;
    font-weight: 900 !important;
}

.ui-theme-theme-2 .text-muted,
.ui-theme-theme-2 .text-gray-500,
.ui-theme-theme-2 .text-gray-600,
.ui-theme-theme-2 .text-gray-700 {
    color: var(--ux-muted) !important;
}

.ui-theme-theme-2 .text-gray-800,
.ui-theme-theme-2 .text-gray-900 {
    color: var(--ux-text) !important;
}

.ui-theme-theme-2 .btn {
    border-radius: 8px !important;
    font-weight: 800;
}

.ui-theme-theme-2 .btn-primary {
    border-color: var(--ux-primary) !important;
    background: linear-gradient(135deg, var(--ux-primary), #14b8a6) !important;
    box-shadow: 0 10px 20px rgba(15, 118, 110, .18);
}

.ui-theme-theme-2 .btn-light-primary,
.ui-theme-theme-2 .badge-light-primary {
    color: var(--ux-primary-strong) !important;
    border-color: rgba(15, 118, 110, .18) !important;
    background: #e8f7f5 !important;
}

.ui-theme-theme-2 .btn-light,
.ui-theme-theme-2 .btn-secondary {
    border: 1px solid var(--ux-border) !important;
    background: #fff !important;
    color: var(--ux-text) !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .04);
}

.ui-theme-theme-2 .btn-success,
.ui-theme-theme-2 .badge-light-success,
.ui-theme-theme-2 .bg-light-success {
    border-color: rgba(15, 118, 110, .18) !important;
    background-color: #e8f7f5 !important;
    color: #0b5f59 !important;
}

.ui-theme-theme-2 .btn-warning,
.ui-theme-theme-2 .badge-light-warning,
.ui-theme-theme-2 .bg-light-warning {
    border-color: rgba(217, 119, 6, .22) !important;
    background-color: #fff7ed !important;
    color: #9a3412 !important;
}

.ui-theme-theme-2 .btn-danger,
.ui-theme-theme-2 .badge-light-danger,
.ui-theme-theme-2 .bg-light-danger {
    border-color: rgba(220, 38, 38, .18) !important;
    background-color: #fef2f2 !important;
    color: #991b1b !important;
}

.ui-theme-theme-2 .btn-info,
.ui-theme-theme-2 .badge-light-info,
.ui-theme-theme-2 .bg-light-info {
    border-color: rgba(37, 99, 235, .18) !important;
    background-color: #eff6ff !important;
    color: #1d4ed8 !important;
}

.ui-theme-theme-2 .form-control,
.ui-theme-theme-2 .form-select,
.ui-theme-theme-2 input[type="text"],
.ui-theme-theme-2 input[type="date"],
.ui-theme-theme-2 input[type="number"],
.ui-theme-theme-2 input[type="search"],
.ui-theme-theme-2 input[type="file"],
.ui-theme-theme-2 textarea,
.ui-theme-theme-2 .form-control.form-control-solid,
.ui-theme-theme-2 .form-select.form-select-solid {
    min-height: 42px;
    border: 1px solid var(--ux-border) !important;
    border-radius: 8px !important;
    background-color: #fff !important;
    color: var(--ux-text) !important;
    box-shadow: none !important;
}

.ui-theme-theme-2 .form-control:focus,
.ui-theme-theme-2 .form-select:focus,
.ui-theme-theme-2 input:focus,
.ui-theme-theme-2 textarea:focus {
    border-color: var(--ux-primary) !important;
    box-shadow: 0 0 0 .22rem rgba(15, 118, 110, .12) !important;
}

.ui-theme-theme-2 .form-label,
.ui-theme-theme-2 label,
.ui-theme-theme-2 .form-check-label {
    color: var(--ux-text) !important;
    font-weight: 800;
}

.ui-theme-theme-2 .form-check-input {
    border-color: var(--ux-border-strong) !important;
}

.ui-theme-theme-2 .form-check-input:checked {
    border-color: var(--ux-primary) !important;
    background-color: var(--ux-primary) !important;
}

.ui-theme-theme-2 .table {
    --bs-table-border-color: #edf1f6 !important;
    border-color: #edf1f6 !important;
    color: var(--ux-text);
}

.ui-theme-theme-2 .table:not(.table-bordered).table-row-dashed tr,
.ui-theme-theme-2 .table.table-row-bordered tr,
.ui-theme-theme-2 .table tr,
.ui-theme-theme-2 .table td,
.ui-theme-theme-2 .table th {
    border-color: #edf1f6 !important;
}

.ui-theme-theme-2 .table thead th,
.ui-theme-theme-2 table.dataTable thead th {
    border-bottom: 1px solid var(--ux-border) !important;
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: .78rem;
    font-weight: 900;
}

.ui-theme-theme-2 .table tbody tr {
    transition: background .16s ease;
}

.ui-theme-theme-2 .table tbody tr:hover {
    background: #f8fbff !important;
}

.ui-theme-theme-2 .badge {
    border-radius: 999px;
    font-weight: 900;
}

.ui-theme-theme-2 .border,
.ui-theme-theme-2 .border-gray-100,
.ui-theme-theme-2 .border-gray-200,
.ui-theme-theme-2 .border-gray-300,
.ui-theme-theme-2 .border-dashed {
    border-color: var(--ux-border) !important;
}

.ui-theme-theme-2 .rounded,
.ui-theme-theme-2 .rounded-3,
.ui-theme-theme-2 .rounded-4 {
    border-radius: 8px !important;
}

.ui-theme-theme-2 .alert {
    border-radius: 8px;
    border-width: 1px;
}

.ui-theme-theme-2 .nav-tabs,
.ui-theme-theme-2 .nav-line-tabs {
    border-bottom-color: var(--ux-border) !important;
}

.ui-theme-theme-2 .nav-link {
    border-radius: 8px 8px 0 0;
    color: var(--ux-muted);
    font-weight: 800;
}

.ui-theme-theme-2 .nav-link.active {
    color: var(--ux-primary) !important;
}

.ui-theme-theme-2 .pagination .page-link {
    border-color: var(--ux-border);
    color: var(--ux-text);
}

.ui-theme-theme-2 .pagination .active .page-link,
.ui-theme-theme-2 .page-item.active .page-link {
    border-color: var(--ux-primary);
    background: var(--ux-primary);
}

.ui-theme-theme-2 .p-datepicker,
.ui-theme-theme-2 .datepicker-plot-area {
    border: 1px solid var(--ux-border) !important;
    border-radius: 8px !important;
    box-shadow: var(--ux-shadow-md) !important;
    font-family: var(--bs-body-font-family) !important;
}

.ui-theme-theme-2 .p-datepicker *,
.ui-theme-theme-2 .datepicker-plot-area * {
    font-family: var(--bs-body-font-family) !important;
}

.ui-theme-theme-2 .p-datepicker .p-datepicker-header,
.ui-theme-theme-2 .datepicker-plot-area .datepicker-plot-area-header,
.ui-theme-theme-2 .datepicker-plot-area .datepicker-day-view .month-grid-box .header {
    background: #f8fafc !important;
    border-color: var(--ux-border) !important;
    color: var(--ux-text) !important;
}

.ui-theme-theme-2 .fc {
    color: var(--ux-text);
    font-family: var(--bs-body-font-family) !important;
}

.ui-theme-theme-2 .fc-theme-standard .fc-scrollgrid,
.ui-theme-theme-2 .fc-theme-standard td,
.ui-theme-theme-2 .fc-theme-standard th {
    border-color: #1a1a1a !important;
}

.ui-theme-theme-2 .fc .fc-toolbar {
    gap: .75rem;
    margin-bottom: 1rem;
}

.ui-theme-theme-2 .fc .fc-button {
    border: 1px solid var(--ux-border) !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--ux-text) !important;
    box-shadow: 0 4px 10px rgba(15, 23, 42, .04);
}

.ui-theme-theme-2 .fc .fc-button-primary:not(:disabled).fc-button-active,
.ui-theme-theme-2 .fc .fc-button-primary:not(:disabled):active {
    border-color: var(--ux-primary) !important;
    background: var(--ux-primary) !important;
    color: #fff !important;
}

.ui-theme-theme-2 .fc .fc-daygrid-day.fc-day-today {
    background: rgba(15, 118, 110, .08) !important;
}

.ui-theme-theme-2 .fc-event {
    border-radius: 6px !important;
    border: 0 !important;
    padding: 2px 5px;
    font-weight: 800;
}

.ui-theme-theme-2 .food-selection-row,
.ui-theme-theme-2 .addon-selection-row {
    border: 1px solid var(--ux-border) !important;
    border-radius: 8px !important;
    background: #fff !important;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.ui-theme-theme-2 .food-selection-row:hover,
.ui-theme-theme-2 .addon-selection-row:hover {
    border-color: rgba(15, 118, 110, .38) !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .07);
}

.ui-theme-theme-2 .food-selection-row.border-success,
.ui-theme-theme-2 .addon-selection-row.border-success,
.ui-theme-theme-2 .food-selection-row.bg-light-success,
.ui-theme-theme-2 .addon-selection-row.bg-light-success {
    border-color: rgba(15, 118, 110, .52) !important;
    background: #e8f7f5 !important;
}

.ui-theme-theme-2 .day-order-card {
    overflow: hidden;
}

.ui-theme-theme-2 .day-order-card.border-success {
    border-color: rgba(15, 118, 110, .46) !important;
    box-shadow: 0 18px 40px rgba(15, 118, 110, .13) !important;
}

.ui-theme-theme-2 #org-bulk-select-card,
.ui-theme-theme-2 #org-excel-bulk-card {
    border-color: var(--ux-border) !important;
    background: linear-gradient(180deg, #fff, #fbfdff) !important;
}

.ui-theme-theme-2 #bulk-select-card-header,
.ui-theme-theme-2 #excel-bulk-card-header {
    background: #fff !important;
}

.ui-theme-theme-2 .symbol-label {
    border-radius: 8px !important;
}

.ui-theme-theme-2 .separator {
    border-color: var(--ux-border) !important;
}

.ui-theme-theme-2 #kt_app_footer {
    margin-top: 28px !important;
}

.ui-theme-theme-2 #kt_app_footer .rounded-4 {
    border-color: var(--ux-border) !important;
    border-radius: 8px !important;
    background:
        linear-gradient(135deg, rgba(15, 118, 110, .08), rgba(37, 99, 235, .04)),
        #fff !important;
    box-shadow: var(--ux-shadow-sm) !important;
}

.ui-theme-theme-2 #kt_app_footer .symbol-label {
    background: #e8f7f5 !important;
}

.ui-theme-theme-2 #kt_app_footer a,
.ui-theme-theme-2 #kt_app_footer .text-gray-800 {
    color: var(--ux-text) !important;
}

.ui-theme-theme-2 .scrolltop {
    border-radius: 8px;
    background: var(--ux-primary) !important;
}

@media (max-width: 991.98px) {
    .ui-theme-theme-2 #kt_app_header.app-header {
        margin: 8px;
    }

    .ui-theme-theme-2 #kt_app_content {
        padding-top: 12px;
    }

    .ui-theme-theme-2 .card-header {
        align-items: flex-start;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}

.ui-theme-theme-2.ui-module-lunch {
    --ux-lunch-primary: #0f766e;
    --ux-lunch-secondary: #2563eb;
    --ux-lunch-warm: #f59e0b;
    --ux-lunch-success: #16a34a;
    --ux-lunch-danger: #dc2626;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container {
    padding-top: 0 !important;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container::before {
    content: "غذا سازمانی";
    min-height: 118px;
    display: flex;
    align-items: center;
    margin: 0 0 18px;
    padding: 1.35rem 1.55rem;
    border: 1px solid rgba(15, 118, 110, .22);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(7, 89, 83, .94), rgba(15, 118, 110, .86) 48%, rgba(37, 99, 235, .74)),
        linear-gradient(45deg, transparent 0 68%, rgba(255, 255, 255, .18) 68% 69%, transparent 69%);
    color: #fff;
    font-size: 1.45rem;
    font-weight: 950;
    box-shadow: var(--ux-shadow-md);
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container::after {
    content: "برنامه‌ریزی، انتخاب، تحویل و تحلیل غذای سازمانی";
    display: block;
    width: fit-content;
    max-width: calc(100% - 3rem);
    margin: -86px 1.55rem 56px auto;
    color: rgba(255, 255, 255, .82);
    font-size: .86rem;
    font-weight: 850;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row:first-child .card,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row.mb-5:first-child .card {
    position: relative;
    overflow: hidden;
    border: 0 !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 250, 252, .98)) !important;
    box-shadow: 0 20px 48px rgba(15, 23, 42, .1) !important;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row:first-child .card::before,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row.mb-5:first-child .card::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, var(--ux-lunch-primary), var(--ux-lunch-secondary));
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row:first-child .card .card-body,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row.mb-5:first-child .card .card-body {
    min-height: 96px;
    display: flex;
    align-items: center;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row:first-child .symbol-label,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .row.mb-5:first-child .symbol-label {
    width: 46px;
    height: 46px;
    background: #e8f7f5 !important;
    color: var(--ux-lunch-primary) !important;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .card,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container .card.mb-5,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container .card.card-flush {
    border-color: rgba(15, 118, 110, .16) !important;
}

.ui-theme-theme-2.ui-module-lunch #kt_app_content_container > .card > .card-header,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container .card.mb-5 > .card-header,
.ui-theme-theme-2.ui-module-lunch #kt_app_content_container .card.card-flush > .card-header {
    background:
        linear-gradient(135deg, rgba(15, 118, 110, .1), rgba(37, 99, 235, .045)),
        #fff !important;
}

.ui-theme-theme-2.ui-module-lunch .alert.alert-primary,
.ui-theme-theme-2.ui-module-lunch .alert.alert-info,
.ui-theme-theme-2.ui-module-lunch .alert.alert-light-info {
    border: 1px solid rgba(37, 99, 235, .22) !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 235, .08), rgba(15, 118, 110, .06)),
        #fff !important;
    color: #1e3a8a !important;
    box-shadow: 0 10px 26px rgba(37, 99, 235, .08);
}

.ui-theme-theme-2.ui-module-lunch .org-food-calendar-fc {
    padding: 1rem;
    border: 1px solid var(--ux-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .55);
}

.ui-theme-theme-2.ui-module-lunch .org-cal-legend,
.ui-theme-theme-2.ui-module-lunch .day-status-badge {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding-inline: .7rem;
}

.ui-theme-theme-2.ui-module-lunch .org-cal-legend--ordered,
.ui-theme-theme-2.ui-module-lunch .fc-food-ordered,
.ui-theme-theme-2.ui-module-lunch .fc-food-ordered .fc-event-main {
    background: #e8f7f5 !important;
    color: #0b5f59 !important;
}

.ui-theme-theme-2.ui-module-lunch .org-cal-legend--available,
.ui-theme-theme-2.ui-module-lunch .fc-food-available,
.ui-theme-theme-2.ui-module-lunch .fc-food-available .fc-event-main {
    background: #eff6ff !important;
    color: #1d4ed8 !important;
}

.ui-theme-theme-2.ui-module-lunch .org-cal-legend--expired,
.ui-theme-theme-2.ui-module-lunch .fc-food-expired,
.ui-theme-theme-2.ui-module-lunch .fc-food-expired .fc-event-main {
    background: #f1f5f9 !important;
    color: #64748b !important;
}

.ui-theme-theme-2.ui-module-lunch .fc .fc-daygrid-day-number {
    width: 28px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    color: var(--ux-text);
    font-weight: 900;
}

.ui-theme-theme-2.ui-module-lunch .fc .fc-day-today .fc-daygrid-day-number {
    background: var(--ux-lunch-primary);
    color: #fff;
}

.ui-theme-theme-2.ui-module-lunch .food-selection-container,
.ui-theme-theme-2.ui-module-lunch .addon-selection-container,
.ui-theme-theme-2.ui-module-lunch #bulk_preview_content,
.ui-theme-theme-2.ui-module-lunch #excel_bulk_import_file,
.ui-theme-theme-2.ui-module-lunch .welfare-extra-table {
    border-radius: 8px;
}

.ui-theme-theme-2.ui-module-lunch .food-selection-row,
.ui-theme-theme-2.ui-module-lunch .addon-selection-row {
    min-height: 48px;
    padding: .75rem !important;
}

.ui-theme-theme-2.ui-module-lunch .food-selection-row .fw-bold,
.ui-theme-theme-2.ui-module-lunch .addon-selection-row .fw-bold,
.ui-theme-theme-2.ui-module-lunch .food-selection-row .fs-7,
.ui-theme-theme-2.ui-module-lunch .addon-selection-row .fs-7 {
    color: var(--ux-text) !important;
}

.ui-theme-theme-2.ui-module-lunch .table-responsive {
    border: 1px solid var(--ux-border);
    background: #fff;
    box-shadow: var(--ux-shadow-sm);
}

.ui-theme-theme-2.ui-module-lunch .table tbody td {
    padding-top: .95rem;
    padding-bottom: .95rem;
}

.ui-theme-theme-2.ui-module-lunch .badge-light-primary,
.ui-theme-theme-2.ui-module-lunch .badge-light-success,
.ui-theme-theme-2.ui-module-lunch .badge-light-info,
.ui-theme-theme-2.ui-module-lunch .badge-light-warning {
    border: 1px solid rgba(15, 118, 110, .12);
}

.ui-theme-theme-2.ui-module-lunch #org-bulk-select-card,
.ui-theme-theme-2.ui-module-lunch #org-excel-bulk-card {
    overflow: hidden;
}

.ui-theme-theme-2.ui-module-lunch #bulk-select-card-header,
.ui-theme-theme-2.ui-module-lunch #excel-bulk-card-header {
    min-height: 76px;
    transition: background .18s ease, box-shadow .18s ease;
}

.ui-theme-theme-2.ui-module-lunch #bulk-select-card-header:hover,
.ui-theme-theme-2.ui-module-lunch #excel-bulk-card-header:hover {
    background: var(--ux-surface-tint) !important;
}

.ui-theme-theme-2.ui-module-lunch .modal-content {
    overflow: hidden;
}

.ui-theme-theme-2.ui-module-lunch .modal-header {
    border-bottom-color: var(--ux-border) !important;
    background:
        linear-gradient(135deg, rgba(15, 118, 110, .1), rgba(37, 99, 235, .05)),
        #fff !important;
}

.ui-theme-theme-2.ui-module-lunch .modal-footer {
    border-top-color: var(--ux-border) !important;
    background: #fbfdff !important;
}

@media (max-width: 991.98px) {
    .ui-theme-theme-2.ui-module-lunch #kt_app_content_container::before {
        min-height: 104px;
        font-size: 1.2rem;
    }

    .ui-theme-theme-2.ui-module-lunch #kt_app_content_container::after {
        max-width: calc(100% - 2rem);
        margin: -78px 1rem 50px auto;
        font-size: .76rem;
    }
}

/* =========================================================
   Mobile / Tablet Sidebar Overlay Fix (RTL-safe)
   KTDrawer's .drawer-start uses left:0 + translateX(-100%)
   which is LTR-only. We override for RTL sidebar on the right.
   ========================================================= */
@media (max-width: 1199.98px) {
    html,
    body {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    /* Sidebar: always a fixed overlay on mobile/tablet */
    .ui-theme-theme-2 #kt_app_sidebar {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: auto !important;
        right: 0 !important;
        width: 225px !important;
        /* Hidden: pushed off the right edge */
        transform: translateX(calc(100% + 8px)) !important;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        z-index: 1060 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    .ui-theme-theme-2 #kt_app_header .app-sidebar-mobile-toggle-shell,
    .ui-theme-theme-2 #kt_app_header .d-lg-none:has(#kt_app_sidebar_mobile_toggle) {
        display: flex !important;
    }

    /* Shown state — set by KTDrawer or our JS fallback */
    .ui-theme-theme-2 #kt_app_sidebar.drawer-on {
        transform: translateX(0) !important;
        box-shadow: -8px 0 48px rgba(0, 0, 0, 0.22) !important;
    }

    /* Main content: always full-width since sidebar is out of flow */
    .ui-theme-theme-2 #kt_app_main,
    .ui-theme-theme-2 .app-main {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        margin-inline: 0 !important;
    }

    /* App wrapper: stack column so sidebar doesn't affect content width */
    .ui-theme-theme-2 .app-wrapper,
    .ui-theme-theme-2 #kt_app_wrapper {
        flex-direction: row !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        margin-inline: 0 !important;
        overflow-x: hidden !important;
    }

    .ui-theme-theme-2 #kt_app_header.app-header,
    .ui-theme-theme-2 #kt_app_toolbar,
    .ui-theme-theme-2 #kt_app_footer {
        right: 0 !important;
        left: 0 !important;
        width: auto !important;
        max-width: calc(100vw - 16px) !important;
        margin-right: 8px !important;
        margin-left: 8px !important;
    }

    .ui-theme-theme-2 #kt_app_header.app-header,
    .ui-theme-theme-2 #kt_app_header_container {
        z-index: 12000 !important;
    }

    .ui-theme-theme-2 #notification-container,
    .ui-theme-theme-2 #kt_ui_theme_menu_toggle,
    .ui-theme-theme-2 #kt_header_user_menu_toggle {
        position: relative;
        z-index: 12010 !important;
    }

    .ui-theme-theme-2 #notification-panel.notification-panel,
    .ui-theme-theme-2 #notification-panel.notification-panel.show,
    .ui-theme-theme-2 #kt_ui_theme_menu_toggle > .menu-sub-dropdown,
    .ui-theme-theme-2 #kt_ui_theme_menu_toggle > .menu-sub-dropdown.show,
    .ui-theme-theme-2 #kt_header_user_menu_toggle > .menu-sub-dropdown,
    .ui-theme-theme-2 #kt_header_user_menu_toggle > .menu-sub-dropdown.show {
        z-index: 12020 !important;
    }

    .ui-theme-theme-2 #kt_app_toolbar,
    .ui-theme-theme-2 #kt_app_footer {
        max-width: 100vw !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 #kt_app_content_container.app-container,
    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 #kt_app_header_container.app-container,
    body[data-kt-app-layout=dark-sidebar] .ui-theme-theme-2 #kt_app_footer .app-container {
        padding-right: 12px !important;
        padding-left: 12px !important;
    }

    .ui-theme-theme-2 #kt_app_content,
    .ui-theme-theme-2 #kt_app_content_container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }
}

/* =========================================================
   Dashboard Cards — Tablet-specific responsive (768–1199px)
   ========================================================= */
@media (min-width: 768px) and (max-width: 1199px) {
    .omid-executive-hero {
        min-height: auto !important;
        padding: 1.5rem !important;
        gap: 1rem !important;
    }

    .omid-executive-hero h1 {
        font-size: clamp(1.4rem, 3.5vw, 2rem) !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }

    .omid-module-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: .85rem !important;
    }

    .omid-module-card {
        min-height: 200px !important;
        min-width: 0 !important;
    }

    .omid-module-card strong {
        font-size: clamp(2.2rem, 4vw, 3.2rem) !important;
    }

    .omid-mini-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .omid-executive-dashboard,
    .omid-detail-shell,
    .omid-detail-panel,
    .omid-two-col,
    .omid-mini-grid,
    .omid-module-grid {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}

@media (max-width: 575px) {
    .omid-module-grid,
    .omid-mini-grid,
    .omid-two-col {
        grid-template-columns: 1fr !important;
    }
}

/* ===== Select2 Dropdown Overrides ===== */
.select2-container--bootstrap5 .select2-dropdown {
    background-color: #f5f8fa;
    border: 1px solid #e4e6ef;
    box-shadow: 0 0 50px 0 rgba(82, 63, 105, 0.22);
}

[data-bs-theme=dark] .select2-container--bootstrap5 .select2-dropdown {
    background-color: #1e2130;
    border: 1px solid #2d2f45;
}

.select2-container--bootstrap5 .select2-dropdown .select2-results__option {
    color: #252f4a;
}

[data-bs-theme=dark] .select2-container--bootstrap5 .select2-dropdown .select2-results__option {
    color: #b5b7c8;
}

.select2-container--bootstrap5 .select2-dropdown .select2-results__option.select2-results__message {
    color: #4b5675;
}

[data-bs-theme=dark] .select2-container--bootstrap5 .select2-dropdown .select2-results__option.select2-results__message {
    color: #808290;
}
