/* Zaragoza Accesible – Tiempo. Minimalista, alto contraste, sin JS. */
.zgz-tiempo {
	--zt-fg: #1a1a1a;
	--zt-fg-suave: #4a4a4a;
	--zt-bg: #ffffff;
	--zt-borde: #767676;
	--zt-acento: #b34700; /* naranja oscuro: 5,5:1 sobre blanco */
	box-sizing: border-box;
	width: fit-content;
	max-width: 100%;
	margin: .5rem 0;
	padding: 0 .75rem;
	color: var(--zt-fg);
	background: var(--zt-bg);
	border: 1px solid var(--zt-borde);
	border-left: 6px solid var(--zt-acento);
	border-radius: 999px;
	font-size: 1rem;
	line-height: 1.5;
}
.zgz-tiempo *, .zgz-tiempo *::before, .zgz-tiempo *::after { box-sizing: inherit; }
.zgz-tiempo p { margin: 0; }

.zgz-tiempo__ignorar {
	font-weight: 700;
	font-size: .9375rem;
	color: var(--zt-fg-suave);
}
.zgz-tiempo__ahora {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .25rem .75rem;
	margin-top: .25rem;
}
.zgz-tiempo__icono { font-size: var(--zt-icono, 24px); line-height: 1; }
.zgz-tiempo__temp  { font-size: 2rem; font-weight: 700; line-height: 1.1; }
.zgz-tiempo__estado { flex: 1 1 12rem; }

.zgz-tiempo__datos {
	margin: .5rem 0 0;
	padding: 0;
	list-style: none;
}
.zgz-tiempo__datos li { margin: .125rem 0; }

/* Desplegable nativo: teclado y lector de pantalla sin JS */
.zgz-tiempo__detalle { margin-top: .5rem; }
.zgz-tiempo__detalle summary {
	display: flex;
	align-items: center;
	min-height: 44px;               /* objetivo táctil */
	padding: 0 .25rem;
	cursor: pointer;
	font-weight: 700;
	color: var(--zt-fg);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.zgz-tiempo__tabla {
	max-height: 16rem;
	overflow: auto;
	border-top: 1px solid var(--zt-borde);
}
.zgz-tiempo table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.zgz-tiempo th, .zgz-tiempo td {
	padding: .375rem .5rem;
	text-align: left;
	border-bottom: 1px solid #d0d0d0;
	white-space: nowrap;
	background: var(--zt-bg);
}
.zgz-tiempo thead th { position: sticky; top: 0; border-bottom: 2px solid var(--zt-borde); }
.zgz-tiempo__mm { color: var(--zt-fg-suave); }

.zgz-tiempo__fuente { margin-top: .5rem; font-size: .875rem; color: var(--zt-fg-suave); }
.zgz-tiempo a { color: var(--zt-fg); text-underline-offset: 2px; }

/* Foco siempre visible */
.zgz-tiempo summary:focus-visible,
.zgz-tiempo a:focus-visible,
.zgz-tiempo__tabla:focus-visible {
	outline: 3px solid var(--zt-acento);
	outline-offset: 2px;
}

/* Solo para lectores de pantalla */
.zgz-tiempo__sr {
	position: absolute !important;
	width: 1px; height: 1px;
	margin: -1px; padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

@media (forced-colors: active) {
	.zgz-tiempo { border: 1px solid CanvasText; }
}

/* Versión compacta: solo icono y temperatura; el resto se despliega */
.zgz-tiempo__detalle summary { gap: .5rem; text-decoration: none; list-style: none; }
.zgz-tiempo__detalle summary::-webkit-details-marker { display: none; }
.zgz-tiempo__detalle summary::after { content: "\25BE"; font-size: .875rem; }
.zgz-tiempo__detalle[open] summary::after { content: "\25B4"; }
.zgz-tiempo__temp { font-size: 1.25rem; }
.zgz-tiempo__panel { padding: 0 0 .75rem; }
.zgz-tiempo:has(details[open]) {
	width: min(100%, 26rem);
	border-radius: 4px;
}

.zgz-tiempo__dia { font-size: .9375rem; font-weight: 600; text-transform: capitalize; }
.zgz-tiempo--aviso { font-size: .9375rem; padding: .5rem .75rem; border-radius: 4px; }
