/*
 * Estilos de los BLOQUES. Se usan igual en el editor y en el sitio público.
 * Todos los colores y tipografías vienen de src/tema/tema.css (variables --cvq-*).
 */

.cvq-edicion {
  max-width: var(--cvq-ancho-edicion);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 14px;
  font-family: var(--cvq-fuente-texto);
  color: var(--cvq-tinta);
}

/* ---------- Cabecera ---------- */
.cvq-cabecera { position: relative; border-radius: var(--cvq-radio); overflow: hidden; background: var(--cvq-azul); }
.cvq-cabecera__img { display: block; width: 100%; height: auto; }
.cvq-cabecera__textos {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 4%; color: #fff; text-shadow: 0 3px 12px rgba(0, 0, 0, .6);
}
.cvq-cabecera__lema { font-family: var(--cvq-fuente-titular); font-style: italic; font-size: clamp(14px, 2.6vw, 24px); margin: 0; }
.cvq-cabecera__titulo { font-family: var(--cvq-fuente-titular); font-weight: 900; font-size: clamp(30px, 7vw, 64px); margin: .1em 0; line-height: 1; }
.cvq-cabecera__sub { font-family: var(--cvq-fuente-etiqueta); letter-spacing: .12em; text-transform: uppercase; font-size: clamp(11px, 1.8vw, 16px); margin: 0; }

/* ---------- Indicadores ---------- */
.cvq-indicadores { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.cvq-indicador {
  background: linear-gradient(#fff, #eaf0f7); border-radius: 10px; padding: 10px 12px; box-shadow: 0 3px 10px rgba(7, 26, 51, .18);
  font-family: var(--cvq-fuente-etiqueta); color: var(--cvq-azul); text-align: center;
}
.cvq-indicador__cab { display: flex; align-items: center; justify-content: space-between; gap: 6px; }
.cvq-indicador__etiqueta { font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: .03em; text-align: left; }
.cvq-indicador__valor { margin-top: 6px; background: #fff; border: 2px solid #c9d4e6; border-radius: 6px; font-weight: 700; font-size: 18px; padding: 2px 4px; }
.cvq-indicador__valor--vacio { color: var(--cvq-rojo); font-size: 14px; letter-spacing: .05em; }
.cvq-indicador__unidad { font-size: 12px; color: var(--cvq-gris); margin-top: 3px; }
.cvq-indicador__nota { font-size: 10px; color: #8a93a6; letter-spacing: .08em; text-transform: uppercase; }
.cvq-bandera { width: 20px; height: 20px; border-radius: 50%; flex: none; box-shadow: 0 0 0 2px #fff, 0 1px 3px rgba(0, 0, 0, .35); }
.cvq-bandera--ve { background: linear-gradient(#f7c600 0 33.3%, #1f3fa8 33.3% 66.6%, #d21f2b 66.6%); }
.cvq-bandera--co { background: linear-gradient(#f7c600 0 50%, #1f3fa8 50% 75%, #d21f2b 75%); }
.cvq-bandera--eu { background: radial-gradient(circle, #1f3fa8 0 34%, transparent 35%), repeating-conic-gradient(#ffd400 0 7deg, #1f3fa8 7deg 30deg); }
.cvq-bandera--us { background: linear-gradient(90deg, #1f3a8a 0 40%, transparent 40%), repeating-linear-gradient(#b91c1c 0 2px, #fff 2px 4px); }
.cvq-bandera--cl { background: linear-gradient(90deg, #1f3fa8 0 45%, #fff 45%) top / 100% 50% no-repeat, #d21f2b; }
.cvq-bandera--br { background: radial-gradient(circle, #1f3fa8 0 22%, transparent 23%), radial-gradient(#f7c600 0 52%, transparent 53%), #179a3d; }

/* ---------- Barra de edición ---------- */
.cvq-barra { display: grid; grid-template-columns: auto 1fr auto; align-items: stretch; font-family: var(--cvq-fuente-etiqueta); text-transform: uppercase; border-radius: 6px; overflow: hidden; }
.cvq-barra__dia { background: var(--cvq-azul); color: #fff; font-weight: 600; letter-spacing: .12em; padding: 10px 18px; font-size: clamp(14px, 2.4vw, 20px); display: flex; align-items: center; }
.cvq-barra__fecha { background: linear-gradient(#f3f6fb, #d9e2ef); color: var(--cvq-azul); font-weight: 700; letter-spacing: .08em; text-align: center; padding: 10px; font-size: clamp(14px, 2.6vw, 22px); display: flex; align-items: center; justify-content: center; }
.cvq-barra__ed { background: var(--cvq-azul); color: #fff; padding: 6px 14px; display: flex; flex-direction: column; justify-content: center; line-height: 1.15; text-align: right; }
.cvq-barra__ed b { font-weight: 600; font-size: clamp(10px, 1.6vw, 13px); letter-spacing: .04em; }
.cvq-barra__ed small { font-size: clamp(9px, 1.3vw, 11px); letter-spacing: .14em; color: #c9d6ee; }

/* ---------- Pergamino ---------- */
.cvq-pergamino {
  position: relative; background: radial-gradient(ellipse at 50% 40%, rgba(255, 250, 230, .75), rgba(255, 250, 230, 0) 65%), var(--cvq-papel);
  border-radius: 6px; padding: clamp(14px, 3vw, 28px); box-shadow: inset 0 0 50px rgba(140, 100, 40, .4), 0 8px 24px rgba(0, 0, 0, .35);
  outline: 3px solid var(--cvq-azul); outline-offset: -12px;
}
.cvq-pergamino__cinta {
  display: flex; align-items: center; justify-content: center; gap: 14px; background: linear-gradient(#1b3a6e, var(--cvq-azul)); color: var(--cvq-papel);
  font-family: var(--cvq-fuente-versalita); font-weight: 700; text-transform: uppercase; letter-spacing: .1em; font-size: clamp(11px, 2vw, 17px);
  padding: 9px 14px; margin-bottom: 14px; text-align: center;
}
.cvq-orn { display: block; width: clamp(18px, 6vw, 56px); height: 2px; background: var(--cvq-dorado); position: relative; }
.cvq-orn::after { content: ""; position: absolute; right: -4px; top: -3px; width: 8px; height: 8px; background: var(--cvq-dorado); transform: rotate(45deg); }
.cvq-orn--der::after { left: -4px; right: auto; }
.cvq-pergamino__contenido { display: flex; flex-direction: column; gap: 12px; }

/* ---------- Titulares y textos ---------- */
.cvq-titular { font-family: var(--cvq-fuente-titular); font-weight: 900; line-height: 1.02; margin: 0; white-space: pre-line; }
.cvq-titular--enorme { font-size: clamp(36px, 8.5vw, 84px); }
.cvq-titular--grande { font-size: clamp(28px, 6vw, 56px); }
.cvq-titular--mediano { font-size: clamp(22px, 4vw, 36px); }
.cvq-titular--chico { font-size: clamp(18px, 3vw, 26px); }
.cvq-color--tinta { color: var(--cvq-tinta); }
.cvq-color--rojo { color: var(--cvq-rojo); }
.cvq-color--azul { color: var(--cvq-azul-texto); }
.cvq-alin--centro { text-align: center; }
.cvq-alin--izquierda { text-align: left; }

.cvq-antetitulo { font-family: var(--cvq-fuente-versalita); font-weight: 700; text-transform: uppercase; letter-spacing: .32em; text-align: center; font-size: clamp(10px, 1.9vw, 15px); margin: 0; padding: 8px 0; }
.cvq-antetitulo--reglas { border-top: 3px double var(--cvq-azul); border-bottom: 1px solid var(--cvq-azul); }

.cvq-texto { font-size: clamp(17px, 2.2vw, 20px); line-height: 1.55; }
.cvq-texto--grande { font-size: clamp(19px, 2.8vw, 25px); }
.cvq-texto p { margin: 0 0 .7em; }
.cvq-texto strong { color: var(--cvq-azul-texto); }
.cvq-texto a { color: var(--cvq-azul-texto); }
.cvq-texto blockquote { border-left: 4px solid var(--cvq-dorado); margin: .5em 0; padding-left: 1em; font-style: italic; }

.cvq-cita { margin: 4px 0; padding: 14px 20px; border-left: 5px solid var(--cvq-dorado); background: rgba(15, 42, 85, .06); font-family: var(--cvq-fuente-titular); }
.cvq-cita p { margin: 0; font-size: clamp(19px, 3vw, 26px); font-style: italic; line-height: 1.3; }
.cvq-cita cite { display: block; margin-top: 8px; font-family: var(--cvq-fuente-etiqueta); font-style: normal; letter-spacing: .08em; font-size: 14px; color: var(--cvq-gris); text-transform: uppercase; }

.cvq-firma { font-family: var(--cvq-fuente-firma); color: var(--cvq-rojo); font-size: clamp(34px, 7vw, 64px); text-align: center; margin: 4px 0; line-height: 1.1; }
.cvq-firma--adornos { display: flex; align-items: center; justify-content: center; gap: 16px; }
.cvq-firma--adornos::before, .cvq-firma--adornos::after { content: ""; flex: 1; max-width: 140px; height: 2px; background: linear-gradient(90deg, transparent, #6b4f1d); }
.cvq-firma--adornos::after { background: linear-gradient(90deg, #6b4f1d, transparent); }

.cvq-fuentes { margin: 0; padding: 12px 16px; border-top: 2px solid var(--cvq-azul); border-bottom: 2px solid var(--cvq-azul); background: rgba(15, 42, 85, .07); text-align: center; font-size: 16px; }
.cvq-fuentes b { color: var(--cvq-azul); }

.cvq-separador { display: flex; align-items: center; justify-content: center; min-height: 18px; color: #6b4f1d; }
.cvq-separador--linea { border-top: 1px solid rgba(15, 42, 85, .35); min-height: 0; margin: 6px 0; }
.cvq-separador--doble { border-top: 3px double var(--cvq-azul); min-height: 0; margin: 6px 0; }
.cvq-separador--espacio { min-height: 28px; }
.cvq-separador--ornamento::before, .cvq-separador--ornamento::after { content: ""; flex: 1; max-width: 220px; height: 1px; background: currentColor; opacity: .5; margin: 0 10px; }

/* ---------- Imagen y video ---------- */
.cvq-imagen { margin: 0 auto; width: 100%; }
.cvq-imagen--medio { max-width: 70%; }
.cvq-imagen--estrecho { max-width: 46%; }
.cvq-imagen img { display: block; width: 100%; height: auto; border-radius: 6px; }
.cvq-imagen--marco img { border: 8px solid #c99a3b; box-shadow: 0 0 0 2px #7a5312, 0 8px 24px rgba(0, 0, 0, .35); border-radius: 2px; }
.cvq-imagen figcaption { font-size: 14px; color: var(--cvq-gris); margin-top: 6px; font-style: italic; }
.cvq-imagen__credito { font-style: normal; font-family: var(--cvq-fuente-etiqueta); letter-spacing: .04em; font-size: 12px; text-transform: uppercase; }
.cvq-imagen__vacia, .cvq-video--vacio, .cvq-vacio { border: 2px dashed rgba(15, 42, 85, .35); border-radius: 8px; padding: 34px 14px; text-align: center; color: var(--cvq-gris); font-family: var(--cvq-fuente-etiqueta); }
.cvq-video { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: #000; }
.cvq-video--vertical { aspect-ratio: 9 / 16; max-width: 380px; margin: 0 auto; }
.cvq-video iframe, .cvq-video video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cvq-video--vacio { aspect-ratio: auto; background: none; }

/* ---------- Noticias ---------- */
.cvq-noticia { display: block; color: inherit; text-decoration: none; background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 16px rgba(7, 26, 51, .15); }
.cvq-noticia__img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.cvq-noticia__textos { padding: 14px 18px 18px; }
.cvq-noticia--lado { display: grid; grid-template-columns: 42% 1fr; }
.cvq-noticia--lado .cvq-noticia__img { height: 100%; aspect-ratio: auto; }
.cvq-noticia__etiqueta { display: inline-block; font-family: var(--cvq-fuente-etiqueta); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #fff; background: var(--cvq-rojo); padding: 3px 9px; border-radius: 3px; }
.cvq-noticia__titulo { font-family: var(--cvq-fuente-titular); font-weight: 900; font-size: clamp(22px, 3.6vw, 32px); line-height: 1.12; margin: 8px 0 6px; }
.cvq-noticia__bajada { margin: 0; font-size: 17px; line-height: 1.45; color: #3a3a3a; }
.cvq-noticia__leer { display: inline-block; margin-top: 10px; font-family: var(--cvq-fuente-etiqueta); color: var(--cvq-azul-texto); letter-spacing: .06em; }
a.cvq-noticia:hover .cvq-noticia__titulo { color: var(--cvq-azul-texto); }

.cvq-grilla__titulo { font-family: var(--cvq-fuente-etiqueta); text-transform: uppercase; letter-spacing: .14em; font-size: 16px; color: var(--cvq-azul); border-bottom: 3px solid var(--cvq-dorado); padding-bottom: 6px; margin: 0 0 12px; }
.cvq-grilla__items { display: grid; gap: 12px; }
.cvq-grilla__items--2 { grid-template-columns: repeat(2, 1fr); }
.cvq-grilla__items--3 { grid-template-columns: repeat(3, 1fr); }
.cvq-grilla__item { display: block; color: inherit; text-decoration: none; background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 3px 10px rgba(7, 26, 51, .13); }
.cvq-grilla__item img, .cvq-grilla__sinimg { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; background: linear-gradient(135deg, #dfe6f1, #c3cfe2); }
.cvq-grilla__cat { display: block; margin: 8px 12px 0; font-family: var(--cvq-fuente-etiqueta); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--cvq-rojo); }
.cvq-grilla__item h4 { font-family: var(--cvq-fuente-titular); font-size: 18px; line-height: 1.2; margin: 6px 12px 14px; }

.cvq-columnas { display: grid; gap: 16px; }
.cvq-columnas--50-50 { grid-template-columns: 1fr 1fr; }
.cvq-columnas--60-40 { grid-template-columns: 3fr 2fr; }
.cvq-columnas--40-60 { grid-template-columns: 2fr 3fr; }
.cvq-columnas__col { display: flex; flex-direction: column; gap: 12px; min-width: 0; }

/* ---------- Página de noticia ---------- */
.cvq-articulo { max-width: 760px; margin: 0 auto; background: #fff; border-radius: 10px; padding: clamp(16px, 4vw, 40px); color: var(--cvq-tinta); font-family: var(--cvq-fuente-texto); }
.cvq-articulo__cat { font-family: var(--cvq-fuente-etiqueta); letter-spacing: .14em; text-transform: uppercase; color: var(--cvq-rojo); font-size: 14px; }
.cvq-articulo__titulo { font-family: var(--cvq-fuente-titular); font-weight: 900; font-size: clamp(30px, 5.5vw, 50px); line-height: 1.06; margin: 8px 0 12px; white-space: pre-line; }
.cvq-articulo__bajada { font-size: clamp(19px, 2.6vw, 23px); line-height: 1.4; color: #3a3a3a; margin: 0 0 12px; white-space: pre-line; }
.cvq-articulo__meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font-family: var(--cvq-fuente-etiqueta); font-size: 13px; letter-spacing: .05em; color: var(--cvq-gris); text-transform: uppercase; margin: 0 0 18px; }
.cvq-articulo__foto { margin: 0 0 20px; }
.cvq-articulo__foto img { width: 100%; height: auto; border-radius: 8px; display: block; }
.cvq-articulo__foto figcaption { font-size: 14px; color: var(--cvq-gris); font-style: italic; margin-top: 6px; }
.cvq-articulo__cuerpo { display: flex; flex-direction: column; gap: 14px; }

/* ---------- Celulares ---------- */
@media (max-width: 640px) {
  .cvq-columnas--50-50, .cvq-columnas--60-40, .cvq-columnas--40-60 { grid-template-columns: 1fr; }
  .cvq-grilla__items--3, .cvq-grilla__items--2 { grid-template-columns: 1fr 1fr; }
  .cvq-noticia--lado { grid-template-columns: 1fr; }
  .cvq-indicadores { grid-template-columns: 1fr 1fr; }
  .cvq-barra { grid-template-columns: 1fr; text-align: center; }
  .cvq-barra__dia, .cvq-barra__ed { justify-content: center; text-align: center; }
  .cvq-imagen--medio, .cvq-imagen--estrecho { max-width: 100%; }
}

/* =====================================================================================
 * CINTILLO FIJO (cabecera + 10 indicadores + barra de fecha) y HOJA de la edición
 * ===================================================================================== */
.cvq-cintillo { background: #fff; border: 1px solid #c9d1de; border-radius: 14px 14px 4px 4px; overflow: hidden; }
.cvq-cintillo__cabecera { display: block; width: 100%; height: auto; }

.cvq-cint-ind { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 4px; padding: 6px; background: #fff; }
.cvq-cint-ind__item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 3px; min-width: 0; font-family: var(--cvq-fuente-condensada); color: var(--cvq-azul); }
.cvq-cint-ind__etiqueta { font-weight: 800; font-size: clamp(9px, .95vw, 11.5px); text-transform: uppercase; line-height: 1.05; min-height: 2.1em; display: flex; align-items: center; }
.cvq-cint-ind__valor { font-weight: 800; line-height: 1.1; }
.cvq-cint-ind__extra { font-size: 10px; color: var(--cvq-gris); }

/* Estilo clásico (edición N.º 17): tarjetas blancas con borde */
.cvq-cint-ind--clasico .cvq-cint-ind__item { border: 1px solid #d5dce8; border-radius: 6px; padding: 6px 3px 5px; box-shadow: 0 1px 3px rgba(15, 42, 85, .1); }
.cvq-cint-ind--clasico .cvq-cint-ind__item svg { width: clamp(26px, 3vw, 36px); height: auto; }
.cvq-cint-ind--clasico .cvq-cint-ind__valor { width: 100%; border: 1px solid #d5dce8; border-radius: 4px; background: #f8fafd; padding: 4px 2px; font-size: clamp(10px, 1vw, 12.5px); }
.cvq-cint-ind--clasico .cvq-cint-ind__valor small { display: inline; font-size: .92em; font-weight: 700; }

/* Estilo colores (edición N.º 16): valor en recuadro de color */
.cvq-cint-ind--colores { padding: 6px 8px 8px; }
.cvq-cint-ind--colores .cvq-cint-ind__item { border: 2px solid var(--cvq-azul); border-radius: 6px; overflow: hidden; gap: 2px; padding-top: 5px; background: #fff; }
.cvq-cint-ind__cab { display: flex; align-items: center; gap: 4px; }
.cvq-cint-ind--colores svg { width: clamp(24px, 2.8vw, 34px); height: auto; }
.cvq-cint-ind--colores .cvq-cint-ind__valor { align-self: stretch; color: #fff; font-size: clamp(11px, 1.25vw, 16px); padding: 5px 2px; margin-top: auto; }
.cvq-cint-ind--colores .cvq-cint-ind__valor small { display: block; font-size: .78em; }
.cvq-cint-ind__item--verde .cvq-cint-ind__valor { background: #1d8a3a; }
.cvq-cint-ind__item--azul .cvq-cint-ind__valor { background: #1f4fb0; }
.cvq-cint-ind__item--amarillo .cvq-cint-ind__valor { background: var(--cvq-amarillo); color: var(--cvq-azul); }
.cvq-cint-ind__item--rojo .cvq-cint-ind__valor { background: #d0202e; }
.cvq-cint-ind__item--marino .cvq-cint-ind__valor { background: var(--cvq-azul); }
.cvq-cint-ind--clasico .cvq-cint-ind__item .cvq-cint-ind__valor { background: #f8fafd; color: var(--cvq-azul); }

/* Barra de día / fecha / edición */
.cvq-cint-barra { font-family: var(--cvq-fuente-condensada); font-weight: 800; text-transform: uppercase; color: var(--cvq-azul); }
.cvq-cint-barra--clasico { display: grid; grid-template-columns: 1fr 1.6fr 1fr; align-items: stretch; border-top: 3px solid var(--cvq-azul); }
.cvq-cint-barra--clasico > span { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 10px 14px; font-size: clamp(14px, 2.1vw, 26px); letter-spacing: .03em; }
.cvq-cint-barra__dia { background: var(--cvq-amarillo); clip-path: polygon(0 0, 100% 0, 92% 100%, 0 100%); }
.cvq-cint-barra__fecha { background: #fff; }
.cvq-cint-barra__ed { background: linear-gradient(#eef2f8, #dde5f0); clip-path: polygon(8% 0, 100% 0, 100% 100%, 0 100%); font-size: clamp(12px, 1.6vw, 20px) !important; }
.cvq-cint-barra--colores { display: flex; justify-content: center; flex-wrap: wrap; background: var(--cvq-azul); color: #fff; font-family: var(--cvq-fuente-titular); font-weight: 900; padding: 8px 10px; margin: 6px 8px 0; border-radius: 4px; border-bottom: 3px solid var(--cvq-dorado); }
.cvq-cint-barra--colores > span { padding: 2px clamp(8px, 1.8vw, 26px); font-size: clamp(13px, 2.1vw, 25px); white-space: nowrap; }
.cvq-cint-barra--colores > span + span { border-left: 3px solid var(--cvq-dorado); }

.cvq-hoja { background: #fff; color: var(--cvq-tinta); border: 1px solid #b9c2cf; border-radius: 4px; padding: clamp(10px, 2vw, 22px); display: flex; flex-direction: column; gap: 16px; margin-top: 12px; }

/* Banderas rectangulares */
.cvq-bandera-rect { display: inline-block; width: 24px; height: 16px; flex: none; box-shadow: 0 0 0 1px rgba(0, 0, 0, .15); }
.cvq-bandera-grande { display: block; width: 84px; height: 56px; flex: none; box-shadow: 0 0 0 1px rgba(0, 0, 0, .15); }
.cvq-bandera-rect--ve { background: linear-gradient(#f7c600 0 33.3%, #1f3fa8 33.3% 66.6%, #d21f2b 66.6%); }
.cvq-bandera-rect--co, .cvq-bandera-rect--ec { background: linear-gradient(#f7c600 0 50%, #1f3fa8 50% 75%, #d21f2b 75%); }
.cvq-bandera-rect--eu { background: radial-gradient(circle, #1f3fa8 0 22%, transparent 23%), radial-gradient(circle, transparent 0 33%, #ffd400 34% 38%, transparent 39%), #1f3fa8; }
.cvq-bandera-rect--us { background: linear-gradient(#1f3a8a, #1f3a8a) 0 0 / 42% 54% no-repeat, repeating-linear-gradient(#b91c1c 0 7.7%, #fff 7.7% 15.4%); }
.cvq-bandera-rect--cl { background: linear-gradient(#1f3fa8, #1f3fa8) 0 0 / 33% 50% no-repeat, linear-gradient(#fff 0 50%, #d21f2b 50%); }
.cvq-bandera-rect--br { background: radial-gradient(circle, #1f3fa8 0 18%, transparent 19%), conic-gradient(from 45deg, transparent 0 0), linear-gradient(135deg, transparent 32%, #f7c600 32% 68%, transparent 68%), linear-gradient(45deg, transparent 32%, #f7c600 32% 68%, transparent 68%), #179a3d; }
.cvq-bandera-rect--ar { background: linear-gradient(#75aadb 0 33.3%, #fff 33.3% 66.6%, #75aadb 66.6%); }
.cvq-bandera-rect--mx { background: linear-gradient(90deg, #006847 0 33.3%, #fff 33.3% 66.6%, #ce1126 66.6%); }
.cvq-bandera-rect--es { background: linear-gradient(#c60b1e 0 25%, #ffc400 25% 75%, #c60b1e 75%); }
.cvq-bandera-rect--pe { background: linear-gradient(90deg, #d91023 0 33.3%, #fff 33.3% 66.6%, #d91023 66.6%); }
.cvq-bandera-rect--pa { background: conic-gradient(#d21034 0 25%, #fff 0 50%, #005293 0 75%, #fff 0); }
.cvq-bandera-rect--un { background: radial-gradient(circle, #fff 0 22%, transparent 23%), #5b92e5; }

/* =====================================================================================
 * BLOQUES DE PORTADA (calcados de las ediciones del periódico)
 * ===================================================================================== */
.cvq-credito { display: block; font-family: var(--cvq-fuente-condensada); font-size: 11.5px; letter-spacing: .04em; text-transform: uppercase; color: #555; margin-top: 4px; }

/* Nota principal */
.cvq-nota__titular { margin: 0; font-family: var(--cvq-fuente-impacto); font-weight: 400; text-transform: uppercase; line-height: .96; letter-spacing: .005em; }
.cvq-nota__l1 { display: block; color: #111; font-size: clamp(40px, 7.4vw, 96px); }
.cvq-nota__l2 { display: block; color: var(--cvq-rojo-seccion); font-size: clamp(34px, 6.4vw, 84px); }
.cvq-nota__bajada { margin: 8px 0 12px; font-family: var(--cvq-fuente-condensada); font-weight: 800; font-size: clamp(19px, 2.6vw, 32px); line-height: 1.12; color: #1a1a1a; }
.cvq-nota__cuerpo { display: grid; gap: 16px; }
.cvq-nota--texto-izquierda .cvq-nota__cuerpo { grid-template-columns: minmax(200px, 1fr) 2fr; }
.cvq-nota--foto-arriba .cvq-nota__cuerpo { grid-template-columns: 1fr; }
.cvq-nota--foto-arriba .cvq-nota__foto { order: -1; }
.cvq-nota__texto { font-size: 17px; line-height: 1.42; }
.cvq-nota__texto p { margin: 0 0 .8em; }
.cvq-nota__foto { margin: 0; }
.cvq-nota__foto img { display: block; width: 100%; height: auto; }
.cvq-nota__foto figcaption { background: #1b1f27; color: #fff; padding: 8px 12px; }
.cvq-nota__pie { display: block; font-family: var(--cvq-fuente-condensada); font-weight: 700; font-size: 15px; }
.cvq-nota__foto .cvq-credito { color: #cfd5df; }

/* Sección con barra de color */
.cvq-seccion__barra { margin: 0; display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; padding: 6px 12px; color: #fff; font-family: var(--cvq-fuente-condensada); font-weight: 800; text-transform: uppercase; font-size: clamp(17px, 2vw, 22px); letter-spacing: .02em; }
.cvq-seccion__barra small { font-weight: 700; font-size: .7em; letter-spacing: .08em; opacity: .9; }
.cvq-seccion--rojo .cvq-seccion__barra { background: var(--cvq-rojo-seccion); }
.cvq-seccion--azul .cvq-seccion__barra { background: var(--cvq-azul-seccion); }
.cvq-seccion--verde .cvq-seccion__barra { background: var(--cvq-verde-seccion); }
.cvq-seccion--negro .cvq-seccion__barra { background: #1b1f27; }
.cvq-seccion__contenido { display: flex; flex-direction: column; gap: 10px; padding-top: 10px; }
.cvq-seccion--marco { border: 1px solid #b9c2cf; }
.cvq-seccion--marco .cvq-seccion__contenido { padding: 10px 12px 12px; }

/* Recuadro lateral */
.cvq-recuadro { padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
.cvq-recuadro--gris { background: #e9edf2; }
.cvq-recuadro--blanco { background: #fff; border: 1px solid #c9d1de; }
.cvq-recuadro__titulo { margin: 0; font-family: var(--cvq-fuente-condensada); font-weight: 800; font-size: clamp(22px, 2.6vw, 30px); line-height: 1.05; white-space: pre-line; }
.cvq-recuadro__cuerpo { display: flow-root; }
.cvq-recuadro__foto { float: right; width: 48%; margin: 2px 0 6px 10px; }
.cvq-recuadro__texto { margin: 0; font-size: 16px; line-height: 1.38; white-space: pre-line; }
.cvq-recuadro__cita { margin: 0; font-size: 16px; line-height: 1.38; white-space: pre-line; }

/* Reacciones por país */
.cvq-reacciones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.cvq-reacciones li { display: flex; gap: 14px; align-items: center; background: #eef1f5; padding: 10px 12px; }
.cvq-reacciones b { display: block; font-family: var(--cvq-fuente-condensada); font-weight: 800; color: var(--cvq-azul-seccion); text-transform: uppercase; font-size: 16px; }
.cvq-reacciones p { margin: 2px 0 0; font-size: 16px; line-height: 1.35; }

/* Infografía (nota en imagen) */
.cvq-infografia { display: block; margin: 0; color: inherit; text-decoration: none; }
.cvq-infografia img { display: block; width: 100%; height: auto; border: 1px solid #b9c2cf; }
a.cvq-infografia:hover img { outline: 3px solid var(--cvq-dorado); }
.cvq-infografia__fuente { display: block; font-family: var(--cvq-fuente-condensada); font-size: 12px; color: #555; margin-top: 3px; }

/* Grilla de columnas */
.cvq-grilla2 { display: grid; gap: 16px; }
.cvq-grilla2--2-iguales { grid-template-columns: 1fr 1fr; }
.cvq-grilla2--2-ancha-izq { grid-template-columns: 2fr 1fr; }
.cvq-grilla2--2-ancha-der { grid-template-columns: 1fr 2fr; }
.cvq-grilla2--3-iguales { grid-template-columns: repeat(3, 1fr); }
.cvq-grilla2__col { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.cvq-grilla2--linea .cvq-grilla2__col + .cvq-grilla2__col { border-left: 1px solid #b9c2cf; padding-left: 16px; }

@media (max-width: 900px) {
  .cvq-cint-ind { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .cvq-cint-ind { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cvq-cint-barra--clasico { grid-template-columns: 1fr; }
  .cvq-cint-barra__dia, .cvq-cint-barra__ed { clip-path: none; }
  .cvq-nota--texto-izquierda .cvq-nota__cuerpo { grid-template-columns: 1fr; }
  .cvq-nota--texto-izquierda .cvq-nota__foto { order: -1; }
  .cvq-grilla2--2-iguales, .cvq-grilla2--2-ancha-izq, .cvq-grilla2--2-ancha-der, .cvq-grilla2--3-iguales { grid-template-columns: 1fr; }
  .cvq-grilla2--linea .cvq-grilla2__col + .cvq-grilla2__col { border-left: 0; padding-left: 0; border-top: 1px solid #b9c2cf; padding-top: 14px; }
  .cvq-recuadro__foto { width: 40%; }
}
