/*
 * ZAITEX Dashboard Pro v3
 * Azul principal: #2464E8
 * Azul oscuro: #1D1D43
 * Amarillo: #E5A000
 */

.tutor-dashboard-layout {
	--zdp-primary: #2464E8;
	--zdp-primary-dark: #1D55CC;
	--zdp-navy: #1D1D43;
	--zdp-navy-deep: #11142E;
	--zdp-gold: #E5A000;
	--zdp-white: #FFFFFF;
	--zdp-muted: #A8B3C7;
	--zdp-sidebar-width: 188px;
}

/* SIDEBAR FIJO */
.tutor-dashboard-layout .tutor-dashboard-sidebar {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	width: var(--zdp-sidebar-width) !important;
	min-width: var(--zdp-sidebar-width) !important;
	height: 100vh !important;
	min-height: 100vh !important;
	z-index: 9999 !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	background:
		radial-gradient(circle at 12% 92%, rgba(36,100,232,.18), transparent 34%),
		linear-gradient(180deg, #171A3D 0%, var(--zdp-navy) 48%, #11152E 100%) !important;
	border-right: 1px solid rgba(255,255,255,.08) !important;
	box-shadow: 10px 0 28px rgba(0,0,0,.16);
}

/* ESTRUCTURA DEL CONTENIDO
   Tutor LMS cambia la jerarquía del dashboard entre secciones.
   Por eso reservamos el espacio del sidebar en el propio layout,
   en lugar de aplicar margin-left a elementos internos. */
.tutor-dashboard-layout {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	padding-left: var(--zdp-sidebar-width) !important;
	box-sizing: border-box !important;
}

/* Todo lo que no sea el sidebar ocupa el ancho disponible. */
.tutor-dashboard-layout > :not(.tutor-dashboard-sidebar) {
	margin-left: 0 !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* Neutraliza restricciones internas de Tutor LMS al navegar entre pestañas. */
.tutor-dashboard-layout .tutor-dashboard-main,
.tutor-dashboard-layout .tutor-dashboard-content,
.tutor-dashboard-layout .tutor-dashboard-content-inner,
.tutor-dashboard-layout .tutor-dashboard-content-wrapper,
.tutor-dashboard-layout [class*="tutor-dashboard-content"] {
	margin-left: 0 !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	flex: 1 1 auto !important;
	box-sizing: border-box !important;
}

/* Evita que columnas o wrappers flex se reduzcan a unos pocos píxeles. */
.tutor-dashboard-layout .tutor-dashboard-main,
.tutor-dashboard-layout .tutor-dashboard-content {
	display: block !important;
}

.tutor-dashboard-layout .tutor-row,
.tutor-dashboard-layout [class*="tutor-row"],
.tutor-dashboard-layout [class*="dashboard-content"] {
	min-width: 0 !important;
	max-width: none !important;
}

/* LOGO */
.tutor-dashboard-layout .tutor-dashboard-sidebar-logo {
	flex: 0 0 auto;
	min-height: 62px !important;
	display: flex !important;
	align-items: center !important;
	padding: 0 12px !important;
	border-bottom: 1px solid rgba(255,255,255,.08) !important;
	background: rgba(7,10,28,.12);
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-logo img {
	max-width: 120px !important;
	max-height: 34px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
}

/* PERFIL */
.tutor-dashboard-layout .zdp-profile {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 12px;
	border-bottom: 1px solid rgba(255,255,255,.08);
}

.tutor-dashboard-layout .zdp-profile-avatar {
	width: 42px;
	height: 42px;
	min-width: 42px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--zdp-primary);
	box-shadow: 0 0 0 3px rgba(36,100,232,.14);
	background: #0D122A;
}

.tutor-dashboard-layout .zdp-profile-copy {
	min-width: 0;
}

.tutor-dashboard-layout .zdp-profile-name {
	margin: 0;
	color: var(--zdp-white);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.28;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tutor-dashboard-layout .zdp-profile-role {
	margin: 2px 0 0;
	color: var(--zdp-primary);
	font-size: 10px;
	font-weight: 600;
}

/* MENÚ */
.tutor-dashboard-layout .tutor-dashboard-sidebar-nav {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding: 9px 7px 14px !important;
	scrollbar-width: thin;
	scrollbar-color: rgba(255,255,255,.18) transparent;
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav::-webkit-scrollbar {
	width: 4px;
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav::-webkit-scrollbar-thumb {
	background: rgba(255,255,255,.18);
	border-radius: 20px;
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav ul {
	margin: 0 !important;
	padding: 0 !important;
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li {
	margin: 3px 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 7px !important;
	overflow: hidden;
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a {
	width: 100% !important;
	min-height: 36px !important;
	display: flex !important;
	align-items: center !important;
	gap: 9px !important;
	padding: 8px 9px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 7px !important;
	color: rgba(255,255,255,.90) !important;
	background: transparent !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	transition: background .18s ease, transform .18s ease, color .18s ease !important;
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a:hover {
	color: #fff !important;
	background: rgba(255,255,255,.08) !important;
	transform: translateX(2px);
}

.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a.active,
.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li.active > a {
	color: #fff !important;
	background: linear-gradient(90deg, var(--zdp-primary-dark), var(--zdp-primary)) !important;
	box-shadow: 0 7px 18px rgba(36,100,232,.25);
}

/* Elimina iconos originales para no duplicar */
.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a > i,
.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a > svg,
.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a > [class*="tutor-icon"],
.tutor-dashboard-layout .tutor-dashboard-sidebar-nav li > a > [class*="icon-"]:not(.zdp-icon) {
	display: none !important;
}

.tutor-dashboard-layout .zdp-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 17px;
	height: 17px;
	min-width: 17px;
	color: currentColor;
}

.tutor-dashboard-layout .zdp-icon svg {
	display: block !important;
	width: 17px !important;
	height: 17px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.9 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.tutor-dashboard-layout .tutor-dashboard-menu-biblioteca-premium {
	margin-top: 10px !important;
	padding-top: 10px !important;
	border-top: 1px solid rgba(255,255,255,.11) !important;
}

.tutor-dashboard-layout .tutor-dashboard-menu-biblioteca-premium > a .zdp-icon {
	color: var(--zdp-gold) !important;
}

.tutor-dashboard-layout .tutor-dashboard-menu-biblioteca-premium > a.active .zdp-icon,
.tutor-dashboard-layout .tutor-dashboard-menu-biblioteca-premium.active > a .zdp-icon {
	color: #fff !important;
}

/* Oculta el Explore Courses original */
.tutor-dashboard-layout .tutor-dashboard-sidebar > a.tutor-dashboard-permalinks,
.tutor-dashboard-layout .tutor-dashboard-sidebar .tutor-dashboard-permalinks,
.tutor-dashboard-layout .tutor-dashboard-sidebar > a[href*="/courses/"]:not(.zdp-sidebar-action) {
	display: none !important;
}

/* PIE */
.tutor-dashboard-layout .zdp-sidebar-footer {
	flex: 0 0 auto;
	padding: 8px 7px 11px;
	border-top: 1px solid rgba(255,255,255,.10);
	background: linear-gradient(180deg, rgba(17,20,46,.15), rgba(17,20,46,.92));
}

.tutor-dashboard-layout .zdp-sidebar-actions {
	display: grid;
	gap: 4px;
}

.tutor-dashboard-layout .zdp-sidebar-action {
	min-height: 37px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 8px 9px;
	border-radius: 7px;
	color: rgba(255,255,255,.92) !important;
	background: transparent;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none !important;
	transition: background .18s ease, transform .18s ease;
}

.tutor-dashboard-layout .zdp-sidebar-action:hover {
	color: #fff !important;
	background: rgba(255,255,255,.08);
	transform: translateX(2px);
}

.tutor-dashboard-layout .zdp-sidebar-action--logout:hover {
	background: rgba(229,160,0,.13);
}

.tutor-dashboard-layout .zdp-sidebar-action .zdp-action-arrow {
	margin-left: auto;
	width: 14px;
	height: 14px;
	min-width: 14px;
	opacity: .75;
}

.tutor-dashboard-layout .zdp-sidebar-meta {
	margin-top: 7px;
	padding: 8px 9px 0;
	border-top: 1px solid rgba(255,255,255,.08);
}

.tutor-dashboard-layout .zdp-sidebar-copyright,
.tutor-dashboard-layout .zdp-sidebar-tagline {
	margin: 0;
	font-size: 9px;
	line-height: 1.45;
}

.tutor-dashboard-layout .zdp-sidebar-copyright {
	color: rgba(255,255,255,.76);
	font-weight: 600;
}

.tutor-dashboard-layout .zdp-sidebar-tagline {
	margin-top: 2px;
	color: rgba(255,255,255,.45);
}

/* MÓVIL */
@media (max-width: 991px) {
	.tutor-dashboard-layout {
		padding-left: 0 !important;
	}

	.tutor-dashboard-layout .tutor-dashboard-sidebar {
		position: relative !important;
		inset: auto !important;
		width: 100% !important;
		min-width: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
	}

	.tutor-dashboard-layout > :not(.tutor-dashboard-sidebar),
	.tutor-dashboard-layout .tutor-dashboard-main,
	.tutor-dashboard-layout .tutor-dashboard-content {
		margin-left: 0 !important;
		width: 100% !important;
		max-width: none !important;
	}

	.tutor-dashboard-layout .zdp-profile,
	.tutor-dashboard-layout .zdp-sidebar-footer {
		display: none !important;
	}

	.tutor-dashboard-layout .tutor-dashboard-sidebar-nav {
		overflow: visible !important;
	}
}
