/* Identidad del portal: carbón y papel, columnas con filetes, el sello condensado y la barra de competencia.
   Primero el teléfono (360 px), luego se ensancha. Oscuro y claro, con preferencia del sistema o elegida. */
:root{
  --bg:#1A1B1E; --panel:#25272B; --panel2:#2F3237; --ink:#F5F3EE; --ink2:#A7A9AE; --line:#3B3E44;
  --papel:#D9CBA9; --sobre-papel:#1A1B1E;
  --uno:#E4523B; --pocos:#ECE8DD; --varios:#2FA37C; --sobre-pocos:#1A1B1E;
  --ahora:#FF5A45; --ok:#2FA37C; --aviso:#E0A33B; --error:#E4523B;
  --logo:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;
  --txt:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --gutter:16px; color-scheme:dark;
}
@media (prefers-color-scheme: light){ :root:not([data-theme="dark"]){
  --bg:#FFFFFF; --panel:#F2F2F0; --panel2:#E6E6E2; --ink:#17181A; --ink2:#5C5F66; --line:#D9D9D4;
  --papel:#E6D9B8; --sobre-papel:#17181A; --uno:#D23F28; --pocos:#CFCBBF; --varios:#1F8F6A; --sobre-pocos:#17181A;
  --ahora:#D23F28; --ok:#1F8F6A; --aviso:#A86B00; --error:#C23620; color-scheme:light } }
:root[data-theme="light"]{
  --bg:#FFFFFF; --panel:#F2F2F0; --panel2:#E6E6E2; --ink:#17181A; --ink2:#5C5F66; --line:#D9D9D4;
  --papel:#E6D9B8; --sobre-papel:#17181A; --uno:#D23F28; --pocos:#CFCBBF; --varios:#1F8F6A; --sobre-pocos:#17181A;
  --ahora:#D23F28; --ok:#1F8F6A; --aviso:#A86B00; --error:#C23620; color-scheme:light }

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--txt);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;padding-bottom:calc(70px + env(safe-area-inset-bottom,0px));overflow-x:hidden}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--papel);outline-offset:2px}
.wrap{max-width:1360px;margin:0 auto;padding-inline:var(--gutter)}
.angosta{max-width:520px}
.media{max-width:860px}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.015em;line-height:1.12;text-wrap:balance}
p{margin:0}
.rot{font-family:var(--logo);font-weight:900;text-transform:uppercase;letter-spacing:.01em;line-height:.95}
.tenue{color:var(--ink2)}
.chico{font-size:13.5px}
.oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}

/* franja de papel */
.franja{background:var(--papel);color:var(--sobre-papel)}
.franja .wrap{display:flex;gap:12px;align-items:center;justify-content:center;padding-block:9px;font-weight:500;font-size:15px;flex-wrap:wrap;text-align:center}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:4px;padding:10px 16px;font-weight:700;font-size:15px;text-decoration:none;border:1px solid transparent;white-space:nowrap;background:none;min-height:44px;transition:transform .15s ease,background-color .15s ease}
.btn:active{transform:translateY(1px)}
.btn.osc{background:var(--sobre-papel);color:var(--papel)}
.btn.claro{background:var(--ink);color:var(--bg)}
.btn.linea{border-color:var(--ink)}
.btn.peligro{background:var(--error);color:#fff}
.btn.chico{min-height:36px;padding:7px 12px;font-size:13.5px}
.btn.ancho{width:100%}
.enl{background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px;font-weight:600;cursor:pointer}

/* utilidades y cabecera */
.util{border-bottom:1px solid var(--line);font-size:12.5px;color:var(--ink2)}
.util .wrap{display:flex;gap:18px;align-items:center;padding-block:8px;flex-wrap:wrap}
.util button{background:none;border:0;padding:0 2px;color:var(--ink2)}
.util button[aria-pressed="true"]{color:var(--ink);font-weight:700}
.util .der{margin-left:auto}
.cab{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:var(--bg)}
.cab .wrap{display:flex;align-items:center;gap:18px;padding-block:10px}
.logo{text-decoration:none;display:grid;border:3px solid var(--ink);padding:3px 8px 2px;transform:rotate(-2deg);flex:none;transition:transform .25s ease}
.logo:hover{transform:rotate(0)}
.logo b{font-family:var(--logo);font-weight:900;font-size:27px;line-height:.86;letter-spacing:.005em;text-transform:uppercase}
.logo small{font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;text-align:right}
.nav{display:none;gap:20px;font-weight:700;font-size:15.5px}
.nav a{text-decoration:none;padding-block:6px;border-bottom:3px solid transparent}
.nav a.on{border-color:var(--ink)}
.cab .acc{display:flex;gap:8px;margin-left:auto}
.cab .acc .btn{min-height:38px;padding:8px 13px;font-size:14px}

/* contenido */
main{display:block}
.pagina{padding-block:24px 40px;display:grid;gap:22px}
.pagina>*,.banda>*,.col>*{min-width:0}
.titulo{font-size:clamp(28px,7vw,40px);font-weight:800;letter-spacing:-.02em}
.bajada{font-size:17px;color:var(--ink2);max-width:60ch}
.banda{border-top:1px solid var(--line);padding-block:22px;display:grid;gap:14px}
.panel{background:var(--panel);padding:16px;display:grid;gap:12px;align-content:start;border-radius:6px}
.panel h2{font-size:18px}
.caja{border:1px solid var(--line);border-radius:8px;padding:16px;display:grid;gap:14px}
.sello-dato{display:inline-flex;gap:10px;align-items:center;font-size:14px}
.sello-dato i{width:14px;height:16px;background:var(--papel);clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);flex:none}
.sello-dato.viejo i{background:var(--aviso)}
.sello-dato.sin i{background:var(--ink2)}

/* formularios */
form.formulario{display:grid;gap:16px}
.campo{display:grid;gap:6px}
.campo label{font-weight:700;font-size:14.5px}
.campo input[type=email],.campo input[type=password],.campo input[type=text],.campo input[type=time],.campo input[type=number],.campo select,.campo textarea{width:100%;border:1px solid var(--ink2);border-radius:4px;padding:12px;background:var(--bg);color:var(--ink);font-size:16px;min-height:46px}
.campo input:focus,.campo select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb,var(--papel) 45%,transparent)}
.campo .ayuda{font-size:13px;color:var(--ink2)}
.campo .err,.errores{color:var(--error);font-size:14px;font-weight:600}
.errores{border-left:4px solid var(--error);padding:8px 12px;background:color-mix(in srgb,var(--error) 10%,transparent)}
.errores ul,.campo ul{margin:0;padding-left:18px}
.casilla{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line)}
.casilla:first-child{border-top:0}
.casilla input{width:22px;height:22px;margin:2px 0 0;accent-color:var(--varios);flex:none}
.casilla b{display:block}
.acciones{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.separa{display:flex;align-items:center;gap:10px;color:var(--ink2);font-size:13px}
.separa::before,.separa::after{content:"";flex:1;border-top:1px solid var(--line)}

/* mensajes */
.mensajes{display:grid;gap:8px;margin-top:16px}
.msg{padding:12px 14px;border-left:4px solid var(--varios);background:var(--panel);font-weight:600;animation:entra .35s ease both}
.msg.error{border-color:var(--error)}
.msg.warning{border-color:var(--aviso)}
@keyframes entra{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* datos y listas */
.datos{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0;font-size:15px}
.datos dt{color:var(--ink2)}
.datos dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.linea-tiempo{display:grid;border-left:1px solid var(--line);margin-left:6px}
.linea-tiempo>div{display:grid;gap:2px;padding:0 0 16px 18px;position:relative}
.linea-tiempo>div::before{content:"";position:absolute;left:-6.5px;top:4px;width:12px;height:12px;border-radius:50%;border:2px solid var(--papel);background:var(--bg)}
.linea-tiempo time{font-family:var(--mono);font-size:12px;color:var(--ink2)}

/* píldoras de estado */
.estado{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 8px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.estado::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink2)}
.estado.ok::before,.estado.enviado::before,.estado.simulado::before{background:var(--ok)}
.estado.con_errores::before,.estado.fallido::before,.estado.error::before,.estado.descartado::before,.estado.interrumpida::before{background:var(--error)}
.estado.aviso::before,.estado.omitido::before,.estado.omitido_tope::before,.estado.omitido_baja::before{background:var(--aviso)}
.estado.en_curso::before,.estado.pendiente::before{background:var(--papel);animation:late 1.2s ease-in-out infinite}
@keyframes late{50%{opacity:.3}}

/* barra inferior del teléfono */
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--bg);border-top:1px solid var(--line);display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:5px 4px calc(5px + env(safe-area-inset-bottom,0px))}
.tabbar a{display:grid;justify-items:center;gap:2px;text-decoration:none;font-size:10.5px;font-weight:600;color:var(--ink2);padding:5px 0}
.tabbar a svg{width:22px;height:22px}
.tabbar a.on{color:var(--ink)}

/* pie */
footer.pie{border-top:1px solid var(--line);color:var(--ink2);font-size:12.5px;display:grid;gap:7px;padding-block:20px 28px}
footer.pie b{color:var(--ink)}

/* ===== portal público ===== */
.saltar{position:absolute;left:-999px;top:0;z-index:50;background:var(--ink);color:var(--bg);padding:10px 14px}
.saltar:focus{left:8px;top:8px}
.k{font-size:12.5px;color:var(--ink2);font-weight:600;margin:0}
.k a{text-decoration:none}
.k a:hover{text-decoration:underline}
.titulo-sec{font-size:clamp(24px,6vw,30px);font-weight:800;letter-spacing:-.02em}
.enl{justify-self:start}
a.enl{text-decoration:underline}
.dos-col{display:grid;gap:0 30px}

/* buscador de la cabecera y botón de lupa en el teléfono */
.busca{display:none;flex:1;max-width:320px;margin-left:auto;border:1px solid var(--ink2);border-radius:4px;padding:0 12px;gap:8px;align-items:center;color:var(--ink2)}
.busca svg{width:18px;height:18px;flex:none}
.busca input{border:0;background:none;padding:9px 0;width:100%;min-width:0;font-size:15px;outline:none}
.busca:focus-within{border-color:var(--ink)}
.btn-icono{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:4px;color:var(--ink)}
.btn-icono svg{width:22px;height:22px}

/* fila de categorías */
.cats{border-bottom:1px solid var(--line)}
.cats .wrap{display:flex;gap:8px;overflow-x:auto;padding-block:10px;scrollbar-width:none;align-items:center;-webkit-overflow-scrolling:touch}
.cats .wrap::-webkit-scrollbar{display:none}
.cats .wrap>svg{width:20px;height:20px;flex:none}
.cat{flex:none;background:var(--panel);border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:600;display:inline-flex;align-items:center}
.cat a{text-decoration:none;padding:6px 4px 6px 12px;white-space:nowrap}
.cat form{display:inline-flex}
.cat button{background:none;border:0;border-left:1px solid var(--line);margin-left:6px;padding:6px 11px 6px 9px;color:var(--ink2);font-weight:700;min-height:32px}
.cat:hover{border-color:var(--ink)}
.cat.seguida{border-color:var(--varios)}
.cat.seguida button{color:var(--varios)}

/* cinta de última hora */
.cinta{border-bottom:1px solid var(--line);display:flex;align-items:stretch;font-size:13.5px;overflow:hidden}
.cinta>b{flex:none;background:var(--ahora);color:#fff;padding:7px 12px;font-family:var(--logo);font-weight:900;font-size:17px;letter-spacing:.03em;text-transform:uppercase;z-index:1;display:flex;align-items:center}
.cinta-vista{overflow:hidden;flex:1;min-width:0;display:flex;align-items:center}
.cinta .pista{display:flex;gap:36px;white-space:nowrap;padding-left:24px;animation:corre 70s linear infinite;width:max-content}
.cinta .eco{display:flex;gap:36px}
.cinta:hover .pista,.cinta:focus-within .pista{animation-play-state:paused}
.cinta a{text-decoration:none}
.cinta a:hover{text-decoration:underline}
.cinta i{font-style:normal;font-family:var(--mono);color:var(--ink2);margin-right:8px}
@keyframes corre{to{transform:translateX(-50%)}}

/* indicadores fijos: siempre en el mismo lugar */
.fijos{border-bottom:1px solid var(--line)}
.fijos-pista{position:relative;display:flex;overflow-x:auto;scrollbar-width:none;gap:0;-webkit-overflow-scrolling:touch}
.fijos-pista::-webkit-scrollbar{display:none}
.fijo{flex:none;display:grid;grid-template-columns:auto auto;align-items:baseline;gap:0 8px;padding:9px 16px 9px 0;margin-right:16px;border-right:1px solid var(--line);text-decoration:none;white-space:nowrap}
.fijo:last-child{border-right:0}
.fijo small{grid-column:1/-1;font-size:10.5px;color:var(--ink2);font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.fijo strong{font-size:16px}
.fijo:hover strong{text-decoration:underline;text-underline-offset:3px}
.fijos.en-pagina{border:1px solid var(--line);padding-inline:12px}

/* periodo y cifras */
.periodo{display:grid;gap:10px;padding-block:16px 4px}
.periodo-cab{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap}
.seg{display:inline-flex;border:1px solid var(--ink2);border-radius:4px;overflow:hidden}
.seg a{text-decoration:none;padding:8px 13px;font-size:13.5px;font-weight:600;border-left:1px solid var(--ink2);white-space:nowrap}
.seg a:first-child{border-left:0}
.seg a.on{background:var(--ink);color:var(--bg)}
.cifras{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.cifras>a,.cifras>div{background:var(--bg);padding:12px 12px 10px;display:grid;gap:3px;align-content:start;text-decoration:none;min-width:0}
.cifras small{display:block;font-size:11.5px;color:var(--ink2);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.cifras strong{font-family:var(--mono);font-size:clamp(19px,5.6vw,24px);font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}
.cifras a:hover strong{text-decoration:underline;text-underline-offset:3px}
.cifras .larga{grid-column:1/-1;display:grid;gap:8px}
.cifras[hidden]{display:none}

/* anuncios: alto reservado para que nada salte al cargar */
.anuncio{border:1px dashed var(--ink2);color:var(--ink2);display:grid;place-items:center;align-content:center;gap:2px;text-align:center;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;margin-block:18px;padding:8px}
.anuncio small{font-size:10px;letter-spacing:.04em;text-transform:none}
.anuncio.banda{min-height:100px}
.anuncio.caja{min-height:250px;border-radius:0}
.anuncio.directo,.anuncio.google{border-style:solid;border-color:var(--line);padding:6px;gap:6px;text-transform:none;letter-spacing:0}
.anuncio.directo a{display:block;width:100%}
.anuncio.directo img{display:block;width:100%;max-height:250px;object-fit:contain;margin-inline:auto}
.anuncio.banda.directo img{max-height:100px}
.anuncio.google ins{width:100%}
.anuncio-rotulo{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink2)}
/* aviso de cookies: fijo abajo, encima de la barra del teléfono */
.cookies-aviso{position:fixed;left:8px;right:8px;bottom:calc(64px + env(safe-area-inset-bottom,0px));z-index:40;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 28px rgba(0,0,0,.25);padding:12px 14px;display:grid;gap:10px;font-size:13.5px;max-width:720px;margin-inline:auto}
.cookies-aviso p{margin:0}
.cookies-aviso form{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
/* páginas legales */
.legal-nav{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:13px;margin-bottom:14px}
.legal-nav a{color:var(--ink2)}
.legal-nav a.on{color:var(--ink);font-weight:700;text-decoration:none}
.legal-fecha{color:var(--ink2);margin:6px 0 18px}
.legal-texto,.legal-vivo{font-size:16.5px;line-height:1.6;overflow-wrap:anywhere}
.legal-texto h2,.legal-vivo h2{font-size:21px;margin:26px 0 8px}
.legal-texto ul,.legal-vivo ul{padding-left:20px}
.legal-texto li,.legal-vivo li{margin-block:4px}
.legal-vivo{border-top:1px solid var(--line);margin-top:24px}
.senal-def{border-left:4px solid var(--uno);padding:2px 0 2px 12px;margin-block:16px}
.senal-def h3{font-size:17px;margin:0 0 4px}
.senal-def p{margin:4px 0}
.tramos-def{list-style:none;padding:0!important;display:grid;gap:6px}
.tramos-def li{display:flex;gap:8px;align-items:center}
.tramos-def .cuadro{width:14px;height:14px;border-radius:2px;flex:none}
.cuadro.uno{background:var(--uno)}.cuadro.pocos{background:var(--pocos);border:1px solid var(--line)}.cuadro.varios{background:var(--varios)}
.tabla-legal{display:grid;border-top:1px solid var(--line)}
.fila-legal{display:grid;gap:2px 14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.fila-legal small{color:var(--ink2)}

/* rejilla de la portada */
.tres{display:grid;gap:30px;padding-block:10px 22px}
.col{display:grid;gap:22px;align-content:start;min-width:0}
.orden-1{order:1}.orden-2{order:2}.orden-3{order:3}
.caja .lead{font-size:17px;line-height:1.35}
.caja .lead a{text-decoration:none}
.fila{display:grid;grid-template-columns:86px 1fr;background:var(--panel);text-decoration:none;align-items:stretch;min-height:74px}
.fila img,.fila .sin-img{width:86px;height:100%;min-height:74px;object-fit:cover;display:block;background:var(--panel2)}
.fila b{padding:10px 12px;font-size:15.5px;line-height:1.2;align-self:center}
.fila:hover b{text-decoration:underline;text-underline-offset:3px}
.mas{font-size:14.5px}
a.sello-dato{text-decoration:none}
a.sello-dato:hover span{text-decoration:underline}

/* titular con foto */
.hero{display:grid;text-decoration:none;background:var(--panel);color:#fff;position:relative;overflow:hidden;min-height:340px}
.hero img{grid-area:1/1;width:100%;height:100%;min-height:400px;object-fit:cover;display:block}
.hero .txt{grid-area:1/1;align-self:end;padding:150px 16px 16px;background:linear-gradient(to top,rgba(14,15,18,.94) 42%,transparent);display:grid;gap:12px}
.hero h2{font-size:clamp(27px,7vw,42px);font-weight:700;letter-spacing:-.02em;line-height:1.08}
.hero .k{color:#fff;opacity:.88}
.hero:hover h2{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.hero .mini{color:#E8E6E1}
.hero.sin-foto{background:var(--papel);color:var(--sobre-papel);min-height:0}
.hero.sin-foto .txt{background:none;padding:22px 16px}
.hero.sin-foto .k,.hero.sin-foto .mini{color:var(--sobre-papel)}
.cred{position:absolute;top:8px;right:8px;font-size:10.5px;background:rgba(14,15,18,.66);color:#fff;padding:2px 7px;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* listas de notas y de concursos */
.lista{display:grid;align-content:start}
.item{display:grid;gap:7px;padding:16px 0;border-top:1px solid var(--line);text-decoration:none;min-width:0}
.lista>.item:first-child{border-top:0;padding-top:0}
.item h3{font-size:19px;line-height:1.2;overflow-wrap:anywhere}
.item:hover h3{text-decoration:underline;text-underline-offset:3px}
.item.con-foto{grid-template-columns:minmax(0,1fr) 104px;column-gap:14px}
.item.con-foto>*{grid-column:1}
.item.con-foto img{grid-column:2;grid-row:1/4;width:104px;height:84px;object-fit:cover;align-self:center}
.item.destacado h3{font-size:24px}
.linea-dato{font-size:13.5px;color:var(--ink2)}
.linea-dato b{color:var(--ink);font-weight:600}
.t-uno-txt{color:var(--uno);font-weight:700}

/* barra mini de las tarjetas */
.mini{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink2);flex-wrap:wrap}
.mini i{display:flex;flex:none;width:82px;height:7px;background:var(--panel2);overflow:hidden}
.mini i b{display:block;height:100%}
.mini.sin i{background:repeating-linear-gradient(90deg,var(--panel2) 0 5px,transparent 5px 8px)}

/* ahora: línea de tiempo */
.ahora h2{color:var(--ahora);font-size:20px;display:flex;gap:8px;align-items:center;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.ahora h2::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--ahora);box-shadow:0 0 0 4px color-mix(in srgb,var(--ahora) 25%,transparent)}
.ahora-linea{display:grid;border-left:1px solid var(--line);margin-left:6px}
.ahora-linea a{display:grid;gap:3px;text-decoration:none;padding:0 0 18px 18px;position:relative}
.ahora-linea a::before{content:"";position:absolute;left:-6.5px;top:4px;width:12px;height:12px;border-radius:50%;border:2px solid var(--ahora);background:var(--bg)}
.ahora-linea time{font-family:var(--mono);font-size:12px;color:var(--ahora);font-weight:600}
.ahora-linea b{font-size:15.5px;line-height:1.25}
.ahora-linea span{font-size:13px;color:var(--ink2)}
.ahora-linea a:hover b{text-decoration:underline;text-underline-offset:3px}

/* ojo con esto */
.ojo-t{display:flex;gap:10px;align-items:center}
.ojo-t::before{content:"";width:14px;height:14px;background:var(--uno);border-radius:2px;flex:none}
.tarj{border:4px solid var(--uno);border-radius:8px;display:grid;background:var(--panel);text-decoration:none;overflow:hidden}
.tarj .in{padding:12px;display:grid;gap:9px}
.tarj h3{font-size:19px;line-height:1.2}
.tarj:hover h3{text-decoration:underline;text-underline-offset:3px}
.etiq{display:flex;gap:6px;flex-wrap:wrap}
.etiq span{font-size:11.5px;font-weight:700;padding:3px 7px;border-radius:3px;background:var(--uno);color:#fff}

/* punto ciego: compras grandes de las que ningún medio habló */
.ciego-marca{display:flex;gap:10px;align-items:center}
.ciego-marca svg{width:46px;height:27px;flex:none}
.ciego-marca .rot{font-size:clamp(34px,9vw,42px)}
.ciego-t{border-width:5px}
.ciego-t .rel{position:relative;display:block}
.ciego-t img{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;display:block}
.etiq span.b{background:var(--ink);color:var(--bg)}
.ciego-rejilla{display:grid;gap:16px}
.ciego-dato{color:var(--uno);font-weight:700}
.aviso-plan{background:var(--panel);align-items:center}

/* en los medios: la foto y el titular son de cada medio; el enlace lleva a su nota */
.cab-sec{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.medios{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.medio{display:grid;grid-template-rows:auto 1fr;background:var(--panel);border-radius:8px;overflow:hidden;min-width:0}
.medio-img{position:relative;display:block}
.medio-img img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;display:block;background:var(--panel2)}
.medio .in{padding:12px;display:grid;gap:7px;align-content:start;min-width:0}
.medio small{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;display:flex;justify-content:space-between;gap:8px}
.medio small a{text-decoration:none}
.medio small i{font-style:normal;font-weight:500;color:var(--ink2);letter-spacing:0;text-transform:none;white-space:nowrap}
.medio-tit{font-weight:700;font-size:16.5px;line-height:1.25;text-decoration:none;overflow-wrap:anywhere}
.medio-tit:hover{text-decoration:underline;text-underline-offset:3px}
.ata{font-size:12.5px;color:var(--ink2);overflow-wrap:anywhere}
.ata a{color:var(--ink);font-weight:600}
.medio.sin-img{grid-template-rows:1fr;border-top:4px solid var(--papel)}
.medio.es-x{border-top:4px solid var(--ink)}
.x-pub{margin:0;border-left:3px solid var(--line);padding-left:10px;display:grid;gap:6px;font-size:15px;overflow-wrap:anywhere}
.x-pub a{font-size:13px}
.x-cargada .x-mostrar{display:none}
.medios-lista{margin:0;padding-left:18px;display:grid;gap:9px;font-size:14px;overflow-wrap:anywhere}
.medios-lista li{display:grid;gap:2px}
.medios-filtro{max-width:100%;overflow-x:auto;scrollbar-width:thin}

/* tablas con barra (quién compra, categorías, fichas) */
.tabla{display:grid}
.tr{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.5fr);gap:6px 14px;padding-block:10px;border-top:1px solid var(--line);align-items:center;font-size:14.5px}
.tr b{font-weight:600;min-width:0;overflow-wrap:anywhere}
.tr b>a{text-decoration:none}
.tr b>a:hover{text-decoration:underline}
.tr small{display:block;font-size:12px;color:var(--ink2);font-weight:400}
.tr small a{text-decoration:none}
.barra{display:flex;height:22px;font-size:11px;font-weight:700;overflow:hidden;width:100%;background:var(--panel2)}
.barra>a,.barra>span{display:grid;place-items:center;white-space:nowrap;overflow:hidden;min-width:0;text-decoration:none}
.barra .t-uno{background:var(--uno);color:#fff}
.barra .t-pocos{background:var(--pocos);color:var(--sobre-pocos)}
.barra .t-varios{background:var(--varios);color:#fff}
.barra>a:hover{filter:brightness(1.12)}

/* bandas */
.banda>p{max-width:72ch}

/* gráficas */
.graficas{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.gra{background:var(--bg);padding:18px 16px;display:grid;gap:12px;align-content:start;min-width:0}
.gra h3{font-size:20px;line-height:1.2}
.gra p{margin:0;font-size:14.5px;color:var(--ink2);max-width:60ch}
.gra svg,.mapa-caja svg{width:100%;height:auto;display:block;overflow:visible}
svg text{font-family:var(--mono);font-size:11px;fill:var(--ink2)}
svg text.fuerte{fill:var(--ink);font-weight:600;font-size:12px}
.pulso .b,.anios rect{fill:var(--panel2);transform-box:fill-box;transform-origin:bottom;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.anios rect{fill:var(--papel)}
.pulso .b.s{fill:var(--uno)}
.pulso a:hover .b,.anios a:hover rect{fill:var(--ink2)}
.pulso .l{fill:none;stroke:var(--ink);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.8s ease-out;pointer-events:none}
.waffle{display:grid;grid-template-columns:repeat(20,1fr);gap:3px}
.waffle a{display:contents}
.waffle i{aspect-ratio:1;display:block;transition:opacity .4s,transform .4s}
.waffle .w-uno i{background:var(--uno)}
.waffle .w-pocos i{background:var(--pocos)}
.waffle .w-varios i{background:var(--varios)}
.waffle a:hover i{opacity:.75}
.arbol{position:relative;aspect-ratio:16/10;width:100%}
.arbol a{position:absolute;padding:6px 7px;overflow:hidden;border:1px solid var(--bg);font-size:12px;line-height:1.15;font-weight:700;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;background:color-mix(in oklch,var(--uno) var(--m),var(--varios));transition:opacity .6s,transform .6s}
.arbol a small{font-family:var(--mono);font-weight:500;font-size:11px;opacity:.92}
.arbol a:hover{filter:brightness(1.12);z-index:1}
.escala{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink2);margin:0}
.escala i{display:block;height:9px;flex:1;max-width:180px;background:linear-gradient(to right,var(--panel2),var(--uno))}
.escala i.escala-comp{background:linear-gradient(to right,var(--varios),var(--uno))}
.reloj line{stroke:var(--papel);stroke-width:9;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1s ease-out}
.reloj line.pico{stroke:var(--uno)}
.reloj a:hover line{stroke:var(--ink)}
.reloj circle{fill:none;stroke:var(--line)}
.reloj{max-width:340px;justify-self:center}
.pares{display:grid;gap:14px}
.pares .barra{height:30px}
.pares .barra a{transition:flex-basis 1s cubic-bezier(.2,.8,.2,1)}
.pares small{font-size:12px;color:var(--ink2);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.t1{background:#8F99A8;color:#fff}.t2{background:var(--papel);color:var(--sobre-papel)}.t3{background:#5B8DEF;color:#fff}.t4{background:var(--varios);color:#fff}.t5{background:var(--uno);color:#fff}
.leyenda{list-style:none;margin:0;padding:0;display:flex;gap:6px 14px;flex-wrap:wrap;font-size:12px;color:var(--ink2)}
.leyenda a{text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.leyenda a:hover{text-decoration:underline}
.leyenda i{width:10px;height:10px;display:inline-block}
.deps{display:grid;gap:8px}
.deps a{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:center;font-size:13.5px;text-decoration:none}
.deps a:hover span:first-child{text-decoration:underline}
.deps i{display:block;height:12px;background:var(--papel);transform-origin:left;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.deps a:first-child i{background:var(--uno)}
.deps .q{font-family:var(--mono);font-size:12.5px}

/* mapa */
.mapa-caja{display:grid;gap:22px}
.mapa path{fill:color-mix(in srgb,var(--uno) calc(var(--t)*1%),var(--panel2));stroke:var(--bg);stroke-width:1.2;transition:opacity .5s,transform .5s;transform-box:fill-box;transform-origin:center}
.mapa a:hover path,.mapa a:focus-visible path{stroke:var(--ink);stroke-width:2}
.mapa a:focus-visible{outline:none}
.mapa path.sel{stroke:var(--ink);stroke-width:2.5}
.mapa text{font-size:9.5px;fill:var(--ink);pointer-events:none;text-anchor:middle;paint-order:stroke;stroke:var(--bg);stroke-width:2.5px}
.dep-panel{display:grid;gap:12px;align-content:start;min-width:0}
.dep-panel h3{font-size:28px;font-weight:800}
.dep-panel h3 a{text-decoration:none}
.dep-panel .dato a{text-decoration:none}
.dep-panel .item{padding:12px 0}
.dep-panel .item h3{font-size:16px}

/* membresías y boletín */
.planes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.plan{background:var(--bg);padding:14px;display:grid;gap:5px;align-content:start}
.plan.d{background:var(--papel);color:var(--sobre-papel)}
.plan small{font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.plan strong{font-size:24px;font-weight:600}
.plan strong span{font-size:12px;font-weight:500}
.plan p{margin:0;font-size:13.5px;opacity:.85}
.boletin{display:grid;gap:10px;max-width:560px}
.boletin form{display:flex;gap:8px;flex-wrap:wrap}
.boletin input[type=email]{flex:1;min-width:0;border:1px solid var(--ink2);border-radius:4px;padding:11px 12px;background:var(--bg);color:var(--ink);min-height:44px}
.caja-boletin .boletin{max-width:640px}

/* la página del boletín */
.bol-pagina{gap:18px}
.bol-marca{justify-self:start;margin:0;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border:2px solid var(--ink);padding:3px 8px;transform:rotate(-2deg)}
.bol-trae{margin:0;padding:0;list-style:none;display:grid;gap:0;border-top:1px solid var(--line)}
.bol-trae li{padding:12px 0 12px 28px;border-bottom:1px solid var(--line);position:relative}
.bol-trae li::before{content:"";position:absolute;left:0;top:17px;width:16px;height:10px;background:linear-gradient(90deg,var(--uno) 0 33%,var(--pocos) 33% 66%,var(--varios) 66%)}
.bol-ejemplo{display:grid;gap:0;border:1px solid var(--line);border-radius:8px;padding:16px}
.bol-ejemplo .titulo-sec{margin-bottom:8px}
.bol-ej-principal,.bol-ej-nota{display:grid;gap:4px;text-decoration:none;padding:12px 0;border-top:1px solid var(--line)}
.bol-ej-principal{border-top:0}
.bol-ej-principal b{font-size:20px;line-height:1.2}
.bol-ej-principal small{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}
.bol-ej-principal:hover b,.bol-ej-nota:hover b{text-decoration:underline;text-underline-offset:3px}
.bol-ej-principal .mono,.bol-ej-nota .mono{font-size:13px;color:var(--ink2)}

/* la nota y las fichas */
.nota{display:grid;gap:16px;padding-block:18px 30px}
.nota-arriba{display:flex;gap:10px 16px;flex-wrap:wrap;align-items:center}
.volver{border:1px solid var(--ink2);border-radius:4px;padding:7px 12px;font-weight:600;font-size:14px;text-decoration:none;justify-self:start}
.nota-arriba .nota-meta{display:flex;gap:6px 14px;flex-wrap:wrap;margin:0}
.nota-meta a{text-decoration:underline;text-underline-offset:3px}
.comp{display:flex;gap:8px;margin-left:auto}
.comp a,.comp button{width:36px;height:36px;border-radius:50%;border:0;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-weight:800;font-size:13px;text-decoration:none}
.comp a:hover,.comp button:hover{background:var(--papel);color:var(--sobre-papel)}
.comp button[hidden]{display:none}
.comp .comp-nativo svg{width:17px;height:17px}
.ia{display:inline-flex;gap:8px;align-items:center;font-size:12.5px;font-weight:600;border:1px solid var(--line);border-radius:999px;padding:3px 10px;color:var(--ink2)}
.ia::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--varios)}
.foto{position:relative;margin:0}
.foto img{width:100%;height:auto;display:block;aspect-ratio:16/10;object-fit:cover;background:var(--panel2)}
.nota-foto{max-width:68ch}
.ojo-borde{border-color:var(--uno);border-width:2px}
.ojo-borde p{margin:0}
.ofertas{display:grid}
.oferta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;font-size:15px;padding:10px 0;border-top:1px solid var(--line);align-items:baseline}
.oferta small{grid-column:1/-1;font-weight:800;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--varios)}
.oferta a{overflow-wrap:anywhere}
.oferta .q{font-weight:600}
.oferta.anulada{color:var(--ink2)}
.oferta.anulada small{color:var(--uno)}
.oferta>.tenue{grid-column:1/-1}
.pedido{margin:0;padding-left:20px;display:grid;gap:7px;font-size:15.5px}
.pie-nota{display:flex;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;font-size:13.5px;color:var(--ink2);border-top:1px solid var(--line);padding-top:12px;margin:0}
.pie-nota a{color:var(--ink)}
.nota-lector>section{display:grid;gap:8px}
.ficha{gap:18px}
.fichas-cifras{margin-top:4px}
.retirada{border-color:var(--aviso);border-left-width:4px}

/* secciones */
.secciones{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.seccion-t{background:var(--bg);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding-right:12px}
.seccion-t .seccion-a{border:0}
.seccion-a{background:var(--bg);display:grid;gap:5px;padding:12px;text-decoration:none;min-width:0}
.seccion-a b{font-size:16px}
.seccion-a span.mono{font-size:13px;color:var(--ink2)}
.seccion-a:hover b{text-decoration:underline;text-underline-offset:3px}
.seccion-t.seguida b::after{content:" ✓";color:var(--varios)}

/* rankings */
.pestanas{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}
.pestanas::-webkit-scrollbar{display:none}
.pestanas a{flex:none;text-decoration:none;padding:9px 4px;margin-right:12px;font-weight:700;font-size:15px;border-bottom:3px solid transparent}
.pestanas a.on{border-color:var(--ink)}
.filtros{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end}
.filtros .acciones{align-self:end}
.ranking{list-style:none;margin:0;padding:0;display:grid}
.ranking li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.ranking li.sin-num{display:block}
.puesto{font-size:15px;color:var(--ink2);font-weight:600}
.rk-cuerpo{display:grid;gap:5px;min-width:0}
.rk-nombre{font-weight:700;font-size:15.5px;overflow-wrap:anywhere}
a.rk-nombre{text-decoration:none}
a.rk-nombre:hover{text-decoration:underline}
.rk-monto{text-align:right;font-weight:600;font-size:15px;text-decoration:none;display:grid}
.rk-monto small{font-size:11.5px;color:var(--ink2);font-weight:500}
.rk-monto:hover{text-decoration:underline}
.invitacion{border-color:var(--papel);border-left-width:4px}
.paginas{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-block:10px}
.buscador{max-width:720px}
.buscador summary,.filtros-caja summary{cursor:pointer}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pie-nav{display:flex;gap:6px 16px;flex-wrap:wrap}
.pie-nav a{color:var(--ink)}

/* barra de competencia: la firma del portal (un oferente · pocos · varios) */
.barra-c{display:grid;gap:8px;min-width:0}
.barra-tit{display:flex;gap:6px 12px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}
.barra-svg{height:12px;background:var(--panel2);overflow:hidden;clip-path:inset(0 0 0 0);transition:clip-path .9s cubic-bezier(.2,.7,.2,1)}
.barra-svg svg{display:block;width:100%;height:100%}
.barra-svg.vacia{background:repeating-linear-gradient(90deg,var(--panel2) 0 6px,transparent 6px 9px)}
.anim .barra-c.sube{opacity:1;transform:none}
.anim .barra-c:not(.ver) .barra-svg{clip-path:inset(0 100% 0 0)}
.t-uno{fill:var(--uno);background:var(--uno)}
.t-pocos{fill:var(--pocos);background:var(--pocos)}
.t-varios{fill:var(--varios);background:var(--varios)}
.barra-svg a:hover rect{opacity:.8}
.barra-ley{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px}
.barra-ley a{text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.barra-ley a:hover{text-decoration:underline;text-underline-offset:3px}
.barra-ley i{width:10px;height:10px;display:inline-block;flex:none}
.aclaracion{color:var(--ink2);border-left:3px solid var(--uno);padding-left:10px;max-width:75ch}
.aclaracion b{color:var(--ink)}
.recorte{background:var(--panel);padding:8px 12px;border-radius:4px}

/* franja de indicadores: siempre en el mismo lugar, con su flecha */
.indicadores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.indicador{background:var(--bg);padding:12px;display:grid;gap:4px;text-decoration:none;min-width:0;align-content:start}
.indicador small{font-size:11.5px;color:var(--ink2);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.indicador strong{font-family:var(--mono);font-size:clamp(19px,5.4vw,24px);font-weight:600;letter-spacing:-.02em;white-space:nowrap}
.indicador:hover strong{text-decoration:underline;text-underline-offset:3px}
.flecha{font-size:12px;color:var(--ink2)}
.flecha.sube::first-letter{color:var(--varios)}
.flecha.baja::first-letter{color:var(--uno)}

/* la nota, como la lee el lector */
.nota-vista{display:grid;gap:26px}
.nota-lector{display:grid;gap:14px;max-width:68ch;min-width:0}
.nota-meta{font-size:12.5px;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em}
.nota-titular{font-size:clamp(27px,7vw,40px);font-weight:800;letter-spacing:-.02em;line-height:1.06}
.nota-bajada{font-size:18px;color:var(--ink2)}
.nota-firma{font-size:13.5px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:8px}
.nota-firma .corregida{color:var(--aviso);font-weight:700}
/* correcciones y réplicas a la vista, en la nota y las fichas */
.a-la-vista{display:grid;gap:12px;margin:22px 0 0;padding-top:16px;border-top:2px solid var(--ink);min-width:0}
.a-la-vista .correccion{margin:0;padding:10px 12px;border-left:4px solid var(--aviso);background:var(--panel);font-size:15px;overflow-wrap:anywhere}
.a-la-vista .replica{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;min-width:0;overflow-wrap:anywhere}
.a-la-vista .replica h3{font-size:17px;line-height:1.25;margin:0}
.a-la-vista .replica p{margin:0}
.nota-puntos{margin:0;padding:12px 12px 12px 30px;background:var(--panel);border-left:4px solid var(--papel);display:grid;gap:6px;font-weight:600}
.nota-cuerpo{display:grid;gap:14px;font-size:17.5px;line-height:1.6}
a.mencion{color:inherit;text-decoration:underline;text-decoration-color:var(--line);text-decoration-thickness:2px;text-underline-offset:3px;transition:text-decoration-color .2s}
a.mencion:hover,a.mencion:focus-visible{text-decoration-color:currentColor}
.nota-significa{border:1px solid var(--line);padding:14px;display:grid;gap:6px}
.invita-alertas{border:1px solid var(--line);border-left:4px solid var(--varios);padding:14px;display:grid;gap:6px;margin-top:18px}
.invita-alertas p{margin:0}
.invita-alertas .acciones{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
.pq-enlaces{display:flex;flex-wrap:wrap;max-width:100%}
.pq-enlaces a{flex:1 1 auto;text-align:center}
.pq-grupo .lista{margin-top:8px}
.nota-significa b{font-family:var(--logo);text-transform:uppercase;font-size:18px;letter-spacing:.02em}
.nota-datos{display:grid;gap:14px;align-content:start;min-width:0}
.nota-datos .datos{grid-template-columns:auto minmax(0,1fr)}
.fuentes{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px;overflow-wrap:anywhere}
.titulo-mod{font-size:22px;border-bottom:3px solid var(--ink);padding-bottom:4px}
.ojo{display:inline-block;background:var(--uno);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:2px;white-space:nowrap}
.espacio-anuncio{min-height:120px;border:1px dashed var(--line);display:grid;place-items:center;color:var(--ink2);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
@media (min-width:980px){
  .indicadores{grid-template-columns:repeat(6,minmax(0,1fr))}
  .nota-vista{grid-template-columns:minmax(0,1fr) 320px;align-items:start}
  .nota-datos{position:sticky;top:84px}
}
@media (min-width:600px) and (max-width:979px){ .indicadores{grid-template-columns:repeat(3,minmax(0,1fr))} }

/* movimiento al entrar */
.anim .sube{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.anim .sube.ver{opacity:1;transform:none}
/* estado previo a la animación de las gráficas: solo con movimiento permitido y antes de entrar en pantalla */
.anim .gra:not(.ver) .pulso .b,.anim .gra:not(.ver) .anios rect{transform:scaleY(0)}
.anim .gra:not(.ver) .pulso .l{stroke-dashoffset:1}
.anim .gra:not(.ver) .waffle i{opacity:.12;transform:scale(.6)}
.anim .gra:not(.ver) .arbol a{opacity:0;transform:scale(.9)}
.anim .gra:not(.ver) .reloj line{stroke-dashoffset:1}
.anim .gra:not(.ver) .deps i{transform:scaleX(0)!important}
.anim .mapa-caja:not(.ver) .mapa path{opacity:0;transform:scale(.8)}
.anim .item.sube,.anim .tarj.sube{transition-duration:.45s}

@media (min-width:600px){
  .dos-col{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ciego-rejilla{grid-template-columns:repeat(2,minmax(0,1fr))}
  .secciones{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planes{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:980px){
  body{padding-bottom:0}
  .tabbar{display:none}
  .nav{display:flex}
  .busca{display:flex}
  .buscar-movil{display:none}
  .cab .acc{margin-left:0}
  .dos{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:34px;align-items:start}
  .cifras{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,2fr)}
  .cifras .larga{grid-column:auto}
  .fichas-cifras{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,2fr)}
  .tres{grid-template-columns:minmax(0,300px) minmax(0,1fr) minmax(0,300px);column-gap:0}
  .tres>.col{padding-inline:22px;border-left:1px solid var(--line)}
  .tres>.orden-2{order:1;padding-left:0;border-left:0}
  .tres>.orden-1{order:2}
  .tres>.orden-3{order:3;padding-right:0}
  .hero img{min-height:430px}
  .graficas{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gra.doble{grid-column:span 2}
  .mapa-caja{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}
  .anuncio.banda{min-height:90px}
  .cookies-aviso{bottom:16px;grid-template-columns:1fr auto;align-items:center}
  .fila-legal{grid-template-columns:minmax(0,200px) minmax(0,1fr) minmax(0,190px)}
  .secciones{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ciego-rejilla{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nota-vista{grid-template-columns:minmax(0,1fr) 340px;align-items:start}
  .nota-datos{position:sticky;top:84px}
}
@media (max-width:979px){ .util{display:none} }
@media (max-width:420px){ .comp{margin-left:0} .deps a{grid-template-columns:92px 1fr auto} }
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .anim .sube{opacity:1;transform:none}
  .cinta-vista{overflow-x:auto}
  .cinta .eco{display:none}
}

/* ===== membresías: planes, muro, cuenta, alertas y precios ===== */
.plan{text-decoration:none;transition:transform .15s ease}
a.plan:hover{transform:translateY(-2px)}
.planes-grande{display:grid;gap:14px}
.plan-g{border:1px solid var(--line);border-radius:8px;padding:16px;display:grid;gap:14px;align-content:start;background:var(--bg);scroll-margin-top:90px}
.plan-g.d{border:3px solid var(--papel)}
.plan-g.actual{border-color:var(--varios)}
.plan-g header{display:grid;gap:6px}
.plan-g h2{font-family:var(--logo);text-transform:uppercase;font-size:28px;letter-spacing:.02em;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.plan-g .precio{font-size:32px;font-weight:600;line-height:1}
.plan-g .precio small{font-size:13px;font-weight:500;color:var(--ink2)}
.plan-g .acciones{margin-top:auto}
.abre{margin:0;padding:0;list-style:none;display:grid;gap:7px;font-size:14.5px}
.abre li{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start}
.abre li::before{content:"✓";color:var(--varios);font-weight:800}
.preguntas .banda{border-top:0;padding-top:0}
.opciones{border:0;margin:0;padding:0;display:grid;gap:8px;min-width:0}
.opciones legend{font-weight:700;font-size:14.5px;margin-bottom:6px;padding:0}
.opcion{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:6px;padding:12px;cursor:pointer}
.opcion:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.opcion input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--varios);flex:none}
.opcion>span{display:grid;gap:2px;min-width:0}
.opciones.casillas{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:0 16px}
.opciones.casillas .casilla{padding:8px 0}
.dos-campos{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
.etiqueta-campo{font-weight:700;font-size:14.5px}
.filas-cuenta{display:grid}
.filas-cuenta>a,.filas-cuenta>span,.filas-cuenta>.fila-m{display:grid;gap:2px;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;min-width:0}
.filas-cuenta>:first-child{border-top:0}
.filas-cuenta>a:hover b{text-decoration:underline;text-underline-offset:3px}
.fila-m{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px!important}
.fila-m form{margin:0}
.sub-h{font-size:15px;margin:14px 0 2px;color:var(--ink2)}
.muro{border:3px solid var(--papel);border-radius:8px;padding:18px;display:grid;gap:12px;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--papel) 12%,transparent))}
.muro h2{font-size:22px}
.muro,.muro>*{min-width:0}
.muro .btn,.plan-g .btn,.opcion,.alerta-fila .btn{white-space:normal;text-align:center}
.medidor{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;border-left:3px solid var(--papel);padding:4px 10px;color:var(--ink2)}
.enl-precios{white-space:nowrap}
.seguir{margin:0}
.nota-arriba .seguir .btn{min-height:36px}
.lista-acciones:empty{display:none}
.exportar{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin:0}
.filas-alertas{display:grid;gap:12px}
.alerta-fila{border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;gap:12px}
.alerta-fila h2{font-size:19px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.alerta-fila h2 a{text-decoration:none}
.alerta-fila>div{display:grid;gap:6px;min-width:0;overflow-wrap:anywhere}
.alerta-fila.pausada{opacity:.75}
.novedades .nueva::before{background:var(--papel)}
.novedades a{text-decoration:none}
.novedades a:hover{text-decoration:underline}
.buscador-precios{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
.precio-cifras{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.tabla-precios{display:grid}
.fila-precio{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:10px 0;border-top:1px solid var(--line);font-size:14.5px;align-items:start}
.fila-precio a{text-decoration:none}
.fila-precio a:hover b{text-decoration:underline}
.fp-que{display:grid;gap:2px;grid-column:1/-1;min-width:0;overflow-wrap:anywhere}
.fp-quien{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}
.fp-quien small{color:var(--ink2);font-size:12.5px}
.fp-cifra{display:grid;gap:2px;text-align:right}
.fp-cifra small{color:var(--ink2);font-size:11.5px;font-family:var(--txt)}
.grupo-precio .anios{max-width:420px}
@media (min-width:600px){
  .buscador-precios{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end}
  .fila-precio{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto}
  .fp-que{grid-column:auto}
  .alerta-fila{grid-template-columns:minmax(0,1fr) auto;align-items:start}
}
@media (min-width:980px){
  .planes-grande{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media print{
  .cab,.util,.franja,.tabbar,.pie,.no-imprimir,.cookies-aviso{display:none!important}
  body{background:#fff;color:#000;padding:0}
}
