/**
 * Sidebar estilo BraxDriver (dark + busca + ativo persistente).
 */
:root {
	--brax-sb-bg: #12151c;
	--brax-sb-elev: #1a1f2b;
	--brax-sb-elev-2: #222836;
	--brax-sb-text: #e8eaef;
	--brax-sb-muted: #8b93a7;
	--brax-sb-teal: #2dd4bf;
	--brax-sb-teal-bg: rgba(13, 148, 136, 0.22);
	--brax-sb-teal-border: rgba(45, 212, 191, 0.45);
	--brax-sb-blue: #60a5fa;
	--brax-sb-blue-bar: #3b82f6;
	--brax-sb-blue-bg: rgba(59, 130, 246, 0.14);
}

body.elmenoufi-logado #sidebar.brax-sidebar.nex-sidebar-pro.sidebar {
	background: var(--brax-sb-bg) !important;
	border-right: 1px solid rgba(255, 255, 255, 0.04);
}

#sidebar.brax-sidebar .brax-sidebar-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 0;
	padding: 0.75rem 0.7rem 0.85rem;
}

#sidebar.brax-sidebar .brax-brand {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.25rem 0.35rem 0.85rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	margin-bottom: 0.75rem;
	flex-shrink: 0;
}

#sidebar.brax-sidebar .brax-brand img {
	width: 36px;
	height: 36px;
	object-fit: contain;
	border-radius: 10px;
	border: 1px solid rgba(45, 212, 191, 0.25);
}

#sidebar.brax-sidebar .brax-brand-name {
	color: #f8fafc;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

#sidebar.brax-sidebar .brax-brand-sub {
	color: var(--brax-sb-muted);
	font-size: 0.68rem;
}

#sidebar.brax-sidebar .brax-search {
	position: relative;
	margin-bottom: 0.75rem;
	flex-shrink: 0;
}

#sidebar.brax-sidebar .brax-search i {
	position: absolute;
	left: 0.75rem;
	top: 50%;
	transform: translateY(-50%);
	color: var(--brax-sb-muted);
	font-size: 1rem;
	pointer-events: none;
}

#sidebar.brax-sidebar .brax-search input {
	width: 100%;
	height: 40px;
	padding: 0 0.85rem 0 2.25rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	background: var(--brax-sb-elev);
	color: var(--brax-sb-text);
	font-size: 0.8125rem;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

#sidebar.brax-sidebar .brax-search input::placeholder {
	color: var(--brax-sb-muted);
}

#sidebar.brax-sidebar .brax-search input:focus {
	border-color: rgba(45, 212, 191, 0.4);
	box-shadow: 0 0 0 3px rgba(45, 212, 191, 0.12);
}

#sidebar.brax-sidebar .brax-stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.5rem;
	margin-bottom: 0.9rem;
	flex-shrink: 0;
}

#sidebar.brax-sidebar .brax-stat {
	background: var(--brax-sb-elev);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 12px;
	padding: 0.7rem 0.65rem;
	text-align: center;
}

#sidebar.brax-sidebar .brax-stat strong {
	display: block;
	color: #fff;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.1;
}

#sidebar.brax-sidebar .brax-stat span {
	display: block;
	margin-top: 0.2rem;
	color: var(--brax-sb-muted);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

#sidebar.brax-sidebar .brax-scroll {
	flex: 1 1 auto;
	overflow-y: auto;
	overflow-x: hidden;
	padding-right: 0.15rem;
	min-height: 0;
}

#sidebar.brax-sidebar .brax-scroll::-webkit-scrollbar {
	width: 6px;
}
#sidebar.brax-sidebar .brax-scroll::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.12);
	border-radius: 999px;
}

#sidebar.brax-sidebar .brax-section {
	margin-bottom: 0.85rem;
}

#sidebar.brax-sidebar .brax-section-title {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.55rem 0.45rem;
	color: var(--brax-sb-muted);
	font-size: 0.66rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

#sidebar.brax-sidebar .brax-nav {
	list-style: none;
	margin: 0;
	padding: 0;
}

#sidebar.brax-sidebar .brax-nav > li {
	margin: 0.12rem 0;
}

#sidebar.brax-sidebar .brax-link {
	position: relative;
	display: flex !important;
	align-items: center;
	gap: 0.65rem;
	width: 100%;
	padding: 0.62rem 0.75rem !important;
	border-radius: 10px;
	border: 1px solid transparent;
	color: var(--brax-sb-text) !important;
	text-decoration: none !important;
	font-size: 0.84rem !important;
	font-weight: 500;
	line-height: 1.2;
	background: transparent !important;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

#sidebar.brax-sidebar .brax-link .brax-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.55rem;
	height: 1.55rem;
	border-radius: 8px;
	color: #aeb6c9;
	font-size: 1.05rem;
	flex-shrink: 0;
	transition: background 0.15s ease, color 0.15s ease;
}

#sidebar.brax-sidebar .brax-link .brax-label {
	flex: 1;
	min-width: 0;
}

#sidebar.brax-sidebar .brax-link:hover {
	background: rgba(255, 255, 255, 0.05) !important;
	color: #fff !important;
}

#sidebar.brax-sidebar .brax-link:hover .brax-ico {
	color: #fff;
}

/* Ativo estilo teal (pill) — permanece selecionado */
#sidebar.brax-sidebar .brax-link.is-active,
#sidebar.brax-sidebar .brax-link.active {
	background: var(--brax-sb-teal-bg) !important;
	border-color: var(--brax-sb-teal-border) !important;
	color: var(--brax-sb-teal) !important;
	box-shadow: inset 0 0 0 1px rgba(45, 212, 191, 0.08);
}

#sidebar.brax-sidebar .brax-link.is-active .brax-ico,
#sidebar.brax-sidebar .brax-link.active .brax-ico {
	color: var(--brax-sb-teal);
	background: rgba(45, 212, 191, 0.12);
}

/* Variante azul com barra (para itens de cadastro quando ativos via data-active-style="bar") */
#sidebar.brax-sidebar .brax-link.is-active[data-active-style="bar"],
#sidebar.brax-sidebar .brax-link.active[data-active-style="bar"] {
	background: var(--brax-sb-blue-bg) !important;
	border-color: transparent !important;
	color: #fff !important;
	box-shadow: none;
}

#sidebar.brax-sidebar .brax-link.is-active[data-active-style="bar"]::before,
#sidebar.brax-sidebar .brax-link.active[data-active-style="bar"]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 6px;
	bottom: 6px;
	width: 3px;
	border-radius: 0 3px 3px 0;
	background: var(--brax-sb-blue-bar);
}

#sidebar.brax-sidebar .brax-link.is-active[data-active-style="bar"] .brax-ico,
#sidebar.brax-sidebar .brax-link.active[data-active-style="bar"] .brax-ico {
	color: var(--brax-sb-blue);
	background: rgba(59, 130, 246, 0.18);
}

#sidebar.brax-sidebar .brax-section.is-filtered-out,
#sidebar.brax-sidebar .brax-nav > li.is-filtered-out {
	display: none !important;
}

#sidebar.brax-sidebar .brax-footer {
	flex-shrink: 0;
	margin-top: 0.65rem;
	padding-top: 0.65rem;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

#sidebar.brax-sidebar .brax-footer .brax-link {
	color: #cbd5e1 !important;
	font-size: 0.8rem !important;
}

#sidebar.brax-sidebar .brax-empty-filter {
	display: none;
	padding: 0.75rem;
	text-align: center;
	color: var(--brax-sb-muted);
	font-size: 0.78rem;
}

#sidebar.brax-sidebar.has-empty-filter .brax-empty-filter {
	display: block;
}

/* Sidebar recolhida (desktop) */
@media (min-width: 992px) {
	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar {
		width: 78px !important;
	}

	body.elmenoufi-logado.sidebar-icon-only .main-panel {
		margin-left: 78px !important;
		width: calc(100% - 78px) !important;
	}

	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-brand .lh-sm,
	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-search,
	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-stats,
	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-section-title,
	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-label,
	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-empty-filter {
		display: none !important;
	}

	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-brand {
		justify-content: center;
		padding: 0.35rem 0 0.75rem;
	}

	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-link {
		justify-content: center;
		padding: 0.65rem !important;
	}

	body.elmenoufi-logado.sidebar-icon-only #sidebar.brax-sidebar .brax-sidebar-inner {
		padding-left: 0.45rem;
		padding-right: 0.45rem;
	}
}
