html, body {
	margin: 0;
	padding: 0;
	font-family: "Segoe UI", Arial, sans-serif;
}

.body_index {
	background: #f4f4f4;
}

.wrapper {
	padding: 20px;
}

#index-grid {
	background: #fff;
}

.toolbar-icon-img {
	width: 24px;
	height: 24px;
	vertical-align: middle;
}

.toolbar-title-span {
	font-weight: bold;
	vertical-align: middle;
	cursor: pointer;
}

.toolbar-info-span {
	padding: 0 8px;
	color: #555;
}

.k-grid .k-grid-content tr.grid-row-inactivo > td,
.k-grid .k-grid-content tr.grid-row-inactivo .k-table-td {
	color: #c62828;
	text-decoration: line-through;
}

.k-grid .k-grid-content tr.grid-row-inactivo > td.grid-estado-cell,
.k-grid .k-grid-content tr.grid-row-inactivo .k-table-td.grid-estado-cell {
	text-decoration: none;
}

.grid-estado-cell {
	text-align: center;
}

.grid-estado-lock,
.grid-estado-lock .k-icon,
.grid-estado-lock .k-svg-icon {
	color: #c62828;
}

.grid-estado-lock-header .k-icon,
.grid-estado-lock-header .k-svg-icon {
	vertical-align: middle;
}

html:has(.dashboard-shell):not(:has(#admin-toolbar)),
html:has(.dashboard-shell):not(:has(#admin-toolbar)) body {
	min-height: 100%;
	background-color: #c5cae9;
	background-image:
		radial-gradient(ellipse 85% 65% at 82% 8%, rgba(255, 255, 255, 0.78) 0%, transparent 52%),
		radial-gradient(ellipse 55% 50% at 96% 92%, rgba(178, 235, 242, 0.4) 0%, transparent 48%),
		linear-gradient(148deg, #9fa8da 0%, #c5cae9 38%, #e8eaf6 72%, #f5f7ff 100%);
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
}

.k-toolbar:not(#admin-toolbar) {
	--kendo-color-surface: #3949ab;
	--kendo-color-on-surface: #fff;
	--kendo-color-on-app-surface: #fff;
	--kendo-color-primary: #c5cae9;
	--kendo-color-border: rgba(255, 255, 255, 0.18);
	background: linear-gradient(135deg, #283593 0%, #3f51b5 58%, #5c6bc0 100%);
	border: none;
	color: #fff;
	box-shadow: 0 3px 14px rgba(26, 35, 126, 0.28);
}

.k-toolbar:not(#admin-toolbar) .toolbar-title-span {
	color: #fff;
}

.k-toolbar:not(#admin-toolbar) .toolbar-info-span,
.k-toolbar:not(#admin-toolbar) label {
	color: rgba(255, 255, 255, 0.86);
}

.k-toolbar:not(#admin-toolbar) .k-button,
.k-toolbar:not(#admin-toolbar) .k-button-md,
.k-toolbar:not(#admin-toolbar) .k-toolbar-item .k-button {
	color: #fff;
	background: transparent;
	border-color: rgba(255, 255, 255, 0.16);
}

.k-toolbar:not(#admin-toolbar) .k-button:hover,
.k-toolbar:not(#admin-toolbar) .k-button.k-hover,
.k-toolbar:not(#admin-toolbar) .k-button:focus {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	border-color: rgba(255, 255, 255, 0.28);
}

.k-toolbar:not(#admin-toolbar) .k-separator,
.k-toolbar:not(#admin-toolbar) .k-toolbar-separator,
.k-toolbar:not(#admin-toolbar) .k-toolbar-separator-vertical {
	background: rgba(255, 255, 255, 0.22);
}

.k-toolbar:not(#admin-toolbar) .k-svg-icon,
.k-toolbar:not(#admin-toolbar) .k-icon {
	color: #e8eaf6;
}

.k-toolbar:not(#admin-toolbar) .k-svg-icon svg,
.grid-seccion-cab .k-svg-icon svg,
.centros-seccion-cab .k-svg-icon svg,
.horarios-seccion-cab .k-svg-icon svg {
	fill: currentColor;
}

.grid-seccion-cab .k-svg-icon,
.grid-seccion-cab .k-icon,
.centros-seccion-cab .k-svg-icon,
.centros-seccion-cab .k-icon,
.horarios-seccion-cab .k-svg-icon,
.horarios-seccion-cab .k-icon {
	color: #fff;
}

.k-toolbar:not(#admin-toolbar) .k-input,
.k-toolbar:not(#admin-toolbar) .k-textbox,
.k-toolbar:not(#admin-toolbar) .k-dropdownlist,
.k-toolbar:not(#admin-toolbar) .k-datepicker {
	background: #fff;
	color: #263238;
}

body:not(:has(#admin-toolbar)) .dashboard-main .k-grid {
	border: none;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 10px 28px rgba(26, 35, 126, 0.1), 0 1px 4px rgba(38, 50, 56, 0.08);
	background: rgba(255, 255, 255, 0.94);
}

.grid-seccion,
.centros-seccion,
.horarios-seccion {
	margin: 12px 16px 20px 16px;
	background: rgba(255, 255, 255, 0.94);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 10px 28px rgba(26, 35, 126, 0.1), 0 1px 4px rgba(38, 50, 56, 0.08);
}

.grid-seccion-cab,
.centros-seccion-cab,
.horarios-seccion-cab {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0;
	padding: 12px 16px;
	background: linear-gradient(135deg, #283593 0%, #3f51b5 58%, #5c6bc0 100%);
	color: #fff;
}

.grid-seccion-titulo,
.centros-seccion-titulo,
.horarios-seccion-titulo {
	font-weight: 700;
	font-size: 15px;
	color: #fff;
}

.grid-seccion-acciones button,
.centros-seccion-acciones button,
.horarios-seccion-acciones button {
	margin-left: 6px;
}

.grid-seccion-cab .k-button,
.centros-seccion-cab .k-button,
.horarios-seccion-cab .k-button {
	color: #fff;
	background: transparent;
	border-color: rgba(255, 255, 255, 0.28);
}

.grid-seccion-cab .k-button:hover,
.grid-seccion-cab .k-button.k-hover,
.centros-seccion-cab .k-button:hover,
.centros-seccion-cab .k-button.k-hover,
.horarios-seccion-cab .k-button:hover,
.horarios-seccion-cab .k-button.k-hover {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.grid-seccion .k-grid,
.centros-seccion .k-grid,
.horarios-seccion .k-grid {
	margin: 0;
	border-radius: 0;
	box-shadow: none;
}
