:root {
  --azul: #1d4ed8;
  --azul-oscuro: #1e3a8a;
  --azul-claro: #eff6ff;
  --azul-borde: #bfdbfe;
  --ambar: #f59e0b;
  --ambar-oscuro: #b45309;
  --texto: #111827;
  --gris: #374151;
  --gris-claro: #5b6472;
  --borde: #e5e7eb;
  --fondo: #f8fafc;
  --blanco: #ffffff;
  --rojo: #b91c1c;
  --rojo-claro: #fef2f2;
  --verde: #15803d;
  --verde-claro: #f0fdf4;
  --ambar-claro: #fffbeb;
  --radio: 10px;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Ubuntu, sans-serif;
  color: var(--texto); background: var(--fondo); line-height: 1.6; font-size: 17px;
}
[hidden] { display: none !important; }
a { color: var(--azul); }
button, input, select { font: inherit; color: inherit; }
ul, ol { list-style: none; }
:focus-visible { outline: 3px solid var(--ambar); outline-offset: 2px; }
.contenedor { max-width: 1160px; margin: 0 auto; padding: 0 16px; }
.saltar { position: absolute; left: -9999px; }
.saltar:focus { left: 16px; top: 8px; background: var(--blanco); padding: 8px 12px; z-index: 10; }

/* Cabecera */
.cabecera { background: var(--blanco); border-bottom: 1px solid var(--borde); position: sticky; top: 0; z-index: 5; }
.cabecera-in { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: 12px; }
.logo { display: flex; align-items: center; gap: 8px; text-decoration: none; color: var(--azul-oscuro); font-size: 22px; font-weight: 600; letter-spacing: -0.5px; }
.logo b { color: var(--azul); font-weight: 800; }
.nav { display: flex; gap: 20px; align-items: center; font-size: 15px; }
.nav a { text-decoration: none; color: var(--gris); }
.nav a:hover { color: var(--azul); }
.nav .nav-cta { background: var(--azul-claro); color: var(--azul-oscuro); padding: 6px 12px; border-radius: 999px; font-weight: 600; }

/* Hero y buscador */
.hero { background: var(--azul-oscuro); color: var(--blanco); padding: 40px 0 28px; }
.hero h1 { font-size: clamp(28px, 5vw, 42px); line-height: 1.15; letter-spacing: -0.5px; }
.hero-sub { color: #dbeafe; max-width: 720px; margin-top: 10px; font-size: 17px; }
.buscador { margin-top: 24px; background: var(--blanco); color: var(--texto); border-radius: 14px; padding: 12px; display: grid; grid-template-columns: 1fr 1fr 1.4fr; gap: 10px; }
.buscador label { display: flex; flex-direction: column; gap: 2px; padding: 4px 8px; border-radius: 8px; }
.buscador label + label { border-left: 1px solid var(--borde); }
.buscador label span { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; color: var(--gris-claro); }
.buscador select, .buscador input { border: 0; background: transparent; font-size: 17px; padding: 4px 0; width: 100%; min-width: 0; }
.buscador select:focus, .buscador input:focus { outline: none; }
.buscador label:focus-within { background: var(--azul-claro); }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.chip { background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.25); color: var(--blanco); padding: 6px 12px; border-radius: 999px; font-size: 14px; cursor: pointer; }
.chip:hover { background: rgba(255,255,255,0.2); }
.chip[aria-pressed="true"] { background: var(--ambar); border-color: var(--ambar); color: #3b2300; font-weight: 600; }

/* Tres grandes categorías */
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.categorias { padding: 24px 0 0; }
.categorias[hidden] { display: none; }
.categorias-rejilla { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.nivel-card { display: grid; gap: 4px; text-decoration: none; color: var(--texto); background: var(--blanco); border: 1px solid var(--borde); border-radius: 14px; padding: 18px; border-top: 5px solid var(--azul); }
.nivel-card:hover { border-color: var(--azul-borde); background: var(--azul-claro); }
.nivel-card-autonomica { border-top-color: #7c3aed; }
.nivel-card-local { border-top-color: var(--ambar); }
.nivel-icono { font-size: 26px; line-height: 1; }
.nivel-nombre { font-size: 19px; font-weight: 700; }
.nivel-num { font-size: 15px; font-weight: 700; color: var(--azul); }
.nivel-texto { font-size: 14px; color: var(--gris); }

.niveles { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 14px; }
.nivel-tab { background: var(--blanco); border: 1px solid var(--borde); border-radius: 999px; padding: 7px 14px; font-size: 14px; cursor: pointer; }
.nivel-tab:hover { border-color: var(--azul-borde); }
.nivel-tab[aria-pressed="true"] { background: var(--azul-oscuro); border-color: var(--azul-oscuro); color: var(--blanco); font-weight: 600; }

.ayuda-nivel { font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: 999px; }
.nivel-estatal { background: var(--azul-claro); color: var(--azul-oscuro); }
.nivel-autonomica { background: #f3e8ff; color: #5b21b6; }
.nivel-local { background: var(--ambar-claro); color: var(--ambar-oscuro); }

/* Listado */
.listado { padding: 28px 0 40px; }
.listado-cabecera { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }
.listado-cabecera h2 { font-size: 22px; }
.orden { font-size: 14px; color: var(--gris); }
.orden select { margin-left: 4px; padding: 6px 8px; border: 1px solid var(--borde); border-radius: 8px; background: var(--blanco); }
.rejilla { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: 16px; }

.ayuda { background: var(--blanco); border: 1px solid var(--borde); border-radius: 14px; padding: 18px; display: flex; flex-direction: column; gap: 8px; }
.ayuda[hidden] { display: none; }
.ayuda-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; }
.plazo { font-size: 13px; font-weight: 700; padding: 3px 10px; border-radius: 999px; }
.plazo-urgente { background: var(--rojo-claro); color: var(--rojo); }
.plazo-pronto { background: var(--ambar-claro); color: var(--ambar-oscuro); }
.plazo-abierta { background: var(--verde-claro); color: var(--verde); }
.plazo-sin { background: #f3f4f6; color: var(--gris); }
.ayuda-donde { font-size: 13px; color: var(--gris); margin-bottom: -4px; }
.ayuda-donde::before { content: '📍 '; }
.ayuda-titulo { font-size: 18px; line-height: 1.3; }
.ayuda-organismo { font-size: 14px; color: var(--gris); }
.ayuda-cuantia { font-size: 22px; font-weight: 800; color: var(--azul-oscuro); letter-spacing: -0.3px; }
.ayuda-fondo { font-size: 12px; color: var(--gris-claro); margin-top: -6px; }
.ayuda-resumen { font-size: 15px; }
.ayuda-para { font-size: 14px; color: var(--gris); }
.ayuda-requisitos { font-size: 14px; color: var(--gris); display: grid; gap: 2px; }
.ayuda-requisitos li::before { content: '✓ '; color: var(--verde); font-weight: 700; }
.ayuda-temas { display: flex; flex-wrap: wrap; gap: 6px; }
.ayuda-temas span { font-size: 12px; background: var(--azul-claro); color: var(--azul-oscuro); padding: 2px 8px; border-radius: 6px; }
.ayuda-acciones { display: flex; gap: 8px; margin-top: auto; padding-top: 6px; flex-wrap: wrap; }
.ayuda-fuente { font-size: 12px; color: var(--gris-claro); }

.btn { display: inline-block; text-decoration: none; padding: 10px 16px; border-radius: var(--radio); font-weight: 600; font-size: 15px; border: 1px solid transparent; cursor: pointer; text-align: center; }
.btn-primario { background: var(--azul); color: var(--blanco); flex: 1; }
.btn-primario:hover { background: var(--azul-oscuro); }
.btn-secundario { background: var(--blanco); color: var(--azul); border-color: var(--azul-borde); }
.btn-secundario:hover { background: var(--azul-claro); }
.btn-ambar { background: var(--ambar); color: #3b2300; }
.btn-ambar:hover { background: #fbbf24; }

.vacio { background: var(--blanco); border: 1px dashed var(--azul-borde); border-radius: 14px; padding: 24px; text-align: center; display: grid; gap: 12px; justify-items: center; }
.vacio[hidden] { display: none; }

/* Cómo funciona */
.como { background: var(--blanco); border-top: 1px solid var(--borde); padding: 36px 0; }
.como h2 { font-size: 22px; margin-bottom: 16px; }
.pasos { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; counter-reset: paso; }
.pasos li { counter-increment: paso; background: var(--fondo); border-radius: 12px; padding: 16px; font-size: 15px; color: var(--gris); }
.pasos li::before { content: counter(paso); display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--azul); color: var(--blanco); font-weight: 700; margin-bottom: 8px; }
.pasos strong { color: var(--texto); }

/* Alertas */
.alertas { background: var(--azul-claro); padding: 36px 0; }
.alertas-in { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: center; }
.alertas h2 { font-size: 24px; color: var(--azul-oscuro); }
.alertas p { color: var(--gris); margin-top: 6px; }
.alertas-form { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.alertas-form input[type="email"] { padding: 12px; border: 1px solid var(--azul-borde); border-radius: var(--radio); background: var(--blanco); }
.alertas-form .legal { grid-column: 1 / -1; font-size: 13px; color: var(--gris); }
.form-msg { grid-column: 1 / -1; font-size: 14px; margin: 0 !important; }

/* Pie */
.pie { background: #0f172a; color: #cbd5e1; padding: 36px 0; font-size: 14px; }
.pie a { color: #93c5fd; }
.pie h2 { font-size: 16px; color: var(--blanco); margin-bottom: 12px; }
.pie-niveles { display: grid; grid-template-columns: 1fr 1.2fr 2fr; gap: 24px; margin-bottom: 24px; }
.pie-lista { display: grid; gap: 6px; }
.pie-lista-cols { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 6px 16px; }
.pie-lista a { text-decoration: none; }
.pie-lista a:hover { text-decoration: underline; }
.pie-lista span { color: #64748b; font-size: 12px; }
.pie-fuente, .pie-aviso, .pie-legal { margin-top: 8px; color: #94a3b8; }

/* Páginas legales */
.legal-pagina { max-width: 760px; margin: 0 auto; padding: 32px 16px 48px; background: var(--blanco); }
.legal-pagina h1 { font-size: 28px; margin-bottom: 16px; }
.legal-pagina h2 { font-size: 18px; margin: 20px 0 6px; }
.legal-pagina p { margin-bottom: 10px; color: var(--gris); }
.rellenar { background: #fef08a; padding: 0 4px; }

@media (max-width: 760px) {
  .nav a:not(.nav-cta) { display: none; }
  .buscador { grid-template-columns: 1fr; }
  .buscador label + label { border-left: 0; border-top: 1px solid var(--borde); }
  .alertas-in { grid-template-columns: 1fr; }
  .categorias-rejilla { grid-template-columns: 1fr; gap: 10px; }
  .nivel-card { grid-template-columns: auto 1fr; column-gap: 12px; padding: 14px; }
  .nivel-icono { grid-row: span 3; align-self: center; }
  .pie-niveles { grid-template-columns: 1fr; }
  .rejilla { grid-template-columns: 1fr; }
  .chips { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
  .chip { white-space: nowrap; }
}

/* Para ti / Para tu negocio */
.para { display: flex; background: var(--fondo); border: 1px solid var(--borde); border-radius: 999px; padding: 3px; }
.para-btn { border: 0; background: transparent; padding: 6px 14px; border-radius: 999px; font-size: 15px; cursor: pointer; color: var(--gris); white-space: nowrap; }
.para-btn[aria-pressed="true"] { background: var(--azul-oscuro); color: var(--blanco); font-weight: 600; }

/* Confianza y test */
.hero-confianza { margin-top: 10px; font-size: 14px; color: #dbeafe; }
.hero-test { margin-top: 14px; font-size: 15px; color: #dbeafe; }
.hero-test a { color: var(--blanco); font-weight: 700; }

/* Vuelven cada año */
.vuelven { padding: 8px 0 40px; }
.vuelven h2 { font-size: 22px; }
.vuelven h2 small { font-size: 16px; color: var(--gris-claro); font-weight: 400; }
.vuelven-intro { color: var(--gris); margin: -6px 0 16px; max-width: 760px; }
.ayuda-vuelve { border-style: dashed; border-color: #cbd5e1; background: #fcfcfd; }
.plazo-cerrada { background: #f1f5f9; color: #334155; }
.ayuda-ultimo { font-size: 13px; color: var(--gris-claro); margin-top: -6px; }
.ayuda-concedidas { font-size: 14px; background: var(--azul-claro); color: var(--azul-oscuro); padding: 6px 10px; border-radius: 8px; }
.ayuda-auto { font-size: 13px; color: var(--ambar-oscuro); }
.ayuda-gestoria { font-size: 14px; }
.ayuda-temas a { font-size: 12px; background: var(--azul-claro); color: var(--azul-oscuro); padding: 2px 8px; border-radius: 6px; text-decoration: none; }
.ayuda-temas a:hover { text-decoration: underline; }
.btn-aviso { flex: 1; }

/* Pie */
.pie-h2 { margin-top: 18px; }
.pie-guias { margin-top: 8px; color: #94a3b8; }

/* Páginas de contenido: test, guías, avisar de un error */
.pagina { max-width: 780px; margin: 0 auto; padding: 28px 16px 56px; }
.pagina h1 { font-size: clamp(26px, 4vw, 34px); line-height: 1.2; margin-bottom: 10px; }
.pagina h2 { font-size: 21px; margin: 28px 0 8px; }
.pagina h3 { font-size: 18px; margin: 18px 0 6px; }
.pagina p, .pagina li { margin-bottom: 10px; }
.pagina ol, .pagina ul.lista { padding-left: 22px; }
.pagina ol { list-style: decimal; }
.pagina ul.lista { list-style: disc; }
.pagina .intro { font-size: 19px; color: var(--gris); }
.caja { background: var(--blanco); border: 1px solid var(--borde); border-radius: 14px; padding: 18px; margin: 16px 0; }
.caja-aviso { background: var(--ambar-claro); border-color: #fde68a; }
.migas { font-size: 14px; margin-bottom: 14px; }
.glosario dt { font-weight: 700; margin-top: 10px; }
.glosario dd { color: var(--gris); }

/* Test */
.test-paso { background: var(--blanco); border: 1px solid var(--borde); border-radius: 14px; padding: 18px; margin-bottom: 14px; }
.test-paso legend { font-weight: 700; font-size: 18px; padding: 0 4px; }
.test-paso fieldset { border: 0; }
.test-opciones { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.test-opciones label { display: flex; align-items: center; gap: 8px; border: 1px solid var(--borde); border-radius: 10px; padding: 10px 14px; cursor: pointer; background: var(--fondo); }
.test-opciones label:has(input:checked) { border-color: var(--azul); background: var(--azul-claro); }
.test-paso select, .test-paso input[type="text"], .form-campo input, .form-campo textarea, .form-campo select { width: 100%; padding: 12px; border: 1px solid #cbd5e1; border-radius: 10px; background: var(--blanco); margin-top: 8px; }
.test-error { color: var(--rojo); font-size: 15px; margin-top: 8px; }
.resultado { display: grid; gap: 10px; }
.resultado-item { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; background: var(--blanco); border: 1px solid var(--borde); border-radius: 12px; padding: 12px 14px; }
.resultado-item h3 { font-size: 17px; margin: 0; }
.resultado-item .r-cuantia { font-weight: 800; color: var(--azul-oscuro); }
.resultado-item .r-meta { grid-column: 1 / -1; font-size: 14px; color: var(--gris); }
.form-campo { margin-bottom: 14px; }
.form-campo label { font-weight: 600; }

@media (max-width: 760px) {
  .cabecera-in { height: auto; flex-wrap: wrap; padding-top: 8px; padding-bottom: 8px; row-gap: 8px; }
  .para { order: 3; width: 100%; }
  .para-btn { flex: 1; }
  .cabecera { position: static; }
}

/* ===== Variante 3: azul claro con ámbar ===== */
.cabecera-in { justify-content: space-between; }
.para { background: var(--blanco); border-color: var(--azul-borde); }

.hero { background: var(--azul-claro); color: var(--texto); padding: 32px 0 24px; border-bottom: 1px solid var(--azul-borde); }
.hero h1 { color: var(--azul-oscuro); }
.hero-sub { color: #334155; }
.hero-confianza { color: var(--azul-oscuro); }
.hero-test { color: #334155; }
.hero-test a { color: var(--azul); }

.buscador { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) auto; align-items: stretch; border: 1px solid var(--azul-borde); padding: 8px; gap: 6px; }
.buscador input { border: 0; background: transparent; font-size: 17px; padding: 4px 0; width: 100%; min-width: 0; }
.buscador input:focus { outline: none; }
.buscador-btn { font-size: 17px; padding: 10px 22px; border-radius: 10px; }
.buscador-msg { grid-column: 1 / -1; font-size: 15px; color: var(--ambar-oscuro); padding: 0 8px; }

.chip { background: var(--blanco); border: 1px solid var(--azul-borde); color: var(--azul-oscuro); }
.chip:hover { background: var(--azul-claro); border-color: var(--azul); }
.chip[aria-pressed="true"] { background: var(--ambar); border-color: var(--ambar); color: #3b2300; }

.categorias { padding: 18px 0 0; }
.nivel-card { padding: 12px 14px; gap: 2px; border-radius: 0 0 12px 12px; }
.nivel-card-estatal { border-top-color: var(--azul); }
.nivel-icono { font-size: 20px; }
.nivel-nombre { font-size: 16px; }
.nivel-num { font-size: 22px; font-weight: 800; color: var(--azul-oscuro); }
.nivel-texto { font-size: 13px; }

.listado-cabecera { gap: 10px 14px; }
.filtro-texto { flex: 1; max-width: 360px; }
.filtro-texto input { width: 100%; padding: 8px 12px; border: 1px solid var(--borde); border-radius: 10px; background: var(--blanco); font-size: 15px; }

.rejilla { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.ayuda { padding: 14px; gap: 6px; border-color: var(--azul-borde); }
.ayuda-vuelve { border-color: #cbd5e1; }
.ayuda-principal { display: grid; gap: 2px; }
.ayuda-titulo { font-size: 17px; }
.ayuda-cuantia { font-size: 21px; }
.ayuda-donde { margin-bottom: 0; }
.btn-aviso-rapido { align-self: flex-start; padding: 7px 14px; font-size: 15px; }
.ayuda-detalles summary { cursor: pointer; color: var(--azul); font-size: 15px; font-weight: 600; list-style: none; padding: 2px 0; }
.ayuda-detalles summary::-webkit-details-marker { display: none; }
.ayuda-detalles summary::after { content: ' ▾'; }
.ayuda-detalles[open] summary::after { content: ' ▴'; }
.ayuda-detalles[open] summary { margin-bottom: 8px; }
.ayuda-detalles > * + * { margin-top: 8px; }

.alertas { border-top: 1px solid var(--azul-borde); }

@media (max-width: 760px) {
  .hero { padding: 20px 0 18px; }
  .buscador { grid-template-columns: 1fr; padding: 10px; }
  .buscador label + label { border-left: 0; border-top: 1px solid var(--borde); }
  .buscador-btn { width: 100%; }
  .categorias-rejilla { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .nivel-card { display: block; text-align: center; padding: 8px 4px; }
  .nivel-icono, .nivel-texto { display: none; }
  .nivel-nombre { font-size: 12px; font-weight: 600; color: var(--gris); }
  .nivel-num { display: block; font-size: 20px; }
  .filtro-texto { max-width: none; flex-basis: 100%; order: 3; }

  /* En el móvil, las ayudas se ven en filas: nombre a la izquierda, cuánto a la derecha */
  .rejilla { gap: 0; grid-template-columns: 1fr; background: var(--blanco); border: 1px solid var(--borde); border-radius: 12px; overflow: hidden; }
  .ayuda { border: 0; border-bottom: 1px solid var(--borde); border-radius: 0; padding: 12px; background: var(--blanco); }
  .ayuda:last-child { border-bottom: 0; }
  .ayuda-vuelve { border-bottom-style: dashed; background: #fcfcfd; }
  .ayuda-top .plazo, .ayuda-nivel { font-size: 12px; padding: 2px 8px; }
  .ayuda-principal { grid-template-columns: 1fr auto; align-items: start; gap: 10px; }
  .ayuda-titulo { font-size: 16px; }
  .ayuda-cuantia { font-size: 16px; text-align: right; max-width: 42vw; }
}

/* ===== Ayudas clave ===== */
.destacadas { padding: 22px 0 0; }
.destacadas h2 { font-size: 22px; color: var(--azul-oscuro); }
.destacadas-intro { color: var(--gris); margin: 2px 0 12px; }
.destacadas-rejilla { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.destacada { display: grid; gap: 4px; background: var(--blanco); border: 2px solid var(--ambar); border-radius: 14px; padding: 14px; text-decoration: none; color: var(--texto); }
.destacada:hover { background: var(--ambar-claro); }
.destacada-cuantia { font-size: 18px; font-weight: 800; color: var(--azul-oscuro); line-height: 1.2; }
.destacada-titulo { font-size: 15px; font-weight: 600; }
.destacada-guia { font-size: 13px; color: var(--ambar-oscuro); font-weight: 700; }
.ayuda-destacada { border: 2px solid var(--ambar); }
.ayuda-clave { font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: 999px; background: var(--ambar-claro); color: var(--ambar-oscuro); }
.btn-guia { background: var(--ambar); color: #3b2300; align-self: flex-start; padding: 8px 14px; font-size: 15px; }
.btn-guia:hover { background: #fbbf24; }

/* Página de guía de una ayuda clave */
.guia-hero h1 { font-size: clamp(30px, 5vw, 44px); }
.guia-etiqueta { font-size: 14px; font-weight: 700; color: var(--ambar-oscuro); margin-bottom: 4px; }
.guia-revision { font-size: 14px; color: var(--azul-oscuro); margin-top: 10px; }
.guia-indice { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.guia-indice a { background: var(--blanco); border: 1px solid var(--azul-borde); border-radius: 999px; padding: 6px 12px; font-size: 14px; text-decoration: none; color: var(--azul-oscuro); }
.guia section { scroll-margin-top: 90px; }
.calc { border: 2px solid var(--ambar); }
.calc-rejilla { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin: 12px 0; }
.calc-rejilla label { display: grid; gap: 4px; font-weight: 600; font-size: 15px; }
.calc-rejilla select, .calc-rejilla input { padding: 10px; border: 1px solid #cbd5e1; border-radius: 10px; background: var(--blanco); font-size: 16px; }
.calc-check { display: flex; gap: 8px; align-items: center; margin: 6px 0; }
.calc-resultado { background: var(--azul-claro); border-radius: 12px; padding: 14px; margin-top: 14px; }
.calc-resultado .r-si { font-size: 19px; color: var(--verde); }
.calc-resultado .r-no { font-size: 17px; color: var(--rojo); }
.calc-nota { font-size: 14px; color: var(--gris); margin-top: 10px; }
.tabla-scroll { overflow-x: auto; margin: 10px 0; }
.tabla { width: 100%; border-collapse: collapse; background: var(--blanco); font-size: 15px; }
.tabla th, .tabla td { padding: 8px 10px; border-bottom: 1px solid var(--borde); text-align: left; vertical-align: top; }
.tabla th { background: var(--azul-claro); color: var(--azul-oscuro); }
.tabla td:nth-child(n+2) { white-space: nowrap; font-weight: 600; }
.cambios { display: grid; gap: 10px; }
.cambios li { background: var(--blanco); border: 1px solid var(--borde); border-radius: 10px; padding: 10px 12px; }
.cambio-fecha { display: inline-block; font-size: 12px; font-weight: 700; background: var(--azul-claro); color: var(--azul-oscuro); padding: 2px 8px; border-radius: 6px; margin-right: 6px; }
.aviso-cambios { border: 2px solid var(--azul-borde); background: var(--azul-claro); }
.faq { background: var(--blanco); border: 1px solid var(--borde); border-radius: 10px; padding: 10px 14px; margin-bottom: 8px; }
.faq summary { cursor: pointer; font-weight: 700; }
.faq p { margin: 8px 0 0; }

/* ===== Lo último (novedades) ===== */
.ultimo { padding: 22px 0 0; }
.ultimo h2 { font-size: 22px; color: var(--azul-oscuro); }
.novedades { display: grid; gap: 10px; }
.novedades-portada { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.novedad { background: var(--blanco); border: 1px solid var(--borde); border-radius: 12px; padding: 12px 14px; }
.novedad h3 { font-size: 17px; margin: 4px 0; }
.novedad p { margin: 0 0 6px; font-size: 15px; }
.novedad-meta { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.novedad-estado { font-size: 12px; font-weight: 700; padding: 2px 9px; border-radius: 999px; }
.novedad-oficial .novedad-estado { background: var(--verde-claro); color: var(--verde); }
.novedad-anunciado .novedad-estado { background: var(--ambar-claro); color: var(--ambar-oscuro); }
.novedad-se-habla .novedad-estado { background: #f1f5f9; color: #334155; }
.novedad-se-habla { border-style: dashed; }
.novedad-fecha { font-size: 13px; color: var(--gris-claro); }
.novedad-fuente { font-size: 13px; color: var(--gris); }
.novedad-vacia { color: var(--gris); }
.leyenda-novedades { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 10px 0 18px; font-size: 14px; }
