:root {
  --sidebar-width: 250px;
  --topbar-height: 60px;
}

body {
  background: #f5f7fa;
}

/* SIDEBAR */
.sidebar {
  width: var(--sidebar-width);
  top: 0;
  bottom: 0;
  overflow-y: auto;
  transition: transform 0.3s ease;
}

.sidebar .nav-link {
  padding: 10px 15px;
  border-radius: 6px;
}

.sidebar .nav-link:hover,
.sidebar .nav-link.active {
  background-color: rgba(255, 255, 255, 0.15);
}

/* TOPBAR */
.admin-topbar {
  height: var(--topbar-height);
  margin-left: var(--sidebar-width);
  z-index: 1030;
}

/* CONTENT */
.content-wrapper {
  margin-left: var(--sidebar-width);
  margin-top: var(--topbar-height);
  padding: 25px;
  min-height: 100vh;
}

/* MOBILE */
@media (max-width: 991px) {
  .sidebar {
    transform: translateX(-100%);
    top: 0;
  }

  .sidebar.show {
    transform: translateX(0);
    z-index: 1040;
  }

  .admin-topbar {
    margin-left: 0;
  }

  .content-wrapper {
    margin-left: 0;
    padding: 15px;
  }
}

/* DataTables Brand Styling */
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
  border: 1px solid #27354d;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
}

.dataTables_wrapper .dataTables_filter label,
.dataTables_wrapper .dataTables_length label {
  color: #27354d;
  font-weight: 500;
}

table.dataTable thead {
  background-color: #27354d;
  color: #ffffff;
}

table.dataTable thead th {
  border-bottom: 2px solid #ee1c25;
}

table.dataTable tbody tr:hover {
  background-color: #fbeaea; /* subtle hover with brand accent */
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
  background-color: #27354d !important;
  color: #ffffff !important;
  border-radius: 4px;
  margin: 0 2px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background-color: white !important;
  color: #ffffff !important;
}

/* Hide sorting icons */
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after {
  display: none !important;
}

/* Optional: Add hover effect on headers */
table.dataTable thead th {
  cursor: pointer;
  transition: background-color 0.2s;
}

table.dataTable thead th {
  background-color: #27354d;
  color: white;
}

table.dataTable thead th:hover {
  background-color: #f1f1f1;
}

/* Optional: Add some padding and clean font */
table.dataTable td,
table.dataTable th {
  padding: 0.75rem;
  vertical-align: middle;
}

.btn-primary {
  background-color: #27354d !important;
  color: white !important;
  border-color: #27354d !important;
}

.btn-primary:hover {
  color: #fff !important;
  background-color: #ee1c25 !important;
  border-color: #f12b35 !important;
}
