/* =============================================================
   Bukolay Bayi Paneli — Banking Theme v3
   ============================================================= */
:root {
    --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --bg: #eef1f6;
    --surface: #eff0ff;
    --border: #d8dfe8;
    --text: #0f172a;
    --text-sm: #4e637a;
    --primary: #0e4da4;
    --primary-d: #0a3d8a;
    --primary-bg: #e8f0fb;
    --primary-light: #3b76d4;
    --success: #0e7a4a;
    --warning: #c47a00;
    --danger: #c42b2b;
    --info: #0369a1;
    --sidebar-bg: linear-gradient(159deg, #002353 0%, #465f98 50%, #002353 100%) !important;
    --sidebar-hover: #0e4da4;
    --sidebar-active: #0e4da4;
    --navbar-bg: #002353;
    --sidebar-w: 250px;
    --header-h: 52px;
    --r: 6px;
    --shadow-xs: 0 1px 3px rgba(0,0,0,.07);
    --shadow-sm: 0 2px 6px rgba(0,0,0,.09);
    --shadow-md: 0 4px 16px rgba(0,0,0,.12);
    --shadow-lg: 0 8px 30px rgba(0,0,0,.16);
}
/* ── Base ── */
*, *::before, *::after { box-sizing: border-box; }
html, body { font-family: var(--font) !important; font-size: 13px !important; color: var(--text); background: var(--bg); margin: 0; }
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #c1cad5; border-radius: 4px; }

/* ── Header / Navbar ── */
.main-header.navbar {
  background: var(--navbar-bg) !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  min-height: var(--header-h) !important;
  padding: 0 1rem !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.35) !important;
  z-index: 1035 !important;
}
.main-header .navbar-nav .nav-link { color: #fecc00 !important; font-size: 13px !important; padding: .4rem .65rem !important; transition: color .15s; }
.main-header .navbar-nav .nav-link:hover { color: #e2e8f0 !important; }
.navbar-badge { font-size: 9px !important; font-weight: 700 !important; padding: 2px 5px !important; min-width: 16px !important; }
.navbar .dropdown-menu { border: 1px solid var(--border) !important; border-radius: var(--r) !important; box-shadow: var(--shadow-lg) !important; font-size: 12.5px !important; padding: .3rem 0 !important; min-width: 200px; }
.navbar .dropdown-item { padding: .46rem 1.1rem !important; font-size: 12.5px !important; color: var(--text) !important; }
.navbar .dropdown-item:hover { background: var(--primary-bg) !important; color: var(--primary) !important; }
.navbar .dropdown-divider { margin: .3rem 0 !important; border-color: var(--border) !important; }
.navbar .dropdown-item-text { font-size: 11px !important; padding: .4rem 1.1rem !important; color: var(--text-sm) !important; }

/* ── Sidebar ── */
.sidebar{ padding-left:0px; }
.main-sidebar { background: var(--sidebar-bg) !important; width: var(--sidebar-w) !important; border-right: none !important; box-shadow: 3px 0 12px rgba(0,0,0,.3) !important; transition: width .3s ease !important; overflow: hidden !important; }
.sidebar-mini.sidebar-collapse .main-sidebar { width: 4.6rem !important; }
.sidebar-mini.sidebar-collapse .main-sidebar:hover { width: var(--sidebar-w) !important; }
.sidebar-mini.sidebar-collapse .content-wrapper,
.sidebar-mini.sidebar-collapse .main-footer { margin-left: 4.6rem; }
.brand-link {
    background: #002353 !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    padding: 0 1rem !important;
    height: var(--header-h) !important;
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    overflow: hidden !important;
}
.brand-link .brand-logo { width: 30px; height: 30px; object-fit: contain; flex-shrink: 0; }
.brand-text { font-size: 16px !important; font-weight: 600 !important; color: #e2e8f0 !important; margin-left: .6rem !important; line-height: 1.25 !important; white-space: nowrap; }
.brand-text span.brand-sub { font-size: 12px !important; color: #4e708e !important; display: block !important; font-weight: 400 !important; }
.sidebar { padding-top: .4rem !important; overflow-y: auto !important; overflow-x: hidden !important; }
.nav-sidebar .nav-header { font-size: 9px !important; font-weight: 700 !important; color: #9f9f9f !important; letter-spacing: .12em !important; padding: .8rem 1rem .25rem !important; text-transform: uppercase !important; white-space: nowrap; }
.nav-sidebar > .nav-item > .nav-link {color: #d9d9d9 !important;font-size: 12.5px !important;font-weight: 400 !important;padding: .5rem 1rem !important;border-radius: 6px !important;margin: 1px 8px !important;transition: all .18s !important;white-space: nowrap;overflow: hidden;display: flex !important;align-items: center !important;}
.nav-sidebar > .nav-item > .nav-link:hover { background: var(--sidebar-hover) !important; color: #c8d8e8 !important; }
.nav-sidebar > .nav-item > .nav-link.active { background: var(--primary) !important; color: #fff !important; font-weight: 500 !important; box-shadow: 0 2px 8px rgba(14,77,164,.4) !important; }
.nav-sidebar .nav-icon { font-size: 13px !important; width: 1.2rem !important; margin-right: .6rem !important; color: #fbc901  !important; flex-shrink: 0 !important; }
.nav-sidebar .nav-link.active .nav-icon, .nav-sidebar .nav-link:hover .nav-icon { color: inherit !important; }
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active { background: var(--primary) !important; }
.sidebar .badge.right { font-size: 8.5px !important; padding: 2px 5px !important; }

/* ── Content ── */
.content-wrapper { background: var(--bg) !important; margin-left: var(--sidebar-w) !important; transition: margin-left .3s ease !important; min-height: calc(100vh - var(--header-h)) !important; }
.content-header { background: var(--surface) !important; border-bottom: 1px solid var(--border) !important; padding: .65rem 1.25rem !important; box-shadow: var(--shadow-xs) !important; }
.content-header h1 { font-size: 15px !important; font-weight: 600 !important; color: var(--text) !important; margin: 0 !important; letter-spacing: -.01em; }
.breadcrumb { background: transparent !important; padding: 0 !important; margin: 0 !important; font-size: 11px !important; }
.breadcrumb-item a { color: var(--primary) !important; }
.breadcrumb-item.active { color: var(--text-sm) !important; }
.breadcrumb-item + .breadcrumb-item::before { color: #b0bec5 !important; }
section.content { padding: .9rem 1.1rem !important; }

/* ── Cards ── */
.card { border: 1px solid var(--border) !important; border-radius: var(--r) !important; box-shadow: var(--shadow-xs) !important; margin-bottom: .85rem !important; }
.card-header { background: var(--surface) !important; border-bottom: 1px solid var(--border) !important; padding: .85rem .9rem !important; }
.card-title { font-size: 12.5px !important; font-weight: 600 !important; color: var(--text) !important; margin-bottom: 0 !important; }
.card-title i { color: var(--text-sm) !important; margin-right: .4rem; }
.card-body { padding: .75rem .9rem !important; }
.card-tools { margin-top: -2px; }
.card-primary.card-outline { border-top: 2px solid var(--primary) !important; }
.card-info.card-outline { border-top: 2px solid var(--info) !important; }
.card-success.card-outline { border-top: 2px solid var(--success) !important; }
.card-warning.card-outline { border-top: 2px solid var(--warning) !important; }
.card-danger.card-outline { border-top: 2px solid var(--danger) !important; }
.card-secondary.card-outline { border-top: 2px solid #64748b !important; }
.card-light > .card-header { background: #f8fafc !important; }

/* ── Info Boxes ── */
.info-box { border-radius: var(--r) !important; min-height: 70px !important; box-shadow: var(--shadow-sm) !important; padding: .65rem !important; border: 1px solid var(--border) !important; background: var(--surface) !important; margin-bottom: .85rem !important; display: flex !important; align-items: center !important; transition: box-shadow .2s, transform .2s !important; }
.info-box:hover { box-shadow: var(--shadow-md) !important; transform: translateY(-1px); }
.info-box-icon { width: 50px !important; min-height: 50px !important; line-height: 50px !important; border-radius: 8px !important; font-size: 1.15rem !important; flex-shrink: 0 !important; text-align: center !important; }
.info-box-content { padding: .1rem .7rem !important; }
.info-box-text { font-size: 10px !important; font-weight: 700 !important; color: var(--text-sm) !important; text-transform: uppercase !important; letter-spacing: .07em !important; display: block; }
.info-box-number { font-size: 1.25rem !important; font-weight: 700 !important; color: var(--text) !important; line-height: 1.3 !important; }
.bg-gradient-primary { background: linear-gradient(135deg,#0e4da4,#0a3d8a) !important; border-color: transparent !important; }
.bg-gradient-success { background: linear-gradient(135deg,#0e7a4a,#0a6038) !important; border-color: transparent !important; }
.bg-gradient-warning { background: linear-gradient(135deg,#c47a00,#a36600) !important; border-color: transparent !important; }
.bg-gradient-info { background: linear-gradient(135deg,#0369a1,#025080) !important; border-color: transparent !important; }
.bg-gradient-secondary { background: linear-gradient(135deg,#3a5068,#2a3d52) !important; border-color: transparent !important; }
.bg-gradient-danger { background: linear-gradient(135deg,#c42b2b,#a32323) !important; border-color: transparent !important; }
.bg-gradient-primary .info-box-text, .bg-gradient-primary .info-box-number,
.bg-gradient-success .info-box-text, .bg-gradient-success .info-box-number,
.bg-gradient-warning .info-box-text, .bg-gradient-warning .info-box-number,
.bg-gradient-info .info-box-text, .bg-gradient-info .info-box-number,
.bg-gradient-secondary .info-box-text, .bg-gradient-secondary .info-box-number,
.bg-gradient-danger .info-box-text, .bg-gradient-danger .info-box-number { color: rgba(255,255,255,.92) !important; }
.bg-gradient-primary .info-box-icon, .bg-gradient-success .info-box-icon,
.bg-gradient-warning .info-box-icon, .bg-gradient-info .info-box-icon,
.bg-gradient-secondary .info-box-icon, .bg-gradient-danger .info-box-icon { background: rgba(255,255,255,.15) !important; color: #fff !important; }

/* ── Forms ── */
.form-control { font-size: 12.5px !important; height: calc(1.7em + .7rem + 2px); padding: .3rem .55rem !important; border-color: var(--border) !important; border-radius: var(--r) !important; color: var(--text) !important; background: #fff !important; transition: border-color .15s, box-shadow .15s !important; }
.form-control:focus { border-color: var(--primary) !important; box-shadow: 0 0 0 3px rgba(37,99,235,.10) !important; outline: none !important; }
select.form-control { -webkit-appearance: auto; appearance: auto; }
textarea.form-control { height: auto !important; }
.form-group { margin-bottom: .6rem !important; }
label { font-size: 11.5px !important; font-weight: 500 !important; color: var(--text-sm) !important; margin-bottom: .18rem !important; display: block; }
.input-group-text { font-size: 12px !important; border-color: var(--border) !important; background: #f8fafc !important; color: var(--text-sm) !important; padding: .3rem .55rem !important; }
.custom-control-label { font-size: 12.5px !important; cursor: pointer; }
.custom-control-label::before { border-color: var(--border) !important; }
.custom-switch .custom-control-input:checked ~ .custom-control-label::before { background: var(--primary) !important; border-color: var(--primary) !important; }

/* ── Buttons ── */
.btn { font-size: 12px !important; font-weight: 500 !important; padding: .5rem .75rem !important; border-radius: var(--r) !important; transition: all .18s !important; letter-spacing: .01em !important; line-height: 1.5 !important; }
.btn-sm { font-size: 11.5px !important; padding: .3rem .85rem !important; }
.btn-xs { font-size: 10.5px !important; padding: .13rem .4rem !important; border-radius: 4px !important; }
.btn-lg { font-size: 13.5px !important; padding: .5rem 1.25rem !important; }
.btn-block { display: block !important; width: 100% !important; }
.btn-primary { background: var(--primary) !important; border-color: var(--primary) !important; color: #fff !important; box-shadow: 0 1px 3px rgba(14,77,164,.25) !important; }
.btn-primary:hover { background: var(--primary-d) !important; border-color: var(--primary-d) !important; box-shadow: 0 2px 6px rgba(14,77,164,.35) !important; }
.btn-success { background: var(--success) !important; border-color: var(--success) !important; color: #fff !important; }
.btn-success:hover { background: #0a6038 !important; border-color: #0a6038 !important; }
.btn-warning { background: var(--warning) !important; border-color: var(--warning) !important; color: #fff !important; }
.btn-warning:hover { background: #a36600 !important; border-color: #a36600 !important; }
.btn-danger { background: var(--danger) !important; border-color: var(--danger) !important; color: #fff !important; }
.btn-danger:hover { background: #a32323 !important; border-color: #a32323 !important; }
.btn-info { background: var(--info) !important; border-color: var(--info) !important; color: #fff !important; }
.btn-info:hover { background: #025080 !important; border-color: #025080 !important; }
.btn-secondary { background: #4e637a !important; border-color: #4e637a !important; color: #fff !important; }
.btn-secondary:hover { background: #3a4f63 !important; border-color: #3a4f63 !important; }
.btn-default, .btn-light { background: #f0f4f9 !important; border-color: var(--border) !important; color: var(--text) !important; }
.btn-default:hover, .btn-light:hover { background: #e2eaf3 !important; }
.btn-outline-primary { color: var(--primary) !important; border-color: var(--primary) !important; background: transparent !important; }
.btn-outline-primary:hover { background: var(--primary) !important; color: #fff !important; }
.btn-outline-secondary { color: #4e637a !important; border-color: var(--border) !important; background: transparent !important; }
.btn-outline-secondary:hover { background: #f0f4f9 !important; }
.btn:focus, .btn:active:focus { box-shadow: none !important; outline: none !important; }
.btn-group-sm > .btn { font-size: 11.5px !important; padding: .2rem .65rem !important;margin:3px; }

/* ── Tables ── */
.table { font-size: 12.5px !important; color: var(--text) !important; }
.table th { font-size: 10.5px !important; font-weight: 700 !important; color: #3a5068 !important; text-transform: uppercase !important; letter-spacing: .06em !important; border-bottom: 2px solid var(--border) !important; background: #f4f7fb !important; white-space: nowrap !important; padding: .5rem .75rem !important; }
.table td { padding: .42rem .75rem !important; vertical-align: middle !important; border-color: var(--border) !important; }
.table-hover tbody tr:hover { background: #eef4fd !important; cursor: default; }
.table-striped tbody tr:nth-of-type(odd) { background: #f9fafc !important; }
.table-sm td, .table-sm th { padding: .5rem .6rem !important; }
.thead-dark th { background: #0e2248 !important; color: #bdd0e8 !important; border-color: #1a3560 !important; font-size: 10.5px !important; }
.thead-light th { background: #f4f7fb !important; }

/* DataTables */
.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input { font-size: 12px !important; height: auto !important; padding: .25rem .5rem !important; border: 1px solid var(--border) !important; border-radius: var(--r) !important; }
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter { font-size: 11.5px !important; color: var(--text-sm) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button { font-size: 11.5px !important; padding: .22rem .52rem !important; border-radius: 4px !important; margin: 0 1px !important; border: 1px solid transparent !important; color: var(--text) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { background: var(--primary) !important; border-color: var(--primary) !important; color: #fff !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button:hover:not(.current):not(.disabled) { background: var(--primary-bg) !important; color: var(--primary) !important; border-color: var(--border) !important; }
/* col-filter: thead second row (appended by initColFilters) */
thead tr:nth-child(2) th { background: #f0f4f9 !important; padding: .25rem .4rem !important; border-bottom: 1px solid var(--border) !important; }
thead tr:nth-child(2) th input.col-filter { width: 100% !important; font-size: 11px !important; padding: .2rem .4rem !important; border: 1px solid var(--border) !important; border-radius: 3px !important; outline: none; color: var(--text); background: #fff; box-sizing: border-box; }
thead tr:nth-child(2) th input.col-filter:focus { border-color: var(--primary) !important; box-shadow: 0 0 0 2px rgba(14,77,164,.12) !important; }
/* Keep legacy tfoot support */
tfoot th { padding: .3rem .4rem !important; background: #f4f7fb !important; }
tfoot th input.col-filter { width: 100% !important; font-size: 11px !important; padding: .2rem .4rem !important; border: 1px solid var(--border) !important; border-radius: 3px !important; outline: none; color: var(--text); background: #fff; }
tfoot th input.col-filter:focus { border-color: var(--primary) !important; }

/* ── Badges ── */
.badge { font-size: 10px !important; font-weight: 600 !important; padding: .24em .56em !important; border-radius: 4px !important; letter-spacing: .02em !important; }
.badge-primary { background: #dbeafe !important; color: #0e4da4 !important; }
.badge-success { background: #dcfce7 !important; color: #0e7a4a !important; }
.badge-warning { background: #fef3c7 !important; color: #9a5e00 !important; }
.badge-danger { background: #fee2e2 !important; color: #a32323 !important; }
.badge-info { background: #e0f2fe !important; color: #0369a1 !important; }
.badge-secondary { background: #edf2f7 !important; color: #3a5068 !important; }
.badge-dark { background: #0e2248 !important; color: #bdd0e8 !important; }

/* ── Modals ── */
.modal-content { border: none !important; border-radius: 8px !important; box-shadow: 0 20px 50px rgba(0,0,0,.18) !important; overflow: hidden !important; }
.modal-header { padding: .75rem 1.1rem !important; border-bottom: 1px solid var(--border) !important; }
.modal-header.bg-primary, .modal-header.bg-success, .modal-header.bg-info,
.modal-header.bg-warning, .modal-header.bg-danger, .modal-header.bg-secondary { border-bottom-color: rgba(255,255,255,.15) !important; }
.modal-title { font-size: 13.5px !important; font-weight: 600 !important; }
.modal-body { padding: .9rem 1.1rem !important; }
.modal-footer { padding: .55rem 1.1rem !important; border-top: 1px solid var(--border) !important; background: #f8fafc !important; }
.modal-footer .btn { min-width: 76px; }
.close { font-size: 1.05rem !important; opacity: .65 !important; padding: .5rem !important; }
.close:hover { opacity: 1 !important; }
.modal-backdrop { background: rgba(15,21,38,.55) !important; }

/* ── Tabs ── */
.nav-tabs { border-bottom: 2px solid var(--border) !important; }
.nav-tabs .nav-link { font-size: 12.5px !important; font-weight: 500 !important; color: var(--text-sm) !important; padding: .45rem .9rem !important; border: none !important; border-bottom: 2px solid transparent !important; margin-bottom: -2px !important; }
.nav-tabs .nav-link.active { color: var(--primary) !important; border-bottom-color: var(--primary) !important; background: transparent !important; }
.nav-tabs .nav-link:hover { color: var(--text) !important; }
.tab-content { padding: .75rem 0 0 !important; }

/* ── Footer ── */
.main-footer { background: var(--surface) !important; border-top: 1px solid var(--border) !important; padding: .55rem 1.25rem !important; font-size: 11.5px !important; color: var(--text-sm) !important; margin-left: var(--sidebar-w) !important; transition: margin-left .3s ease !important; }

/* ── Misc ── */
.text-muted { color: var(--text-sm) !important; }
.text-primary { color: var(--primary) !important; }
.text-success { color: var(--success) !important; }
.text-warning { color: var(--warning) !important; }
.text-danger { color: var(--danger) !important; }
code { font-size: 11.5px !important; background: #f1f5f9 !important; color: #be185d !important; padding: .1rem .3rem !important; border-radius: 3px !important; border: none !important; }
small, .small { font-size: 11px !important; }
hr { border-color: var(--border) !important; }
p { margin-bottom: .4rem !important; font-size: 12.5px; }
h5 { font-size: 14px !important; }
h6 { font-size: 13px !important; }

/* ── Select2 overrides ── */
.select2-container--bootstrap4 .select2-selection--single { height: calc(1.7em + .7rem + 2px) !important; border-color: var(--border) !important; border-radius: var(--r) !important; background: #fff !important; }
.select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered {  font-size: 12.5px !important; padding-left: .55rem !important; color: var(--text) !important; display: flex !important; align-items: center !important; }
/* Placeholder ortalaması */
.select2-container--bootstrap4 .select2-selection--single .select2-selection__placeholder { color: #9eaec0 !important; display: flex !important; align-items: center !important; }
.select2-container--bootstrap4 .select2-selection--single .select2-selection__arrow { height: calc(1.7em + .7rem + 2px) !important; right: 4px !important; }
.select2-container--bootstrap4 .select2-results__option { font-size: 12.5px !important; padding: .38rem .75rem !important; }
.select2-container--bootstrap4 .select2-results__option--highlighted { background: var(--primary) !important; color: #fff !important; }
.select2-container--bootstrap4 .select2-search--dropdown .select2-search__field { font-size: 12px !important; padding: .28rem .5rem !important; border-color: var(--border) !important; border-radius: var(--r) !important; }
.select2-container--bootstrap4 .select2-selection--multiple { border-color: var(--border) !important; border-radius: var(--r) !important; min-height: calc(1.7em + .7rem + 2px) !important; }
.select2-container--bootstrap4 .select2-selection--single:focus,
.select2-container--bootstrap4.select2-container--focus .select2-selection--single { border-color: var(--primary) !important; box-shadow: 0 0 0 3px rgba(14,77,164,.12) !important; outline: none !important; }
.select2-dropdown { border-color: var(--border) !important; border-radius: var(--r) !important; box-shadow: var(--shadow-md) !important; }

/* ── Toastr ── */
#toast-container .toast { border-radius: var(--r) !important; box-shadow: var(--shadow-md) !important; font-size: 12.5px !important; opacity: .97 !important; }

/* ── Login page ── */
.login-page {
    background: linear-gradient(160deg, #06142e 0%, #627cb6 50%, #000000 100%) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}
.login-box { width: 400px !important; padding: 0 !important; margin: 0 auto !important; }
.login-logo { text-align: center !important; margin-bottom: 1.5rem !important; }
.login-logo a { color: #e2e8f0 !important; font-size: 1.5rem !important; font-weight: 700 !important; text-shadow: none !important; text-decoration: none !important; display: block; }
.login-logo small { font-size: .75rem !important; color: #7a96b8 !important; }
.login-card-body { border-radius: 10px !important; padding: 2rem !important; box-shadow: 0 25px 70px rgba(0,0,0,.45) !important; border: 1px solid rgba(255,255,255,.06) !important; }
.login-box-msg { font-size: 12.5px !important; color: #6b828e !important; margin-bottom: 1.25rem !important; }
.btn-login { background: var(--primary) !important; border-color: var(--primary) !important; font-size: 13px !important; padding: .55rem 1rem !important; font-weight: 600 !important; letter-spacing: .02em; box-shadow: 0 4px 14px rgba(14,77,164,.4) !important; }
.btn-login:hover { background: var(--primary-d) !important; }

/* ── Log viewer ── */
.log-line { font-family: 'Consolas','Courier New',monospace !important; font-size: 11.5px !important; padding: 2px 6px; border-bottom: 1px solid #f1f5f9; word-break: break-all; white-space: pre-wrap; }
.log-err { background: #fef2f2; color: #991b1b; }
.log-wrn { background: #fffbeb; color: #92400e; }
.log-inf { color: var(--text); }
.log-dbg { color: #94a3b8; }

/* ── List group ── */
.list-group-item { font-size: 12.5px !important; padding: .45rem .85rem !important; border-color: var(--border) !important; }

/* ── Alert ── */
.alert { font-size: 12.5px !important; padding: .6rem .9rem !important; border-radius: var(--r) !important; }

/* ── Responsive ── */
@media (max-width: 991.98px) {
  .content-wrapper, .main-footer { margin-left: 0 !important; }
  .main-sidebar { transform: translateX(-100%); transition: transform .3s ease !important; }
  .sidebar-open .main-sidebar { transform: translateX(0); }
}
@media (max-width: 767px) {
  .content-wrapper { padding-top: 0; }
  section.content { padding: .6rem .75rem !important; }
}

/* ── Utility ── */
.fw-600 { font-weight: 600 !important; }
.fs-11 { font-size: 11px !important; }
.fs-12 { font-size: 12px !important; }
.fs-13 { font-size: 13px !important; }
.bg-surface { background: var(--surface) !important; }
.border-start-primary { border-left: 3px solid var(--primary) !important; }
.border-start-success { border-left: 3px solid var(--success) !important; }
.border-start-warning { border-left: 3px solid var(--warning) !important; }
.border-start-danger { border-left: 3px solid var(--danger) !important; }
.page-link{ padding:.3rem .95rem; }
.dataTables_wrapper .dataTables_paginate .paginate_button { padding:.1rem .1rem !important; }
.date-filter { display:flex; gap:3px; min-width:210px; }
.date-filter input { width:103px; font-size:10px; padding:.18rem .25rem; border:1px solid var(--border); border-radius:3px; color:var(--text); background:#fff; }
.table-reset { margin-right:.45rem; vertical-align:middle; }
.dataTables_wrapper .row:first-child { align-items:center; padding:.2rem 0 .6rem; }
.dataTables_wrapper table.dataTable { border-collapse:separate !important; border-spacing:0; }
.dataTables_wrapper table.dataTable tbody tr { transition:background-color .12s ease; }
.col-filter-row th { text-transform:none !important; letter-spacing:0 !important; }
.dashboard-hero { background:linear-gradient(120deg,#002353,#0e4da4 65%,#2878d0); color:#fff; border-radius:10px; padding:1.25rem 1.4rem; margin-bottom:1rem; box-shadow:0 8px 24px rgba(0,35,83,.2); }
.dashboard-hero h2 { font-size:20px; font-weight:700; margin:0 0 .25rem; }
.dashboard-hero p { color:#cfe2ff; margin:0 !important; }
.metric-card { background:#fff; border:1px solid var(--border); border-radius:9px; padding:1rem; height:100%; position:relative; overflow:hidden; box-shadow:var(--shadow-xs); }
.metric-card:before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--metric-color,var(--primary)); }
.metric-label { color:var(--text-sm); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.metric-value { font-size:1.55rem; font-weight:700; margin:.2rem 0; color:var(--text); }
.metric-icon { position:absolute; right:1rem; top:1rem; color:var(--metric-color,var(--primary)); opacity:.18; font-size:2rem; }
.btn-group > .btn-group:not(:first-child), .btn-group > .btn:not(:first-child) {margin-left: 5px;}
@media (max-width: 767.98px) {
    .col-filter-row {
        display: none !important;
    }
}

