/* Sidebar Gent -> look maqueta Goodyear (design-system.html)
   nav-md = desplegado 270px | nav-sm = colapsado 70px
   Sin acentos en comentarios. */

/* Neutralizar azul residual (#06d) del theme Gent en el marco */
html.aui,
.aui,
.aui body,
.aui body.goodyear,
.aui .container.body,
.aui .goodyear .main_container,
.aui .main_container {
	background: #eef3f8 !important;
	background-color: #eef3f8 !important;
}

/* Un solo scroll de pagina: bloquea html/body; scrollean sidenav + right_col */
html.aui,
.aui {
	height: 100% !important;
	overflow: hidden !important;
}

.aui body,
.aui body.goodyear {
	height: 100% !important;
	max-height: 100vh !important;
	overflow: hidden !important;
	overflow-x: hidden !important;
	overflow-y: hidden !important;
}

/* === Anchos: left_col fijo; sin hueco azul entre sidenav y contenido === */
.aui body.nav-md .container.body .col-md-3.left_col,
.aui .nav-md .container.body .col-md-3.left_col {
	width: 270px !important;
	max-width: 270px !important;
	min-width: 270px !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	height: 100vh !important;
	min-height: 100vh !important;
	z-index: 100 !important;
	display: block !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	box-sizing: border-box !important;
}

.aui body.nav-sm .container.body .col-md-3.left_col,
.aui .nav-sm .container.body .col-md-3.left_col {
	width: 70px !important;
	max-width: 70px !important;
	min-width: 70px !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	height: 100vh !important;
	min-height: 100vh !important;
	z-index: 100 !important;
	display: block !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	box-sizing: border-box !important;
}

.aui body.nav-md .container.body .right_col,
.aui .nav-md .container.body .right_col,
.aui body.nav-md .main_container .top_nav,
.aui .nav-md .main_container .top_nav {
	margin-left: 270px !important;
	width: calc(100% - 270px) !important;
	max-width: calc(100% - 270px) !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	float: none !important;
	left: auto !important;
	right: 0 !important;
}

.aui body.nav-sm .container.body .right_col,
.aui .nav-sm .container.body .right_col,
.aui body.nav-sm .main_container .top_nav,
.aui .nav-sm .main_container .top_nav {
	margin-left: 70px !important;
	width: calc(100% - 70px) !important;
	max-width: calc(100% - 70px) !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	float: none !important;
	left: auto !important;
	right: 0 !important;
}

/* Contenido: gris GY, sin transparencia que deje ver azul */
.aui .nav-md .container.body .right_col,
.aui .nav-sm .container.body .right_col,
.aui body.nav-md #content.right_col,
.aui body.nav-sm #content.right_col {
	min-width: 0 !important;
	background: #eef3f8 !important;
	background-color: #eef3f8 !important;
}

.aui .goodyear .main_container,
.aui .main_container {
	width: 100% !important;
	max-width: none !important;
	height: 100vh !important;
	max-height: 100vh !important;
	min-height: 0 !important;
	position: relative !important;
	background: #eef3f8 !important;
	overflow: hidden !important;
}

.aui .container.body {
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	background: #eef3f8 !important;
	overflow: hidden !important;
}

/* Topbar fija en flujo; sin margen extra hacia el contenido */
.aui .main_container .top_nav,
.aui .goodyear .main_container .top_nav {
	background: #ffffff !important;
	min-height: 58px !important;
	height: 58px !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	overflow: visible !important;
	z-index: 50 !important;
}

.aui .goodyear .main_container .nav_menu,
.aui .main_container .nav_menu {
	background: #ffffff !important;
	border-bottom: 1px solid #d8e0eb !important;
	margin-bottom: 0 !important;
	min-height: 58px !important;
	height: 58px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Contenido: unico scroll vertical (junto al sidenav) */
.aui body.nav-md .container.body .right_col,
.aui .nav-md .container.body .right_col,
.aui body.nav-md #content.right_col,
.aui body.nav-md .main_container > .right_col {
	margin-top: 5px !important;
	padding-top: 0 !important;
	height: calc(100vh - 63px) !important;
	max-height: calc(100vh - 63px) !important;
	min-height: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
}

.aui body.nav-sm .container.body .right_col,
.aui .nav-sm .container.body .right_col,
.aui body.nav-sm #content.right_col,
.aui body.nav-sm .main_container > .right_col {
	margin-top: 5px !important;
	padding-top: 0 !important;
	height: calc(100vh - 63px) !important;
	max-height: calc(100vh - 63px) !important;
	min-height: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
}

/* Scrollbars sutiles: sidenav + contenido */
.aui .left_col,
.aui .left_col .scroll-view,
.aui #content.right_col,
.aui .container.body .right_col {
	scrollbar-width: thin;
	scrollbar-color: rgba(15, 40, 80, 0.22) transparent;
}

.aui .left_col::-webkit-scrollbar,
.aui .left_col .scroll-view::-webkit-scrollbar,
.aui #content.right_col::-webkit-scrollbar,
.aui .container.body .right_col::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

.aui .left_col::-webkit-scrollbar-track,
.aui .left_col .scroll-view::-webkit-scrollbar-track,
.aui #content.right_col::-webkit-scrollbar-track,
.aui .container.body .right_col::-webkit-scrollbar-track {
	background: transparent;
}

.aui .left_col::-webkit-scrollbar-thumb,
.aui .left_col .scroll-view::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.28);
	border-radius: 8px;
}

.aui .left_col::-webkit-scrollbar-thumb:hover,
.aui .left_col .scroll-view::-webkit-scrollbar-thumb:hover {
	background: rgba(255, 255, 255, 0.42);
}

.aui #content.right_col::-webkit-scrollbar-thumb,
.aui .container.body .right_col::-webkit-scrollbar-thumb {
	background: rgba(15, 40, 80, 0.22);
	border-radius: 8px;
}

.aui #content.right_col::-webkit-scrollbar-thumb:hover,
.aui .container.body .right_col::-webkit-scrollbar-thumb:hover {
	background: rgba(15, 40, 80, 0.35);
}

/* === Look maqueta === */
.aui .goodyear .left_col,
.aui body.goodyear .left_col,
.aui .left_col {
	color: #ffffff !important;
	background: linear-gradient(180deg, #0666d1 0%, #064ca8 100%) !important;
	box-shadow: 8px 0 28px rgba(3, 45, 103, 0.13) !important;
	border: 0 !important;
}

/* Evitar scroll anidado dentro del sidenav: solo .left_col scrollea */
.aui .left_col > .scroll-view,
.aui .left_col .left_col.scroll-view {
	overflow: visible !important;
	height: auto !important;
	min-height: 100% !important;
}

.aui .goodyear .nav_title,
.aui .nav-md .nav_title,
.aui .nav-sm .nav_title,
.aui .left_col .navbar.nav_title {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 78px !important;
	float: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 16px 18px !important;
	margin: 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
	background: transparent !important;
	box-sizing: border-box !important;
}

.aui .left_col .nav_title .site-title,
.aui .left_col .nav_title .site-title a {
	margin: 0 !important;
	color: #ffffff !important;
	text-align: center !important;
}

.aui .left_col .nav_title img {
	max-height: 42px !important;
	width: auto !important;
}

.aui .left_col .profile {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 0 !important;
	padding: 18px 16px !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
	box-sizing: border-box !important;
}

.aui .left_col .profile_pic {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: 0 0 auto !important;
}

.aui .left_col .img-circle.profile_img {
	width: 46px !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 2px !important;
	border: 2px solid rgba(255, 255, 255, 0.82) !important;
	background: #ffffff !important;
	object-fit: cover !important;
}

.aui .left_col .profile_info {
	float: none !important;
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	min-width: 0 !important;
	flex: 1 1 auto !important;
}

.aui .left_col .profile_info span {
	display: block !important;
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
}

.aui .left_col .profile_info h2 {
	display: block !important;
	margin: 2px 0 0 !important;
	padding: 0 !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
}

.aui .left_col #sidebar-menu,
.aui .left_col .main_menu_side {
	width: 100% !important;
	padding: 12px 9px 24px !important;
	box-sizing: border-box !important;
}

.aui .left_col .menu_section > h5 {
	display: none !important;
}

.aui .goodyear .nav.side-menu > li > a,
.aui .left_col .nav.side-menu > li > a {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	min-height: 42px !important;
	margin: 0 0 3px !important;
	padding: 9px 11px !important;
	border: 1px solid transparent !important;
	border-radius: 8px !important;
	border-top: 1px solid transparent !important;
	color: rgba(255, 255, 255, 0.94) !important;
	background: transparent !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	text-shadow: none !important;
	text-decoration: none !important;
	transition: background 160ms ease, border-color 160ms ease, transform 160ms ease !important;
}

.aui .goodyear .nav.side-menu > li > a:hover,
.aui .goodyear .nav.side-menu > li:hover > a,
.aui .left_col .nav.side-menu > li > a:hover,
.aui .left_col .nav.side-menu > li:hover > a {
	color: #ffffff !important;
	background: rgba(255, 255, 255, 0.10) !important;
	transform: translateX(2px);
}

.aui .goodyear .nav.side-menu > li > a:hover span,
.aui .goodyear .nav.side-menu > li:hover > a span,
.aui .left_col .nav.side-menu > li > a:hover span,
.aui .left_col .nav.side-menu > li:hover > a span {
	color: #ffffff !important;
	text-shadow: none !important;
}

.aui .left_col .nav.side-menu > li.active > a,
.aui .left_col .nav.side-menu > li.current-page > a,
.aui .left_col .nav.side-menu > li.selected > a {
	color: #ffffff !important;
	background: rgba(255, 255, 255, 0.16) !important;
	border-color: rgba(255, 255, 255, 0.35) !important;
	font-weight: 700 !important;
	box-shadow: inset 4px 0 0 #ffffff !important;
}

.aui .left_col .nav.side-menu > li > a > i {
	display: inline-flex !important;
	width: 28px !important;
	height: 28px !important;
	flex: 0 0 28px !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	border-radius: 8px !important;
	background: rgba(255, 255, 255, 0.10) !important;
	font-size: 14px !important;
	line-height: 1 !important;
}

.aui .left_col .nav.side-menu > li > a .nav-label,
.aui .left_col .nav.side-menu > li > a .menu-name {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.aui .left_col .nav.side-menu > li > a .fa.fa-chevron-down {
	width: auto !important;
	height: auto !important;
	background: transparent !important;
	font-size: 11px !important;
	opacity: 0.75 !important;
}

.aui .left_col .nav.child_menu {
	position: relative !important;
	background: transparent !important;
	margin: 2px 0 8px 22px !important;
	padding: 4px 0 4px 10px !important;
	border-right: 0 !important;
	border-left: 2px solid rgba(255, 255, 255, 0.18) !important;
	width: auto !important;
}

.aui .nav.child_menu li,
.aui .nav-md ul.nav.child_menu li,
.aui .left_col .nav.child_menu li,
.aui .goodyear .nav.child_menu li {
	padding-left: 4px !important;
}

/* Sin barra/cuadrado amarillo a la derecha en activos */
.aui .goodyear .nav.side-menu > li.current-page,
.aui .goodyear .nav.side-menu > li.active,
.aui .nav.side-menu > li.current-page,
.aui .nav.side-menu > li.active,
.aui .left_col .nav.side-menu > li.current-page,
.aui .left_col .nav.side-menu > li.active,
.aui .goodyear .nav.child_menu,
.aui .left_col .nav.child_menu,
.aui .nav-sm .nav.side-menu li.active-sm {
	border-right: 0 !important;
}

.aui .goodyear .nav.side-menu > li.current-page,
.aui .goodyear .nav.side-menu > li.active,
.aui .nav.side-menu > li.current-page,
.aui .nav.side-menu > li.active {
	background: transparent !important;
}

/* Quita cuadrados/lineas blancas Gent en el li (marcador propio va en a::before) */
.aui .nav-md ul.nav.child_menu li::before,
.aui .nav-md ul.nav.child_menu li::after,
.aui .nav-md ul.nav.child_menu li:before,
.aui .nav-md ul.nav.child_menu li:after,
.aui .left_col .nav.child_menu li::before,
.aui .left_col .nav.child_menu li::after,
.aui .left_col .nav.child_menu li:before,
.aui .left_col .nav.child_menu li:after {
	content: none !important;
	display: none !important;
	background: transparent !important;
	border: 0 !important;
	width: 0 !important;
	height: 0 !important;
}

.aui .left_col .nav.child_menu > li {
	position: relative !important;
	margin: 0 0 2px !important;
	/* Evita cuadro blanco/amarillo del li.current-page Gent/theme */
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.aui .left_col .nav.child_menu > li.current-page,
.aui .left_col .nav.child_menu > li.active,
.aui .goodyear .nav.child_menu > li.current-page,
.aui .nav.child_menu > li.current-page {
	background: transparent !important;
	border: 0 !important;
	border-right: 0 !important;
	box-shadow: none !important;
	color: inherit !important;
}

.aui .left_col .nav.child_menu > li > a {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	min-height: 34px !important;
	margin: 0 !important;
	padding: 7px 10px 7px 12px !important;
	border-radius: 8px !important;
	border: 1px solid transparent !important;
	color: rgba(255, 255, 255, 0.82) !important;
	background: transparent !important;
	font-size: 12.5px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	text-shadow: none !important;
}

/* Indicador hijo: punto amarillo suave (no el cuadrado Gent) */
.aui .left_col .nav.child_menu > li > a::before {
	content: "" !important;
	display: inline-block !important;
	flex: 0 0 6px !important;
	width: 6px !important;
	height: 6px !important;
	margin: 0 !important;
	border-radius: 50% !important;
	background: rgba(255, 221, 0, 0.55) !important;
	box-shadow: none !important;
	border: 0 !important;
	position: static !important;
	left: auto !important;
	top: auto !important;
}

.aui .left_col .nav.child_menu > li > a:hover {
	background: rgba(255, 255, 255, 0.10) !important;
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.12) !important;
}

.aui .left_col .nav.child_menu > li > a:hover::before {
	background: #ffdd00 !important;
}

.aui .left_col .nav.child_menu > li.current-page > a,
.aui .left_col .nav.child_menu > li.active > a {
	background: rgba(255, 255, 255, 0.14) !important;
	color: #ffffff !important;
	border-color: rgba(255, 221, 0, 0.35) !important;
	font-weight: 700 !important;
	box-shadow: inset 3px 0 0 #ffdd00 !important;
}

.aui .left_col .nav.child_menu > li.current-page > a::before,
.aui .left_col .nav.child_menu > li.active > a::before {
	background: #ffdd00 !important;
	box-shadow: 0 0 0 3px rgba(255, 221, 0, 0.22) !important;
}

/* === Colapsado (nav-sm) === */
.aui body.nav-sm .left_col .profile_info,
.aui .nav-sm .left_col .profile_info,
.aui body.nav-sm .left_col .nav-label,
.aui .nav-sm .left_col .nav-label,
.aui body.nav-sm .left_col .menu-name,
.aui .nav-sm .left_col .menu-name,
.aui body.nav-sm .left_col .fa.fa-chevron-down,
.aui .nav-sm .left_col .fa.fa-chevron-down,
.aui body.nav-sm .left_col .site-name,
.aui .nav-sm .left_col .site-name {
	display: none !important;
}

.aui body.nav-sm .left_col .profile,
.aui .nav-sm .left_col .profile {
	justify-content: center !important;
	padding: 14px 8px !important;
}

.aui body.nav-sm .left_col .nav.side-menu > li > a,
.aui .nav-sm .left_col .nav.side-menu > li > a {
	justify-content: center !important;
	padding: 10px 6px !important;
	transform: none !important;
}

.aui body.nav-sm .left_col .nav_title,
.aui .nav-sm .left_col .nav_title {
	min-height: 64px !important;
	padding: 10px 6px !important;
}

.aui body.nav-sm .left_col .nav_title img,
.aui .nav-sm .left_col .nav_title img {
	max-height: 28px !important;
}

/* Topbar / toggle alineado a maqueta */
.aui .goodyear .main_container .nav_menu,
.aui .main_container .nav_menu {
	background: #ffffff !important;
	border-bottom: 1px solid #d8e0eb !important;
	margin-bottom: 0 !important;
	min-height: 58px !important;
}

.aui .nav.toggle,
.aui .toggle {
	width: auto !important;
	margin: 8px !important;
	padding: 0 !important;
}

.aui .goodyear .toggle a,
.aui .toggle a,
.aui .nav.toggle a,
.aui #menu_toggle {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 8px !important;
	color: #064fae !important;
	background: #eaf3ff !important;
}

.aui .toggle a:hover {
	background: #d6e9ff !important;
}

/* Footer: ancho util alineado al contenido (sin franja azul a la derecha) */
.aui footer,
.aui .right_col > footer,
.aui #content > footer {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
}

/* Si el footer queda fuera de right_col, alinear con el sidebar */
.aui body.nav-md .main_container > footer {
	margin-left: 270px !important;
	width: calc(100% - 270px) !important;
}

.aui body.nav-sm .main_container > footer {
	margin-left: 70px !important;
	width: calc(100% - 70px) !important;
}

.aui body.nav-md #content > footer,
.aui body.nav-sm #content > footer,
.aui body.nav-md .right_col > footer,
.aui body.nav-sm .right_col > footer {
	margin-left: 0 !important;
	width: 100% !important;
}

@media (max-width: 991px) {
	.aui body.nav-md .container.body .col-md-3.left_col,
	.aui body.nav-sm .container.body .col-md-3.left_col,
	.aui .nav-md .container.body .col-md-3.left_col,
	.aui .nav-sm .container.body .col-md-3.left_col {
		display: none !important;
	}

	.aui body.nav-md .container.body .right_col,
	.aui body.nav-sm .container.body .right_col,
	.aui body.nav-md .main_container .top_nav,
	.aui body.nav-sm .main_container .top_nav,
	.aui body.nav-md footer,
	.aui body.nav-sm footer {
		margin-left: 0 !important;
		width: 100% !important;
	}
}