html, body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	overflow: hidden !important;
	background-color: #ffffff;
}

/* Ocultar barras de scroll de forma global */
* {
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
	box-sizing: border-box;
}
*::-webkit-scrollbar {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
}

div {
	position: absolute;
}
.marco {
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: #ffffff; /* Fondo blanco general */
	overflow: hidden !important;
}
.marco_aulas {
	top: 0px;
	left: 0px;
	width: 75%;
	height: 100%;
	background-color: #ffffff;
	border-radius: 0px;
	overflow: hidden !important;
	border: none;
}
.marco_clima {
	position: absolute;
	top: 0px;
	left: 75%;
	width: 25%;
	height: 48%; /* Mantenemos el alto del 48% para dar suficiente espacio vertical */
	background-color: #ffffff;
	border-radius: 0px;
	overflow: hidden !important;
	border: none;
	border-left: 1px solid #000000; /* Divisor vertical negro fino */
	border-bottom: 1px solid #000000; /* Divisor horizontal negro fino */
}

.panel_reloj {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 75px; /* Altura fija idéntica al header izquierdo */
	background-color: #006bad; /* Azul brillante del logo */
	padding: 5px 10px;
	text-align: center;
	border-bottom: 1px solid #000000; /* Divisor negro fino */
	box-sizing: border-box;
	/* Flexbox con prefijos antiguos para máxima compatibilidad con TVs viejos */
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 12px; /* Espacio entre reloj analógico y digital */
}

.hora_actual {
	position: relative; /* Sobrescribir absolute */
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: 800;
	font-size: 26pt; /* Restaurado a su tamaño grande original */
	color: #ffffff; /* Hora blanca sobre azul */
	letter-spacing: -1px;
}

.cuerpo_clima {
	position: absolute;
	top: 75px;
	bottom: 0px;
	left: 0px;
	width: 100%;
	background-color: #ffffff;
}

.img_clima {
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: 74%;
	width: 26%;
	background-color: #ffffff;
	box-sizing: border-box;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.img_clima img {
	height: 90% !important; /* Mantenemos esta restricción para que el clima no se corte */
	width: auto !important;
	max-width: 95% !important;
}

.panel_colectivos {
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: 0px;
	width: 74%; /* Mayor ancho para evitar desbordamientos de texto */
	background-color: #ffffff;
	border-right: 1px solid #000000; /* Divisor negro vertical */
	box-sizing: border-box;
	padding: 0px;
	overflow: hidden;
}

.prox_cole_txt {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 32px;
	text-align: center;
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: 800;
	font-size: 13pt; /* Restaurado a su tamaño grande original */
	color: #006bad; /* Azul brillante del logo */
	padding: 6px 0;
	margin: 0;
	white-space: nowrap;
	box-sizing: border-box;
}

.contenedor_tabla_colectivos {
	position: absolute;
	top: 32px;
	bottom: 4px;
	left: 0px;
	right: 0px;
	overflow: hidden;
}

/* Diseño de colectivos basado en tablas HTML estándar con alto limitado al 100% de la caja */
.tabla_colectivos {
	width: 100%;
	height: 100%; /* Forzar a ocupar exactamente el alto del contenedor */
	border-collapse: separate;
	border-spacing: 0px 4px; /* Restaurado el espaciado original */
	padding: 0 4px;
	font-family: system-ui, -apple-system, sans-serif;
	box-sizing: border-box;
}

.tabla_colectivos tr {
	height: 23%; /* Garantiza que las 4 filas tengan el mismo alto y entren siempre */
}

.tabla_colectivos td {
	padding: 4px 6px; /* Restaurado el padding original cómodo */
	background-color: #f8fafc;
	border-top: 1px solid #e2e8f0;
	border-bottom: 1px solid #e2e8f0;
	vertical-align: middle;
}

.tabla_colectivos td:first-child {
	border-left: 1px solid #e2e8f0;
	border-top-left-radius: 6px;
	border-bottom-left-radius: 6px;
	text-align: left;
}

.tabla_colectivos td:last-child {
	border-right: 1px solid #e2e8f0;
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
	text-align: right;
}

.cole-badge {
	display: inline-block;
	padding: 4px 8px; /* Restaurado padding original cómodo */
	border-radius: 4px;
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: bold;
	font-size: 11pt; /* Restaurado a su tamaño grande original */
	letter-spacing: 0.5px;
	white-space: nowrap;
}

/* Colores unificados de badges (azul para numéricos, verde para AM) */
.line-6 .cole-badge,
.line-15 .cole-badge,
.line-12 .cole-badge {
	background-color: #dbeafe;
	color: #1e40af;
}

.line-am .cole-badge {
	background-color: #dcfce7;
	color: #166534;
}

.cole-time {
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: 800;
	color: #0f172a;
	font-size: 13pt; /* Restaurado a su tamaño grande original */
}

.cole-time-text {
	white-space: nowrap !important;
	display: inline-block !important;
}

.marco_noticias {
	top: 48%;
	left: 75%;
	width: 25%;
	height: 52%;
	background: #ffffff;
	border-radius: 0px;
	overflow: hidden !important;
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: bold;
	font-size: 14pt; /* Restaurado a su tamaño original */
	-webkit-transition: opacity 0.5s ease-in-out;
	-moz-transition: opacity 0.5s ease-in-out;
	-o-transition: opacity 0.5s ease-in-out;
	transition: opacity 0.5s ease-in-out;
	border-left: 1px solid #000000; /* Divisor vertical negro fino */
	border-top: 1px solid #000000; /* Divisor horizontal negro fino */
}
.logo_facu {
	top: 1pt;
	left: 1pt;
}

#tabla_header {
	width: 100%;
	font-family: system-ui, -apple-system, sans-serif;
	font-size: 18pt; /* Restaurado a su tamaño original */
	color: #FFF;
	background-color: #006bad; /* Azul del logo brillante */
	border-radius: 0px;
	border-spacing: 0px;
	height: 75px; /* Altura fija alineada con el reloj */
}

#tabla_header td {
	padding: 0 15px;
	height: 75px;
	vertical-align: middle;
}

#tabla_header img {
	max-height: 48px; /* Limitar la altura del logo para evitar desajuste vertical */
	width: auto;
	vertical-align: middle;
}

#tabla_horarios {
	width: 100%;
	border-spacing: 0px;
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: bold;
	font-size: 16pt; /* Restaurado a su tamaño original */
	color: #1e293b;
	-webkit-transition: -webkit-transform 0.8s ease-in-out;
	-moz-transition: -moz-transform 0.8s ease-in-out;
	-o-transition: -o-transform 0.8s ease-in-out;
	transition: transform 0.8s ease-in-out; /* Animación fluida de scroll */
}

#tabla_horarios td {
	text-align: center;
	height: 55pt; /* Restaurado a su tamaño original */
	border-bottom: 1px solid #f1f5f9; /* Divisor de fila interno gris sutil */
	padding: 6pt; /* Restaurado a su tamaño original */
}

/* Clases de intercalado de colores */
.fila-blanca td {
	background-color: #ffffff;
}

.fila-gris td {
	background-color: #f1f5f9; /* Gris sutil pero visible en TVs */
}

.col_car_prof {
	font-family: system-ui, -apple-system, sans-serif;
	font-weight: bold;
	font-size: 13pt; /* Restaurado a su tamaño original */
	color: #64748b; /* Gris oscuro para profesores/carreras */
}

#contenedor_horarios {
	position: absolute;
	width: 100%;
	top: 75px; /* Alineado con la nueva altura del header */
	bottom: 0px;
	left: 0px;
	right: 0px;
	overflow: hidden !important; /* Evita que la tabla animada no se filtre sobre la banda celeste */
}

.url-info {
	font-family: system-ui, -apple-system, sans-serif;
	font-size: 11pt; /* Restaurado a su tamaño original */
	color: #e0f2fe; /* Celeste claro UADER */
	font-weight: 700;
	letter-spacing: 0.5px;
}

/* Estilos para el Reloj Analógico (copiados de reloj.css con prefijos de compatibilidad) */
.reloj {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 2px solid #ffffff;
	position: relative;
	display: none;
}

.reloj::after {
	content: '';
	position: absolute;
	width: 4px;
	height: 4px;
	background: #ffffff;
	border-radius: 50%;
	top: 50%;
	left: 50%;
	margin-left: -2px;
	margin-top: -2px;
	z-index: 5;
}

.aguja {
	background: #ffffff;
	top: 50%;
	position: absolute;
	-webkit-transform-origin: 100%;
	-moz-transform-origin: 100%;
	-ms-transform-origin: 100%;
	-o-transform-origin: 100%;
	transform-origin: 100%;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

.horario {
	width: 25%;
	left: 25%;
	height: 2px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 1px;
}

.minutero {
	width: 38%;
	left: 12%;
	height: 1.5px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 1px;
}

.segundero {
	display: none;
}
