/* Tema Ocular · estilo C. Los colores salen de theme.json; aquí se define el modo claro y los componentes. */

:root { color-scheme: dark; }

:root[data-tema="claro"] {
	color-scheme: light;
	--wp--preset--color--fondo: #f5f6fc;
	--wp--preset--color--tarjeta: #ffffff;
	--wp--preset--color--borde: #d9dcef;
	--wp--preset--color--texto: #151935;
	--wp--preset--color--texto-suave: #474d75;
	--wp--preset--color--acento-1: #5a45d6;
	--wp--preset--color--acento-2: #0a6390;
}
@media (prefers-color-scheme: light) {
	:root:not([data-tema="oscuro"]) {
		color-scheme: light;
		--wp--preset--color--fondo: #f5f6fc;
		--wp--preset--color--tarjeta: #ffffff;
		--wp--preset--color--borde: #d9dcef;
		--wp--preset--color--texto: #151935;
		--wp--preset--color--texto-suave: #474d75;
		--wp--preset--color--acento-1: #5a45d6;
		--wp--preset--color--acento-2: #0a6390;
	}
}

body { background: var(--wp--preset--color--fondo); color: var(--wp--preset--color--texto); -webkit-font-smoothing: antialiased; }
img, svg, video { max-width: 100%; height: auto; }

/* Foco visible en todo el sitio. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--acento-2);
	outline-offset: 3px;
	border-radius: 6px;
}
.skip-link.screen-reader-text:focus { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo); }

/* Cabecera */
.cabecera { position: sticky; top: 0; z-index: 20; background: color-mix(in srgb, var(--wp--preset--color--fondo) 88%, transparent); backdrop-filter: blur(10px); border-bottom: 1px solid var(--wp--preset--color--borde); }
.cabecera .wp-block-site-title a { text-decoration: none; }
.cabecera .wp-block-navigation a:hover { color: var(--wp--preset--color--texto); }
.cabecera .wp-block-search__button { background: transparent; color: var(--wp--preset--color--texto); border: 1px solid var(--wp--preset--color--borde); border-radius: 12px; padding: .45rem; }
.cabecera .wp-block-search__input { background: var(--wp--preset--color--tarjeta); color: inherit; border: 1px solid var(--wp--preset--color--borde); border-radius: 12px; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--fondo) !important; color: var(--wp--preset--color--texto) !important; }

.cambiar-tema { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; border: 1px solid var(--wp--preset--color--borde); background: transparent; color: var(--wp--preset--color--texto); cursor: pointer; }
.cambiar-tema svg { width: 20px; height: 20px; }
.cambiar-tema .icono-sol { display: none; }
:root[data-tema="claro"] .cambiar-tema .icono-sol { display: block; }
:root[data-tema="claro"] .cambiar-tema .icono-luna { display: none; }
@media (prefers-color-scheme: light) {
	:root:not([data-tema="oscuro"]) .cambiar-tema .icono-sol { display: block; }
	:root:not([data-tema="oscuro"]) .cambiar-tema .icono-luna { display: none; }
}

/* Portada */
.hero-iris { align-items: center; }
.hero-iris h1 { font-size: var(--wp--preset--font-size--portada); text-wrap: balance; margin: 0 0 .6rem; }
.texto-iris { background: linear-gradient(90deg, var(--wp--preset--color--acento-1), var(--wp--preset--color--acento-2)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero-iris p { color: var(--wp--preset--color--texto-suave); max-width: 52ch; }
.iris-svg { display: block; width: 100%; max-width: 300px; margin-inline: auto; }
.iris-svg .iris { transform-origin: 50% 50%; }
@media (prefers-reduced-motion: no-preference) {
	.iris-svg .iris { animation: ocular-giro 40s linear infinite; }
}
@keyframes ocular-giro { to { transform: rotate(360deg); } }

.seccion-encabezado { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .5rem 1rem; }
.seccion-encabezado h2 { margin: 0; }

/* Tarjetas: las del plugin (.tarjeta) y las de las consultas del tema (.consulta-tarjetas). */
.grid-tarjetas { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr)); gap: 14px; }
.tarjeta, .consulta-tarjetas .wp-block-post {
	position: relative; display: grid; gap: 6px; align-content: start; min-width: 0;
	padding: 18px; border-radius: 18px;
	background: var(--wp--preset--color--tarjeta); border: 1px solid var(--wp--preset--color--borde);
	transition: border-color .2s, transform .2s;
}
.tarjeta:hover, .consulta-tarjetas .wp-block-post:hover { border-color: var(--wp--preset--color--acento-1); }
@media (prefers-reduced-motion: no-preference) {
	.tarjeta:hover, .consulta-tarjetas .wp-block-post:hover { transform: translateY(-2px); }
}
.tarjeta__etiqueta, .consulta-tarjetas .wp-block-post-date {
	font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 700;
	color: var(--wp--preset--color--acento-2);
}
.tarjeta__titulo, .consulta-tarjetas .wp-block-post-title { font-weight: 600; font-size: 1.05rem; line-height: 1.3; margin: 0; color: var(--wp--preset--color--texto); text-decoration: none; overflow-wrap: anywhere; }
.consulta-tarjetas .wp-block-post-title a { color: inherit; text-decoration: none; }
/* Toda la tarjeta es clicable desde el enlace del título. */
.tarjeta__titulo::after, .consulta-tarjetas .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; border-radius: 18px; }
.tarjeta__detalle, .consulta-tarjetas .wp-block-post-excerpt { font-size: .9rem; color: var(--wp--preset--color--texto-suave); margin: 0; }
.consulta-tarjetas .wp-block-post-excerpt__more-text { display: none; }
.consulta-tarjetas .wp-block-post-template { gap: 14px; }

.ocular-vacio { color: var(--wp--preset--color--texto-suave); }
.ocular-filtro { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; }
.ocular-filtro a { padding: .35rem .8rem; border-radius: 999px; border: 1px solid var(--wp--preset--color--borde); text-decoration: none; color: var(--wp--preset--color--texto-suave); }
.ocular-filtro a[aria-current] { background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo); }
.ocular-tema-seccion + .ocular-tema-seccion { margin-top: 2.5rem; }

/* Botones del plugin */
.boton, .newsletter button {
	display: inline-block; padding: .7rem 1.2rem; border: 0; border-radius: 12px; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none;
	background: var(--wp--preset--color--texto); color: var(--wp--preset--color--fondo);
}
.boton:hover, .newsletter button:hover { background: var(--wp--preset--color--acento-2); color: #0f1226; text-decoration: none; }

/* Aviso clínico, fuentes y datos */
.aviso-clinico { padding: .9rem 1rem; border-radius: 14px; border: 1px solid var(--wp--preset--color--borde); border-left: 4px solid var(--wp--preset--color--acento-1); background: var(--wp--preset--color--tarjeta); font-size: .95rem; }
.fuentes { margin-top: 2rem; font-size: .95rem; color: var(--wp--preset--color--texto-suave); }
.fuentes h2 { font-size: 1.15rem; color: var(--wp--preset--color--texto); }
.revision { font-size: .85rem; color: var(--wp--preset--color--texto-suave); }
.ocular-datos { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: 12px; margin: 0; padding: 16px; border-radius: 18px; background: var(--wp--preset--color--tarjeta); border: 1px solid var(--wp--preset--color--borde); }
.ocular-datos dt { font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 700; color: var(--wp--preset--color--acento-2); }
.ocular-datos dd { margin: 0; overflow-wrap: anywhere; }
.ficha-descarga--sin-pdf { color: var(--wp--preset--color--texto-suave); }

/* Newsletter */
.pie .newsletter, .newsletter { display: grid; gap: .6rem; max-width: 560px; }
.newsletter__fila { display: flex; flex-wrap: wrap; gap: .5rem; }
.newsletter input[type="email"] { flex: 1 1 14rem; min-width: 0; padding: .7rem 1rem; font: inherit; color: inherit; border-radius: 12px; border: 1px solid var(--wp--preset--color--borde); background: var(--wp--preset--color--fondo); }
.newsletter__nota, .newsletter__mensaje { font-size: .85rem; color: var(--wp--preset--color--texto-suave); margin: 0; }

/* Pie */
.pie { border-top: 1px solid var(--wp--preset--color--borde); background: var(--wp--preset--color--tarjeta); }
.pie p { color: var(--wp--preset--color--texto-suave); }

/* Contenido de entradas */
.entrada-meta { color: var(--wp--preset--color--texto-suave); font-size: .9rem; }
.entrada-meta a { color: inherit; }
.wp-block-post-content :where(img) { border-radius: 14px; }
.wp-block-post-terms a { display: inline-block; padding: .15rem .65rem; border-radius: 999px; border: 1px solid var(--wp--preset--color--borde); text-decoration: none; font-size: .85rem; }
.wp-block-query-pagination a { text-decoration: none; }
