/* Drawer no mobile (<= 991px) */
@media (max-width: 991px) {
  #sidebar {
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: -260px !important;   /* escondido fora da tela */
    width: 260px !important;
    max-width: 80vw !important;
    z-index: 1040 !important;
    overflow-y: auto !important;
    background: #2c2c2c !important;
    transition: left .25s ease !important;
  }

  #sidebar.open {
    left: 0 !important;       /* aparece quando tem .open */
  }
}

/* backdrop */
.sidebar-backdrop {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0,0,0,.35) !important;
  z-index: 1030 !important;
  display: none !important;
}
body.sidebar-open .sidebar-backdrop { display: block !important; }

/* acessibilidade */
#sidebar a:focus {
  outline: 2px solid #9ecbff !important;
  outline-offset: 2px !important;
}

/* full width dos itens */
#sidebar .nav-list > li { width: 100% !important; }

/* submenus */
.submenu { display: none !important; }
.nav-list li.open > .submenu { display: block !important; }

/* arrows */
#sidebar .nav-list a.dropdown-toggle {
  position: relative;
  padding-right: 25px;
}
#sidebar .nav-list a .submenu-arrow {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.9em;
  opacity: 0.8;
  pointer-events: none;
  transition: transform 0.2s ease;
}
#sidebar .nav-list li.open > a .submenu-arrow {
  transform: translateY(-50%) rotate(90deg); /* ► vira ▼ */
}

/* hamburger Bootstrap 5 customizado (se não usar bootstrap.min.css) */
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280,0,0,0.7%29' stroke-width='2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Esconde o hamburger no desktop */
#menu-toggler {
  display: none !important;
}

/* Mostra o hamburger apenas no mobile (quando o sidebar vira drawer) */
@media (max-width: 991px) {
  #menu-toggler {
    display: inline-block !important;
  }
}

@media (max-width: 991px) {
  #sidebar {
    z-index: 2000 !important;  /* mais alto que navbar e backdrop */
  }
  .navbar {
    z-index: 1050 !important;  /* navbar abaixo do sidebar */
  }
}