/* ===== SIDEBAR ADMIN — OVERRIDE SB-ADMIN-2 ===== */

:root {
  --sidebar-bg: #1a3a6b;
  --sidebar-bg-dark: #122a52;
  --sidebar-accent: #4e9af1;
  --sidebar-text: rgba(255,255,255,0.85);
  --sidebar-text-active: #fff;
  --sidebar-hover-bg: rgba(255,255,255,0.1);
  --sidebar-active-bg: rgba(255,255,255,0.15);
  --sidebar-border: rgba(255,255,255,0.15);
  --sidebar-width: 224px;
}

/* ===== SIDEBAR CONTAINER ===== */
.navbar.sidebar,
.navbar-nav.bg-gradient-primary.sidebar,
ul.navbar.sidebar {
  background: linear-gradient(180deg, var(--sidebar-bg) 0%, var(--sidebar-bg-dark) 100%) !important;
  width: var(--sidebar-width) !important;
  min-height: 100vh;
  border-right: 3px solid var(--sidebar-accent);
  box-shadow: 2px 0 8px rgba(0,0,0,0.15);
}

/* ===== BRAND / LOGO ===== */
.sidebar .sidebar-brand {
  background: var(--sidebar-bg-dark) !important;
  border-bottom: 2px solid var(--sidebar-accent) !important;
  padding: 20px 16px !important;
}

.sidebar .sidebar-brand-text {
  color: #fff !important;
  font-size: 0.95rem !important;
}

/* ===== NAV LINKS ===== */
.sidebar .nav-item .nav-link {
  color: var(--sidebar-text) !important;
  padding: 14px 20px !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  border-left: 3px solid transparent !important;
  transition: all 0.2s ease !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.sidebar .nav-item .nav-link:hover {
  color: var(--sidebar-text-active) !important;
  background: var(--sidebar-hover-bg) !important;
  border-left-color: var(--sidebar-accent) !important;
}

.sidebar .nav-item .nav-link.menu-actif,
.sidebar .nav-item .nav-link.active {
  color: var(--sidebar-accent) !important;
  background: var(--sidebar-active-bg) !important;
  border-left-color: var(--sidebar-accent) !important;
  font-weight: 700 !important;
}

/* ===== DIVIDERS ===== */
.sidebar .sidebar-divider {
  border-top: 1px solid var(--sidebar-border) !important;
  margin: 6px 16px !important;
}

/* ===== COLLAPSE ITEMS ===== */
.sidebar .collapse-inner {
  background: #0d2144 !important;
  border-radius: 0 !important;
  padding: 4px 0 !important;
}

.sidebar .collapse-item {
  color: var(--sidebar-text) !important;
  padding: 10px 20px 10px 36px !important;
  font-size: 0.85rem !important;
  display: block !important;
  transition: all 0.2s ease !important;
  border-left: 3px solid transparent !important;
}

.sidebar .collapse-item:hover,
.sidebar .collapse-item.active-link {
  color: var(--sidebar-accent) !important;
  background: var(--sidebar-hover-bg) !important;
  border-left-color: var(--sidebar-accent) !important;
  text-decoration: none !important;
}

/* ===== ICONS ===== */
.sidebar .nav-link i,
.sidebar .nav-link .fas,
.sidebar .nav-link .bi {
  color: var(--sidebar-text) !important;
  width: 18px !important;
  text-align: center !important;
}

.sidebar .nav-link.menu-actif i,
.sidebar .nav-link.menu-actif .fas {
  color: var(--sidebar-accent) !important;
}

/* ===== HAMBURGER MOBILE ===== */
.btn-link.position-fixed[style*="background-color: rgb(78, 115, 223)"],
button.d-md-none.btn.btn-link.position-fixed {
  background-color: var(--sidebar-bg) !important;
  border-color: var(--sidebar-accent) !important;
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
  .navbar.sidebar,
  ul.navbar.sidebar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    height: 100vh !important;
    z-index: 9999 !important;
    transform: translateX(-100%) !important;
    transition: transform 0.3s ease !important;
    width: 260px !important;
    overflow-y: auto !important;
  }

  .navbar.sidebar.show,
  ul.navbar.sidebar.show {
    transform: translateX(0) !important;
  }

  /* Contenu principal décalé */
  #wrapper .custom-wrapper,
  #wrapper #content-wrapper {
    margin-left: 0 !important;
    width: 100% !important;
  }

  /* Bouton hamburger vert */
  button.d-md-none.btn.btn-link.position-fixed {
    background-color: var(--sidebar-bg) !important;
    color: #fff !important;
    border-radius: 6px !important;
    top: 12px !important;
    left: 12px !important;
    z-index: 10000 !important;
    padding: 8px 12px !important;
    border: none !important;
  }
}
