/* =========================================================================
   IKH Dashboard – Modern UI layer
   Pure presentation overrides loaded after the Metronic bundles and the
   legacy _base.css / custom_styles.css. No markup or behaviour changes.
   ========================================================================= */

:root {
    --ikh-brand: #3C151A;
    --ikh-brand-dark: #2a0e12;
    --ikh-brand-hover: #4d1b22;
    --ikh-brand-soft: #f6eeef;
    --ikh-brand-soft-2: #ecdcde;
    --ikh-brand-ring: rgba(60, 21, 26, 0.14);

    --ikh-bg: #f4f5f8;
    --ikh-surface: #ffffff;
    --ikh-border: #e8eaef;
    --ikh-border-strong: #d9dce3;

    --ikh-text: #1f2430;
    --ikh-text-2: #4b5563;
    --ikh-muted: #8a919e;

    --ikh-radius-sm: 10px;
    --ikh-radius: 14px;
    --ikh-radius-lg: 18px;

    --ikh-shadow-xs: 0 1px 2px rgba(16, 24, 40, 0.04);
    --ikh-shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.04), 0 6px 20px rgba(16, 24, 40, 0.05);
    --ikh-shadow-md: 0 8px 28px rgba(16, 24, 40, 0.10);
    --ikh-shadow-brand: 0 8px 18px rgba(60, 21, 26, 0.28);

    --ikh-ease: cubic-bezier(.2, .7, .2, 1);
}

/* -------------------------------------------------------------------------
   Base canvas
   ------------------------------------------------------------------------- */
body,
.wrapper,
#kt_body {
    background: var(--ikh-bg) !important;
    color: var(--ikh-text);
}

.content {
    padding-top: 22px !important;
}

#kt_content_container {
    padding-inline: 28px;
}

::selection {
    background: var(--ikh-brand);
    color: #fff;
}

/* Thin, quiet scrollbars */
*::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
*::-webkit-scrollbar-thumb {
    background: #cfd3db;
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: padding-box;
}
*::-webkit-scrollbar-thumb:hover {
    background: #b8bdc8;
    background-clip: padding-box;
    border: 2px solid transparent;
}
*::-webkit-scrollbar-track {
    background: transparent;
}
.hover-scroll-overlay-y {
    scrollbar-color: #cfd3db transparent !important;
    scrollbar-width: thin;
}

/* -------------------------------------------------------------------------
   Sidebar
   ------------------------------------------------------------------------- */
.aside,
.aside.aside-dark,
.aside-logo {
    background: var(--ikh-surface) !important;
    box-shadow: none !important;
}

.aside {
    border-inline-end: 1px solid var(--ikh-border);
}

.aside-logo {
    padding: 14px 22px !important;
    border-bottom: 1px solid var(--ikh-border);
    height: 66px !important;
}

.aside-logo .logo {
    max-height: 38px;
    width: auto !important;
    margin-inline: auto;
}

.aside-menu .menu {
    padding-inline: 12px;
}

.aside-dark .menu .menu-item .menu-content {
    padding-top: 22px !important;
    padding-bottom: 6px !important;
    padding-inline: 12px !important;
}

.aside-dark .menu .menu-item .menu-section {
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: .9px !important;
    text-transform: uppercase !important;
    color: var(--ikh-muted) !important;
}

.aside-menu .menu .menu-item {
    margin-bottom: 2px;
}

.aside-menu .menu .menu-item .menu-link {
    border-radius: var(--ikh-radius-sm) !important;
    padding: 9px 12px !important;
    min-height: 42px;
    color: var(--ikh-text-2) !important;
    transition: background .18s var(--ikh-ease), color .18s var(--ikh-ease), box-shadow .18s var(--ikh-ease);
}

.aside-dark .menu .menu-item .menu-link .menu-title {
    color: var(--ikh-text-2) !important;
    font-weight: 500 !important;
    font-size: 13.5px;
}

/* Icon in a soft tile */
.aside-dark .menu .menu-item .menu-link .menu-icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: #f2f3f6;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-inline-end: 10px;
    flex: none;
    transition: background .18s var(--ikh-ease), color .18s var(--ikh-ease);
}

.aside-dark .menu .menu-item .menu-link .menu-icon i {
    color: var(--ikh-text-2) !important;
    font-size: 14px !important;
}

/* Hover: soft brand tint instead of a heavy dark block */
.aside-dark .menu .menu-item:not(.here) .menu-link:hover:not(.disabled):not(.active):not(.here),
.aside-dark .menu .menu-item.hover:not(.here) > .menu-link:not(.disabled):not(.active):not(.here) {
    background: var(--ikh-brand-soft) !important;
    border-radius: var(--ikh-radius-sm) !important;
}
.aside-dark .menu .menu-item:not(.here) .menu-link:hover:not(.disabled):not(.active):not(.here) .menu-title,
.aside-dark .menu .menu-item.hover:not(.here) > .menu-link:not(.disabled):not(.active):not(.here) .menu-title {
    color: var(--ikh-brand) !important;
}
.aside-dark .menu .menu-item:not(.here) .menu-link:hover:not(.disabled):not(.active):not(.here) .menu-icon {
    background: var(--ikh-brand-soft-2);
}
.aside-dark .menu .menu-item:not(.here) .menu-link:hover:not(.disabled):not(.active):not(.here) .menu-icon i,
.aside-dark .menu .menu-item:not(.here) .menu-link:hover:not(.disabled):not(.active):not(.here) .menu-bullet span {
    color: var(--ikh-brand) !important;
}

/* Active / open parent */
.aside-dark .menu .menu-item .menu-link.active,
.aside-dark .menu .menu-item.here > .menu-link,
.aside-dark .menu .menu-item.show > .menu-link {
    background: var(--ikh-brand) !important;
    border-radius: var(--ikh-radius-sm) !important;
    box-shadow: var(--ikh-shadow-brand);
}
.aside-dark .menu .menu-item .menu-link.active .menu-title,
.aside-dark .menu .menu-item.here > .menu-link .menu-title,
.aside-dark .menu .menu-item.show > .menu-link .menu-title {
    color: #fff !important;
    font-weight: 600 !important;
}
.aside-dark .menu .menu-item .menu-link.active .menu-icon,
.aside-dark .menu .menu-item.here > .menu-link .menu-icon,
.aside-dark .menu .menu-item.show > .menu-link .menu-icon {
    background: rgba(255, 255, 255, 0.16);
}
.aside-dark .menu .menu-item .menu-link.active .menu-icon i,
.aside-dark .menu .menu-item.here > .menu-link .menu-icon i,
.aside-dark .menu .menu-item.show > .menu-link .menu-icon i,
.aside-dark .menu .menu-item .menu-link.active .menu-bullet span,
.aside-dark .menu .menu-item .menu-link.active .menu-arrow,
.aside-dark .menu .menu-item.here > .menu-link .menu-arrow,
.aside-dark .menu .menu-item.show > .menu-link .menu-arrow {
    color: #fff !important;
}
/* The arrow is an SVG background-image in Metronic; keep it transparent behind */
.aside-dark .menu .menu-item.show > .menu-link .menu-arrow:after,
.aside-dark .menu .menu-item.here > .menu-link .menu-arrow:after,
.aside-dark .menu .menu-item .menu-link.active .menu-arrow:after {
    background-color: transparent !important;
}

/* Sub menu */
.aside-dark .menu .menu-sub-accordion {
    margin: 4px 0 6px;
    padding: 4px 6px 4px;
    border-inline-start: 2px solid var(--ikh-border);
    margin-inline-start: 22px;
}
.aside-dark .menu .menu-sub-accordion .menu-item .menu-link {
    min-height: 36px;
    padding: 7px 10px !important;
}
.aside-dark .menu .menu-sub-accordion .menu-item .menu-link .menu-title {
    font-size: 13px;
}
.menu-item .menu-link .menu-bullet {
    width: 22px;
    margin-inline-end: 8px;
}
.menu-item .menu-link .menu-bullet span {
    color: var(--ikh-muted) !important;
    font-size: 11px;
}
.aside-dark .menu .menu-sub-accordion .menu-item .menu-link.active {
    box-shadow: none;
}

.menu-arrow {
    opacity: .6;
}

/* Collapsed (minimized) aside keeps tiles centred */
[data-kt-aside-minimize="on"] .aside:not(:hover) .menu-icon {
    margin-inline-end: 0 !important;
}

/* -------------------------------------------------------------------------
   Header & toolbar
   ------------------------------------------------------------------------- */
.header {
    background: rgba(255, 255, 255, 0.86) !important;
    backdrop-filter: saturate(160%) blur(10px);
    -webkit-backdrop-filter: saturate(160%) blur(10px);
    border-bottom: 1px solid var(--ikh-border) !important;
    box-shadow: none !important;
}

.header .page-title h1 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--ikh-text) !important;
    letter-spacing: -.1px;
}

.header .breadcrumb-item {
    font-size: 12.5px !important;
    font-weight: 500 !important;
}
.header .breadcrumb-item.text-muted {
    color: var(--ikh-muted) !important;
}
.header .breadcrumb .bullet {
    background: var(--ikh-border-strong) !important;
    width: 4px !important;
    height: 4px !important;
    border-radius: 50%;
}

#kt_aside_toggle,
#kt_aside_mobile_toggle {
    width: 38px !important;
    height: 38px !important;
    border-radius: 10px !important;
    background: #f2f3f6 !important;
    transition: background .18s var(--ikh-ease);
}
#kt_aside_toggle:hover,
#kt_aside_mobile_toggle:hover {
    background: var(--ikh-brand-soft) !important;
}
#kt_aside_toggle i,
#kt_aside_mobile_toggle i {
    font-size: 14px;
}

/* Header user / language / logout links */
#kt_header_user_menu_toggle a {
    padding: 6px 10px;
    border-radius: 10px;
    transition: background .18s var(--ikh-ease);
}
#kt_header_user_menu_toggle a:hover {
    background: #f2f3f6;
}
#kt_header_user_menu_toggle h2 {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--ikh-text-2) !important;
}
#kt_header_user_menu_toggle img {
    border-radius: 8px;
}

.toolbar {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
#kt_toolbar_container {
    padding-inline: 28px;
}

/* -------------------------------------------------------------------------
   Buttons
   ------------------------------------------------------------------------- */
.btn {
    border-radius: var(--ikh-radius-sm) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: .1px;
    padding: 10px 18px;
    line-height: 1.3;
    transition: background .18s var(--ikh-ease), color .18s var(--ikh-ease), box-shadow .18s var(--ikh-ease), transform .12s var(--ikh-ease), opacity .18s var(--ikh-ease) !important;
}
.btn:active:not(.btn-icon) {
    transform: translateY(1px);
}
.btn.btn-sm {
    padding: 8px 14px;
    font-size: 12.5px !important;
}
.btn i,
.btn .fa,
.btn .fas,
.btn .far {
    font-size: 12px;
}
.btn .svg-icon {
    margin-inline-end: 0;
}

/* Primary and all "black" action buttons share the brand colour */
.btn-primary,
.btn.btn-primary,
.btn.btn-primary:hover:not(.btn-active),
.btn.btn-primary:focus:not(.btn-active),
.btn.btn-primary:active,
.btn.\!bg-black,
.btn.bg-black,
.btn.btn-dark,
.cs-btn,
.btn-applay,
.btn-view {
    background: var(--ikh-brand) !important;
    border-color: var(--ikh-brand) !important;
    color: #fff !important;
    box-shadow: 0 1px 2px rgba(60, 21, 26, .25);
    opacity: 1 !important;
}
.btn-primary:hover,
.btn.btn-primary:hover,
.btn.\!bg-black:hover,
.btn.bg-black:hover,
.btn.btn-dark:hover,
.cs-btn:hover,
.btn-applay:hover,
.btn-view:hover {
    background: var(--ikh-brand-hover) !important;
    box-shadow: var(--ikh-shadow-brand) !important;
    opacity: 1 !important;
}
.btn-primary:focus-visible,
.btn.btn-primary:focus-visible {
    box-shadow: 0 0 0 4px var(--ikh-brand-ring) !important;
}
.btn.btn-primary i,
.btn.\!bg-black i,
.btn.bg-black i {
    color: #fff !important;
}

.btn-secondary,
.btn.btn-secondary,
.btn-light,
.btn.btn-light,
.reset-btn {
    background: #f2f3f6 !important;
    color: var(--ikh-text-2) !important;
    border-color: transparent !important;
}
.btn-secondary:hover,
.btn.btn-secondary:hover,
.btn-light:hover,
.btn.btn-light:hover,
.reset-btn:hover {
    background: var(--ikh-brand-soft) !important;
    color: var(--ikh-brand) !important;
    opacity: 1 !important;
}

.btn-success { background: #16a34a !important; border-color: #16a34a !important; }
.btn-danger { background: #dc2626 !important; border-color: #dc2626 !important; }
.btn-warning { background: #f59e0b !important; border-color: #f59e0b !important; color: #fff !important; }
.btn-info { background: #0284c7 !important; border-color: #0284c7 !important; color: #fff !important; }

.btn-outline,
.btn.btn-outline {
    border: 1.5px solid var(--ikh-border-strong) !important;
    background: #fff !important;
    color: var(--ikh-text-2) !important;
}
.btn.btn-outline:hover {
    border-color: var(--ikh-brand) !important;
    color: var(--ikh-brand) !important;
}

/* Icon buttons (table actions, header) */
.btn-icon,
.btn.btn-icon {
    background: #f2f3f6 !important;
    border-radius: 10px !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ikh-text-2) !important;
    transition: background .18s var(--ikh-ease), color .18s var(--ikh-ease), transform .12s var(--ikh-ease) !important;
}
.btn.btn-icon .svg-icon,
.btn.btn-icon .svg-icon svg,
.btn.btn-icon .svg-icon span {
    width: 16px;
    height: 16px;
    color: inherit;
}
.btn.btn-icon .svg-icon svg [fill] {
    fill: currentColor;
}
.btn.btn-icon i {
    font-size: 13px !important;
    color: inherit !important;
}
.btn.btn-icon:hover {
    background: var(--ikh-brand-soft) !important;
    color: var(--ikh-brand) !important;
    transform: translateY(-1px);
}
.btn.btn-icon.btn-active-color-danger:hover,
.btn.btn-icon.deleteButton:hover {
    background: #fef2f2 !important;
    color: #dc2626 !important;
}
.btn.btn-active-color-primary:hover:not(.btn-active) i {
    color: var(--ikh-brand) !important;
}
.btn.btn-icon + .btn.btn-icon,
.btn.btn-icon.me-1 {
    margin-inline-end: 6px !important;
}

/* Datatable toolbar buttons (print / export) */
.dt-buttons .btn,
.buttons-print,
.dt-button {
    background: #fff !important;
    color: var(--ikh-text-2) !important;
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-radius: var(--ikh-radius-sm) !important;
    padding: 8px 16px !important;
    font-weight: 600 !important;
}
.dt-buttons .btn:hover,
.buttons-print:hover,
.dt-button:hover {
    border-color: var(--ikh-brand) !important;
    color: var(--ikh-brand) !important;
    background: var(--ikh-brand-soft) !important;
}

/* -------------------------------------------------------------------------
   Cards
   ------------------------------------------------------------------------- */
.card {
    border: 1px solid var(--ikh-border) !important;
    border-radius: var(--ikh-radius-lg) !important;
    box-shadow: var(--ikh-shadow-sm) !important;
    background: var(--ikh-surface);
    overflow: hidden;
}
.card .card-header {
    background: transparent !important;
    border-bottom: 1px solid var(--ikh-border) !important;
    min-height: 60px !important;
    padding: 0 24px;
}
.card .card-header .card-title,
.card .card-header h3,
.card .card-header h5 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--ikh-text) !important;
}
.card .card-body {
    padding: 24px;
}
.card .card-footer {
    border-top: 1px solid var(--ikh-border) !important;
    background: #fafbfc !important;
}
.card.mb-3 {
    margin-bottom: 18px !important;
}

/* Dashboard home cards keep their colours, just get the same geometry */
.orders-card,
.dashboard-card {
    border-radius: var(--ikh-radius-lg) !important;
    border: 1px solid var(--ikh-border) !important;
    box-shadow: var(--ikh-shadow-sm) !important;
}

/* -------------------------------------------------------------------------
   Forms
   ------------------------------------------------------------------------- */
.form-label,
label.col-form-label,
.form-check-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--ikh-text-2) !important;
    margin-bottom: 6px !important;
}

.form-control,
.form-select,
.form-control-lg,
textarea.form-control,
input.form-control {
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: var(--ikh-text) !important;
    min-height: 46px;
    padding: 10px 14px;
    font-size: 13.5px;
    box-shadow: none !important;
    transition: border-color .18s var(--ikh-ease), box-shadow .18s var(--ikh-ease), background .18s var(--ikh-ease);
}
textarea.form-control {
    min-height: 110px;
}
.form-control::placeholder {
    color: #a3a9b4 !important;
    font-weight: 400;
}
.form-control:hover,
.form-select:hover {
    border-color: #c5cad4 !important;
}
.form-control:focus,
.form-select:focus {
    border-color: var(--ikh-brand) !important;
    box-shadow: 0 0 0 4px var(--ikh-brand-ring) !important;
    background: #fff !important;
}
.form-control.is-invalid,
.form-select.is-invalid {
    border-color: #dc2626 !important;
    box-shadow: 0 0 0 4px rgba(220, 38, 38, .12) !important;
}
.form-control:disabled,
.form-control[readonly] {
    background: #f6f7f9 !important;
    color: var(--ikh-muted) !important;
}
.form-control.form-control-solid {
    background: #f6f7f9 !important;
    border-color: transparent !important;
}
.form-control.form-control-solid:focus {
    background: #fff !important;
    border-color: var(--ikh-brand) !important;
}
.form-control-sm,
.form-select-sm {
    min-height: 38px;
    padding: 6px 12px;
    border-radius: 10px !important;
}

.input-group .form-control {
    border-start-end-radius: 0 !important;
    border-end-end-radius: 0 !important;
}
.input-group-text {
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-inline-start: 0 !important;
    background: #f6f7f9 !important;
    border-radius: 0 12px 12px 0 !important;
    color: var(--ikh-text-2) !important;
    font-weight: 600;
    font-size: 12.5px;
}
html[dir="rtl"] .input-group-text {
    border-radius: 12px 0 0 12px !important;
}
.input-group-text i {
    color: var(--ikh-text-2) !important;
}

/* Select2 (bootstrap5 theme) */
.select2-container--bootstrap5 .select2-selection {
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-radius: 12px !important;
    min-height: 46px !important;
    background: #fff !important;
    box-shadow: none !important;
    transition: border-color .18s var(--ikh-ease), box-shadow .18s var(--ikh-ease);
}
.select2-container--bootstrap5.select2-container--focus .select2-selection,
.select2-container--bootstrap5.select2-container--open .select2-selection {
    border-color: var(--ikh-brand) !important;
    box-shadow: 0 0 0 4px var(--ikh-brand-ring) !important;
}
.select2-container--bootstrap5 .select2-selection--single .select2-selection__rendered {
    color: var(--ikh-text) !important;
    font-size: 13.5px;
    line-height: 44px !important;
    padding-inline: 14px !important;
}
.select2-container--bootstrap5 .select2-selection--single .select2-selection__placeholder {
    color: #a3a9b4 !important;
}
.select2-container--bootstrap5 .select2-selection--multiple {
    padding: 4px 10px !important;
}
.select2-container--bootstrap5 .select2-selection--multiple .select2-selection__choice {
    background: var(--ikh-brand-soft) !important;
    border: 0 !important;
    color: var(--ikh-brand) !important;
    border-radius: 8px !important;
    font-weight: 600;
    font-size: 12px;
    padding: 4px 10px !important;
}
.select2-container--bootstrap5 .select2-selection--multiple .select2-selection__choice__remove {
    color: var(--ikh-brand) !important;
}
.select2-container--bootstrap5 .select2-dropdown {
    border: 1px solid var(--ikh-border) !important;
    border-radius: 14px !important;
    box-shadow: var(--ikh-shadow-md) !important;
    overflow: hidden;
    padding: 6px;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__option {
    border-radius: 9px;
    padding: 9px 12px !important;
    font-size: 13.5px;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__option.select2-results__option--highlighted {
    background: var(--ikh-brand-soft) !important;
    color: var(--ikh-brand) !important;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__option.select2-results__option--selected {
    background: var(--ikh-brand) !important;
    color: #fff !important;
}
.select2-container--bootstrap5 .select2-dropdown .select2-search .select2-search__field {
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
}

/* Checkboxes, radios, switches */
.form-check-input {
    border: 1.5px solid #c5cad4 !important;
    border-radius: 6px !important;
    width: 18px;
    height: 18px;
    transition: background .15s, border-color .15s;
}
.form-check-input[type="radio"] {
    border-radius: 50% !important;
}
.form-check-input:checked,
.form-check.form-check-solid .form-check-input:checked {
    background-color: var(--ikh-brand) !important;
    border-color: var(--ikh-brand) !important;
}
.form-check-input:focus {
    box-shadow: 0 0 0 4px var(--ikh-brand-ring) !important;
}
.form-switch .form-check-input {
    width: 40px;
    height: 22px;
    border-radius: 999px !important;
    background-color: #d9dce3 !important;
    border-color: transparent !important;
}
.form-switch .form-check-input:checked {
    background-color: var(--ikh-brand) !important;
}

/* Image picker */
.custom-image-file {
    border: 2px dashed #d0d4dc !important;
    border-radius: 16px !important;
    background: #fafbfc !important;
    transition: border-color .18s, background .18s;
}
.custom-image-file:hover {
    border-color: var(--ikh-brand) !important;
    background: var(--ikh-brand-soft) !important;
}
.custom-image-file-preview img {
    border-radius: 14px;
}

/* Validation text */
.invalid-feedback {
    font-size: 12px;
    font-weight: 500;
}

/* -------------------------------------------------------------------------
   Tables / DataTables
   ------------------------------------------------------------------------- */
.table {
    border-collapse: separate !important;
    border-spacing: 0;
    color: var(--ikh-text);
}
.table > :not(:last-child) {
    border: 0 !important;
}
.table thead th,
.table > :not(:last-child) > :last-child > * {
    background: #f7f8fa !important;
    color: var(--ikh-text-2) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: .6px;
    text-transform: uppercase;
    padding: 13px 14px !important;
    border-bottom: 1px solid var(--ikh-border) !important;
    border-top: 1px solid var(--ikh-border) !important;
    white-space: nowrap;
    vertical-align: middle;
}
.table thead th:first-child {
    border-start-start-radius: 12px !important;
    border-end-start-radius: 12px !important;
    border-inline-start: 1px solid var(--ikh-border) !important;
}
.table thead th:last-child {
    border-start-end-radius: 12px !important;
    border-end-end-radius: 12px !important;
    border-inline-end: 1px solid var(--ikh-border) !important;
    border-top-right-radius: initial;
    border-bottom-right-radius: initial;
}
.table th:first-child,
.table th:last-child {
    border-bottom-left-radius: initial;
    border-top-right-radius: initial;
    border-bottom-right-radius: initial;
}
.table tbody td {
    padding: 14px 14px !important;
    font-size: 13.5px;
    color: var(--ikh-text);
    border: 0 !important;
    border-bottom: 1px solid #f0f1f4 !important;
    vertical-align: middle;
    background: transparent !important;
}
.table.table-row-bordered tr,
.table.table-row-bordered td {
    border-color: #f0f1f4 !important;
}
.table tbody tr {
    transition: background .15s var(--ikh-ease);
}
.table tbody tr:hover > td {
    background: #fbf8f8 !important;
}
.table-striped > tbody > tr:nth-of-type(odd) > * {
    background: transparent !important;
}
.table tbody tr:last-child td {
    border-bottom: 0 !important;
}
.table a {
    color: var(--ikh-brand);
    font-weight: 500;
}
.table a:hover {
    text-decoration: underline;
}

/* Status selects embedded in table rows */
.table .form-control.change_status,
.table select.form-control {
    min-height: 38px;
    padding: 6px 30px 6px 12px;
    font-size: 12.5px;
    font-weight: 600;
    border-radius: 10px !important;
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px !important;
    appearance: none;
    -webkit-appearance: none;
    min-width: 130px;
}
html[dir="rtl"] .table .form-control.change_status,
html[dir="rtl"] .table select.form-control {
    padding: 6px 12px 6px 30px;
    background-position: left 10px center !important;
}
.table .form-control.change_status:disabled {
    background-color: #f6f7f9 !important;
    color: var(--ikh-muted) !important;
}

/* DataTables chrome: search, length, info, pagination */
.dataTables_wrapper .dataTables_filter {
    margin-bottom: 6px;
}
.dataTables_wrapper .dataTables_filter label {
    font-size: 13px;
    font-weight: 600;
    color: var(--ikh-text-2);
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.dataTables_wrapper .dataTables_filter input {
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-radius: 12px !important;
    min-height: 42px;
    width: 260px;
    padding: 8px 14px 8px 38px !important;
    background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a919e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3ccircle cx='11' cy='11' r='7'/%3e%3cpath d='m20 20-3.5-3.5'/%3e%3c/svg%3e") no-repeat 12px center / 16px !important;
    margin-inline-start: 0 !important;
    font-size: 13.5px;
    transition: border-color .18s, box-shadow .18s;
}
html[dir="rtl"] .dataTables_wrapper .dataTables_filter input {
    padding: 8px 38px 8px 14px !important;
    background-position: calc(100% - 12px) center !important;
}
.dataTables_wrapper .dataTables_filter input:focus {
    outline: 0;
    border-color: var(--ikh-brand) !important;
    box-shadow: 0 0 0 4px var(--ikh-brand-ring) !important;
}
.dataTables_wrapper .dataTables_length label {
    font-size: 13px;
    color: var(--ikh-text-2);
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.dataTables_wrapper .dataTables_length select {
    border: 1.5px solid var(--ikh-border-strong) !important;
    border-radius: 10px !important;
    min-height: 40px;
    padding: 6px 12px;
    background-color: #fff !important;
    font-weight: 600;
    font-size: 13px;
}
.dataTables_wrapper .dataTables_info {
    font-size: 12.5px !important;
    color: var(--ikh-muted) !important;
    font-weight: 500;
    padding-top: 16px !important;
}
.dataTables_wrapper .dataTables_paginate {
    padding-top: 12px !important;
}
.dataTables_wrapper .dataTables_paginate .pagination {
    gap: 4px;
}
.page-link,
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item .page-link {
    border: 0 !important;
    border-radius: 10px !important;
    min-width: 36px;
    height: 36px;
    padding: 0 10px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ikh-text-2) !important;
    font-weight: 600;
    font-size: 13px;
    background: transparent !important;
    transition: background .15s, color .15s;
}
.page-link:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item:hover:not(.disabled) .page-link {
    background: var(--ikh-brand-soft) !important;
    color: var(--ikh-brand) !important;
}
.page-item.active .page-link,
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item.active .page-link {
    background: var(--ikh-brand) !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(60, 21, 26, .25);
}
.page-item.disabled .page-link {
    color: #c3c8d1 !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item.previous .page-link,
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item.next .page-link {
    background: #f2f3f6 !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item.previous .page-link:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.page-item.next .page-link:hover {
    background: var(--ikh-brand-soft) !important;
}
.dataTables_wrapper .dataTable td.dataTables_empty {
    padding: 48px 20px !important;
    color: var(--ikh-muted);
    font-weight: 500;
}
.dataTables_wrapper .dataTables_processing {
    border-radius: 12px;
    box-shadow: var(--ikh-shadow-md);
    border: 1px solid var(--ikh-border);
}

/* Sorting indicator */
table.dataTable thead .sorting:before,
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after {
    opacity: .35;
}
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after {
    color: var(--ikh-brand);
    opacity: 1;
}

/* -------------------------------------------------------------------------
   Badges & status pills
   ------------------------------------------------------------------------- */
.badge {
    border-radius: 999px !important;
    padding: 5px 11px !important;
    font-weight: 600 !important;
    font-size: 11.5px !important;
    letter-spacing: .2px;
}
.badge-light-primary, .badge.badge-light-primary { background: var(--ikh-brand-soft) !important; color: var(--ikh-brand) !important; }
.badge-light-success, .badge.badge-light-success { background: #ecfdf5 !important; color: #047857 !important; }
.badge-light-danger, .badge.badge-light-danger { background: #fef2f2 !important; color: #b91c1c !important; }
.badge-light-warning, .badge.badge-light-warning { background: #fffbeb !important; color: #b45309 !important; }
.badge-light-info, .badge.badge-light-info { background: #eff6ff !important; color: #1d4ed8 !important; }
.badge-primary, .badge.badge-primary { background: var(--ikh-brand) !important; }

/* -------------------------------------------------------------------------
   Tabs, accordions, dropdowns
   ------------------------------------------------------------------------- */
.nav-line-tabs {
    border-bottom: 1px solid var(--ikh-border) !important;
    gap: 4px;
}
.nav-line-tabs .nav-item .nav-link {
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    padding: 12px 16px !important;
    font-weight: 600 !important;
    font-size: 13.5px;
    color: var(--ikh-text-2) !important;
    transition: color .15s, border-color .15s;
}
.nav-line-tabs .nav-item .nav-link.active,
.nav-line-tabs .nav-item .nav-link:hover:not(.disabled) {
    color: var(--ikh-brand) !important;
    border-right: 0 !important;
    border-left: 0 !important;
    border-bottom: 2px solid var(--ikh-brand) !important;
    background: transparent !important;
}
.nav-pills .nav-link {
    border-radius: 10px !important;
    font-weight: 600 !important;
}
.nav-pills .nav-link.active {
    background: var(--ikh-brand) !important;
    color: #fff !important;
}

.accordion-item {
    border: 1px solid var(--ikh-border) !important;
    border-radius: 14px !important;
    background: #fff !important;
    overflow: hidden;
    margin-bottom: 12px !important;
}
.accordion-button {
    background: #fff !important;
    font-weight: 600 !important;
    color: var(--ikh-text) !important;
    padding: 16px 20px;
    box-shadow: none !important;
}
.accordion-button:not(.collapsed) {
    background: var(--ikh-brand-soft) !important;
    color: var(--ikh-brand) !important;
}

.dropdown-menu,
.menu.menu-sub-dropdown {
    border: 1px solid var(--ikh-border) !important;
    border-radius: 14px !important;
    box-shadow: var(--ikh-shadow-md) !important;
    padding: 6px !important;
}
.dropdown-item,
.menu.menu-sub-dropdown .menu-link {
    border-radius: 9px !important;
    padding: 9px 12px !important;
    font-size: 13.5px;
}
.dropdown-item:hover,
.menu.menu-sub-dropdown .menu-link:hover {
    background: var(--ikh-brand-soft) !important;
    color: var(--ikh-brand) !important;
}

/* -------------------------------------------------------------------------
   Modals, alerts, tooltips
   ------------------------------------------------------------------------- */
.modal {
    background: rgba(17, 24, 39, 0.45) !important;
    backdrop-filter: blur(3px);
}
.modal-content {
    border: 0 !important;
    border-radius: var(--ikh-radius-lg) !important;
    box-shadow: 0 24px 60px rgba(15, 23, 42, .18) !important;
}
.modal-header {
    border-bottom: 1px solid var(--ikh-border) !important;
    padding: 20px 4px;
}
.modal-title {
    font-weight: 700 !important;
    font-size: 16px !important;
}
.modal-footer {
    border-top: 1px solid var(--ikh-border) !important;
    padding: 16px 4px;
    gap: 8px;
}
.modal-header .close,
.modal-header .btn-close {
    border-radius: 10px;
    background-color: #f2f3f6;
    width: 34px;
    height: 34px;
    opacity: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    font-size: 20px;
    color: var(--ikh-text-2);
}

/* SweetAlert2 */
.swal2-popup {
    border-radius: var(--ikh-radius-lg) !important;
    padding: 28px 26px 24px !important;
    box-shadow: 0 24px 60px rgba(15, 23, 42, .18) !important;
}
.swal2-title {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: var(--ikh-text) !important;
}
.swal2-html-container {
    font-size: 14px !important;
    color: var(--ikh-text-2) !important;
    line-height: 1.7;
}
.swal2-styled {
    border-radius: 10px !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    padding: 11px 22px !important;
    box-shadow: none !important;
}
.swal2-styled.swal2-confirm {
    background-color: var(--ikh-brand) !important;
}
.swal2-styled.swal2-confirm:hover {
    background-color: var(--ikh-brand-hover) !important;
}
.swal2-styled.swal2-cancel {
    background-color: #f2f3f6 !important;
    color: var(--ikh-text-2) !important;
}
.swal2-styled:focus {
    box-shadow: 0 0 0 4px var(--ikh-brand-ring) !important;
}
.swal2-icon {
    border-width: 3px !important;
}
.swal2-validation-message {
    border-radius: 10px;
    background: #fef2f2 !important;
    color: #b91c1c !important;
}

/* Toastr */
#toast-container > div {
    border-radius: 14px !important;
    box-shadow: var(--ikh-shadow-md) !important;
    opacity: 1 !important;
    padding: 14px 16px 14px 50px !important;
    font-size: 13.5px;
}
html[dir="rtl"] #toast-container > div {
    padding: 14px 50px 14px 16px !important;
    background-position: right 15px center !important;
}
#toast-container > .toast-success { background-color: #16a34a !important; }
#toast-container > .toast-error { background-color: #dc2626 !important; }
#toast-container > .toast-warning { background-color: #f59e0b !important; }
#toast-container > .toast-info { background-color: #0284c7 !important; }

/* Bootstrap alerts */
.alert {
    border-radius: 12px !important;
    border: 0 !important;
    font-weight: 500;
}

/* Tooltips */
.tooltip .tooltip-inner {
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 500;
    background: #111827;
}

/* -------------------------------------------------------------------------
   Misc polish
   ------------------------------------------------------------------------- */
.breadcrumb {
    gap: 4px;
}

hr,
.separator {
    border-color: var(--ikh-border) !important;
}

.text-muted {
    color: var(--ikh-muted) !important;
}

.scrolltop {
    background: var(--ikh-brand) !important;
    border-radius: 12px !important;
    box-shadow: var(--ikh-shadow-brand) !important;
}

/* Links default */
a {
    transition: color .15s var(--ikh-ease);
}

/* Page transitions feel smoother */
.card,
.btn,
.form-control,
.menu-link {
    will-change: auto;
}

/* Focus visibility for keyboard users */
:focus-visible {
    outline: 2px solid var(--ikh-brand);
    outline-offset: 2px;
}
.btn:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible {
    outline: 0;
}

/* Small screens */
@media (max-width: 991.98px) {
    #kt_content_container,
    #kt_toolbar_container {
        padding-inline: 16px;
    }
    .card .card-body {
        padding: 18px;
    }
    .dataTables_wrapper .dataTables_filter input {
        width: 100%;
    }
}
