:root{--navy:#1d2d44;--gold:#c8a356;--ink:#203047;--muted:#5b6674;--line:#d9dee4;--paper:#fcfcfa}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:5px}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.shell{max-width:1200px;margin:auto;padding-inline:36px}.masthead{background:var(--navy);color:#fff}.masthead-inner{min-height:115px;display:flex;align-items:center;gap:35px}.identity{display:flex;align-items:center;gap:15px;text-decoration:none;line-height:1.08;font-size:24px;letter-spacing:-.5px}.identity img{width:60px;height:60px;object-fit:contain}.identity b{color:#d3b477;font-weight:600}.masthead-note{margin-left:auto;color:#c4ccd5;font-size:12px;line-height:1.6}.masthead button{color:#e3c993;border:0;border-left:1px solid #ffffff38;background:none;padding:5px 0 5px 25px;font-size:12px;cursor:pointer}.navigation{border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;gap:28px;min-height:54px;flex-wrap:wrap}.navigation a{text-decoration:none;font-size:13px;padding-block:16px}.navigation a[aria-current]{box-shadow:inset 0 -2px var(--navy)}.navigation a:hover{text-decoration:underline}.navigation .campaign-nav{margin-left:auto;font-weight:600}.introduction{padding-top:48px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.14em;margin:0 0 20px}.intro-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:60px;align-items:start}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.2vw,53px);font-weight:400;letter-spacing:-1.5px;line-height:1.12;margin:0}.intro-copy p{margin:0 0 18px;color:var(--muted);font-size:16px;line-height:1.75}.inline-link{font-size:13px}.scope{margin-top:35px;border-top:1px solid var(--line);display:flex;gap:23px;align-items:baseline;padding:15px 0;font-size:12px}.scope>span:first-child{font-weight:600}.scope p{margin:0}.scope p span{color:#9b814e;margin-inline:6px}.scope-note{margin-left:auto;color:var(--muted);font-size:11px}.campaign-band{background:var(--navy);color:#fff;display:grid;grid-template-columns:165px 1fr auto;gap:28px;padding:27px 30px;align-items:center;margin-top:12px;border-top:3px solid var(--gold)}.campaign-context{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:12px}.campaign-context .eyebrow{color:#e1c68f;margin:0;font-size:9px}.prototype{color:#c9d1db;font-size:10px}.campaign-body h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.4px;font-size:29px;margin:0 0 5px}.campaign-body p{font-size:13px;color:#d0d7df;margin:0;max-width:52ch}.campaign-link{font-size:12px;color:#eed5a4;white-space:nowrap}.analyses{margin-top:42px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:15px}.section-heading h2{font-size:13px;font-weight:600;margin:0}.section-heading p{font-size:12px;color:var(--muted);margin:0}.analysis-row{display:grid;grid-template-columns:250px 1fr 145px;gap:30px;border-top:1px solid var(--line);padding:26px 0;align-items:center}.analysis-label{display:flex;gap:18px;align-items:baseline}.row-number{font-size:10px;color:#826937;font-variant-numeric:tabular-nums}.analysis-label h3{font-size:17px;font-weight:500;margin:0;letter-spacing:-.3px}.analysis-copy p{font-size:13px;color:var(--muted);margin:6px 0 0;max-width:62ch}.analysis-copy .analysis-question{font-size:17px;color:var(--ink);margin:0;font-family:Georgia,serif}.analysis-link{font-size:12px;justify-self:end}.analysis-row:last-child{border-bottom:1px solid var(--line)}.method-note{display:grid;grid-template-columns:250px 1fr;gap:30px;margin:35px 0 45px}.method-note h2{font-size:13px;margin:0;font-weight:600}.method-note p{font-size:13px;color:var(--muted);max-width:80ch;margin:0 0 10px}footer{border-top:1px solid var(--line)}.footer-inner{padding-block:22px;display:flex;gap:25px;font-size:11px;color:var(--muted)}.footer-inner span{margin-right:auto}.skip{position:absolute;top:-100px;left:10px;padding:10px;background:white;z-index:10}.skip:focus{top:10px}@media(max-width:950px){.nav-inner{gap:20px}.campaign-band{grid-template-columns:1fr auto}.campaign-context{grid-column:1/-1;flex-direction:row}.intro-grid{gap:30px}.analysis-row{grid-template-columns:200px 1fr;gap:15px 25px}.analysis-link{grid-column:2;justify-self:start}.scope{flex-wrap:wrap;gap:6px 20px}.scope-note{margin-left:0}.method-note{grid-template-columns:200px 1fr;gap:25px}}@media(max-width:620px){.shell{padding-inline:22px}.masthead-inner{min-height:92px;gap:15px}.identity{font-size:21px;gap:10px}.identity img{width:43px;height:43px}.masthead-note{display:none}.masthead button{margin-left:auto;padding-left:15px}.nav-inner{gap:0 21px;padding-block:5px}.navigation a{padding-block:10px;font-size:12px}.navigation .campaign-nav{margin-left:0}.introduction{padding-top:30px}.intro-grid{grid-template-columns:1fr;gap:20px}h1{font-size:38px}.intro-copy p{font-size:15px;line-height:1.65}.scope{margin-top:25px}.scope>span:first-child{width:100%}.scope-note{width:100%}.campaign-band{grid-template-columns:1fr;padding:22px;gap:16px}.campaign-context{flex-direction:column;gap:5px}.campaign-body h2{font-size:27px}.campaign-link{white-space:normal}.section-heading{align-items:start;flex-direction:column;gap:6px}.analysis-row{grid-template-columns:1fr;gap:12px;padding-block:23px}.analysis-link{grid-column:1}.analysis-label{gap:12px}.analysis-copy{padding-left:25px}.analysis-link{margin-left:25px}.method-note{grid-template-columns:1fr;gap:12px}.footer-inner{flex-wrap:wrap;gap:10px 20px}.footer-inner span{width:100%}}
/* Refinement: a consistent sans-serif system and a darker campaign banner. */
body{font-family:"Helvetica Neue",Arial,sans-serif}
h1{font-family:"Helvetica Neue",Arial,sans-serif;font-weight:600;letter-spacing:-1.6px;line-height:1.12}
.campaign-band{background:#142338}
.campaign-body h2{font-family:"Helvetica Neue",Arial,sans-serif;font-weight:500;letter-spacing:-.6px}
.analysis-copy .analysis-question{font-family:"Helvetica Neue",Arial,sans-serif;font-weight:500;letter-spacing:-.2px}
@media(max-width:620px){h1{letter-spacing:-1.1px}}
/* Barra de navegación en azul, común a todas las páginas. */
.masthead-inner{min-height:88px}
.navigation{background:var(--navy);border-top:1px solid #ffffff26;border-bottom:3px solid var(--gold)}
.navigation a{color:#dbe2e9}
.navigation a:hover{color:#fff}
.navigation a[aria-current]{color:#fff;font-weight:600;box-shadow:inset 0 -3px var(--gold)}
.navigation .campaign-nav{color:#eed5a4}
@media(max-width:620px){.masthead-inner{min-height:76px}}
/* Banda de campaña del inicio: cuenta atrás y hallazgo de la semana. */
.campaign-count{font-size:22px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}
.campaign-body .campaign-kicker{font-size:11px;margin:0 0 8px}
.campaign-body h2{font-size:24px;line-height:1.22;max-width:34ch;margin:0}
@media(max-width:620px){.campaign-body h2{font-size:22px}}
/* Páginas interiores: Agenda, Menciones, Tono, Metodología y El proyecto. */
.page{padding-block:48px 56px}
.page h1{font-size:clamp(30px,3.6vw,44px);margin:0 0 18px}
.page .content>p,.page .about-page>p,.page .contact p{max-width:72ch;color:var(--muted);font-size:16px;line-height:1.75;margin:0 0 16px}
.page h2{font-size:20px;font-weight:600;letter-spacing:-.3px;margin:0 0 8px}
.page .chart-container,.page .about-page>h2,.page .contact{border-top:1px solid var(--line);padding-top:26px;margin-top:34px}
.page .contact h2{margin-top:0}
.page .chart-container>p,.page .chart-container li{max-width:72ch;color:var(--muted);font-size:15px;line-height:1.7;margin:0 0 12px}
.page .chart-container ul{margin:0;padding-left:20px}
.page iframe{display:block;width:100%;border:0;background:#fff}
.page .coverage-frame{min-height:2080px}
.page .coverage-note,.page .legend-note,.page .reading-note{font-size:12px;color:var(--muted);max-width:80ch;margin:14px 0 0;line-height:1.6}
.page .image-container img{display:block;max-width:100%;height:auto;margin-top:18px}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:16px}
.team-member{display:block;text-decoration:none;border:1px solid var(--line);background:#fff;padding:18px}
.team-member:hover{border-color:var(--navy)}
.profile{display:flex;gap:16px;align-items:flex-start}
.profile img{width:84px;height:84px;object-fit:cover;border-radius:50%;flex-shrink:0;background:var(--line)}
.bio h3{margin:0 0 6px;font-size:16px;font-weight:600}
.bio p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}
@media(max-width:620px){.page{padding-block:30px 40px}.profile img{width:64px;height:64px}}
/* Tono editorial sobrio: inicio, portada del monitor y pie institucional. */
.notice{background:#eef0f2;color:var(--muted);font-size:12px}
.notice .shell{padding-block:7px}
.lead{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;padding-block:44px 48px;align-items:start}
.dateline{font-size:13px;color:var(--muted);margin:0 0 14px}
.lead h1{font-size:clamp(28px,3.2vw,38px);font-weight:600;letter-spacing:-.8px;line-height:1.15}
.standfirst{font-size:17px;line-height:1.6;margin:16px 0 0}
.byline{font-size:13px;color:var(--muted);margin:18px 0 0}
.textlinks{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:14px;margin:14px 0 0}
.figure{margin:0;border-top:2px solid var(--navy);padding-top:12px}
.figure figcaption{font-size:15px;font-weight:600}
.figure-sub{font-size:13px;color:var(--muted);margin:2px 0 16px}
.bars{display:grid;gap:10px;font-size:13px}
.bars .row{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center}
.bars .name{font-weight:600}
.bars .track{display:flex;align-items:center;gap:10px;min-width:0}
.bars .bar{height:14px;background:var(--navy);flex:0 0 auto}
.bars .bar.other{background:#9aa6b2}
.bars .val{color:var(--muted);white-space:nowrap}
.figure-note{font-size:12px;color:var(--muted);line-height:1.5;margin:16px 0 0}
.section{border-top:1px solid var(--line);padding-block:32px}
.section>h2{font-size:20px;font-weight:600;letter-spacing:-.3px;margin:0 0 14px}
.linklist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 48px}
.linklist li{font-size:15px;line-height:1.6;color:var(--muted)}
.linklist a{color:var(--ink);font-weight:600}
.prose{max-width:72ch;font-size:16px;line-height:1.7;margin:0 0 12px}
.site-footer{border-top:1px solid var(--line);background:#f4f5f6}
.site-footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px 48px;padding-block:32px 40px;font-size:13px;line-height:1.6;color:var(--muted)}
.site-footer h2{font-size:13px;font-weight:600;color:var(--ink);margin:0 0 6px;letter-spacing:0}
.site-footer p{margin:0}
@media(max-width:860px){.lead{grid-template-columns:1fr;gap:32px;padding-block:30px 36px}.linklist{grid-template-columns:1fr}.site-footer-inner{grid-template-columns:1fr}}
/* Portada tipo publicación: pieza principal, columna de piezas de la semana y bloques. */
.strip{border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.strip .shell{display:flex;flex-wrap:wrap;gap:4px 18px;align-items:baseline;padding-block:9px}
.strip b{color:var(--ink);font-weight:600}
.strip-note{margin-left:auto}
.front{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:0 48px;padding-block:36px 44px}
.kicker{font-size:13px;color:var(--muted);margin:0 0 8px}
.kicker .type{color:#7a5f25;font-weight:600;margin-right:8px}
.lead-story h1{font-size:clamp(30px,3.6vw,44px);font-weight:600;letter-spacing:-1px;line-height:1.1}
.lead-story h1 a,.item h3 a,.pub h3 a{text-decoration:none}
.lead-story h1 a:hover,.item h3 a:hover,.pub h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.deck{font-size:18px;line-height:1.55;margin:14px 0 0;max-width:60ch}
.lead-story .byline{margin:12px 0 28px}
.rail{border-left:1px solid var(--line);padding-left:40px}
.rail>h2,.block>h2,.block.two h2{font-size:15px;font-weight:600;letter-spacing:0;margin:0}
.item{padding:16px 0;border-bottom:1px solid var(--line)}
.item h3{font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.2px;margin:0}
.more{font-size:14px;margin:16px 0 0}
.block{border-top:2px solid var(--navy);padding-block:16px 40px}
.block>h2{margin-bottom:20px}
.pubs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 36px}
.pub h3{font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.2px;margin:0 0 8px}
.pub .pub-deck{font-size:14px;color:var(--muted);line-height:1.55;margin:0}
.block.two{display:grid;grid-template-columns:1fr 1fr;gap:28px 56px}
.block.two h2{margin-bottom:10px}
.block.two p{font-size:15px;line-height:1.65;max-width:60ch;margin:0 0 10px}
@media(max-width:900px){.front{grid-template-columns:1fr;gap:28px}.rail{border-left:0;padding-left:0;border-top:2px solid var(--navy);padding-top:16px}.pubs{grid-template-columns:repeat(2,minmax(0,1fr))}.strip-note{margin-left:0}}
@media(max-width:620px){.pubs,.block.two{grid-template-columns:1fr}.deck{font-size:17px}}
/* Monitor de campaña destacado en el inicio. */
.monitor-band{background:#142338;color:#fff}
.monitor-band-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 48px;padding-block:30px}
.monitor-kicker{font-size:13px;color:#e1c68f;margin:0 0 6px}
.monitor-band h2{font-size:clamp(28px,3.4vw,40px);font-weight:600;letter-spacing:-1px;line-height:1.05;margin:0}
.monitor-band h2 a{text-decoration:none}
.monitor-band h2 a:hover{text-decoration:underline;text-underline-offset:5px}
.monitor-text{font-size:15px;color:#d0d7df;margin:10px 0 0;max-width:52ch}
.monitor-count{display:flex;align-items:center;gap:22px}
.monitor-days{display:flex;align-items:baseline;gap:10px;font-size:14px;color:#d0d7df}
.monitor-days strong{font-size:52px;font-weight:600;line-height:1;letter-spacing:-1.5px;color:#fff;font-variant-numeric:tabular-nums}
.monitor-cta{background:var(--gold);color:#142338;font-size:14px;font-weight:600;text-decoration:none;padding:11px 18px;white-space:nowrap}
.monitor-cta:hover{background:#d8b872}
@media(max-width:620px){.monitor-band-inner{padding-block:22px}.monitor-count{width:100%;justify-content:space-between}.monitor-days strong{font-size:40px}}
/* Herramientas (Agenda, Menciones, Tono): cabecera de pieza y gráficos propios. */
.page.tool h1{margin:0}
.page.tool .deck{margin-bottom:8px}
.page .figure{margin-top:36px}
.panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px;margin-top:4px}
.panel h3{font-size:14px;font-weight:600;margin:0 0 10px;padding-bottom:7px;border-bottom:1px solid var(--line)}
.hbars{display:grid;gap:7px;font-size:13px}
.hbars .row{display:grid;grid-template-columns:74px minmax(0,1fr) 58px;gap:10px;align-items:center}
.hbars .track{position:relative;height:14px;background:#eef0f2}
.hbars .bar{position:absolute;top:0;bottom:0;left:0;background:var(--navy)}
.hbars .num{text-align:right;font-variant-numeric:tabular-nums}
.hbars .row.top .name,.hbars .row.top .num{font-weight:600}
.hbars.div .track::after{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;border-left:1px solid var(--ink)}
.hbars.div .bar.neg{left:auto;right:50%;background:#b9842a}
.hbars.div .bar.pos{left:50%}
.figure-key{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:12px;color:var(--muted);margin:0 0 16px}
.figure-key span{display:inline-flex;align-items:center;gap:6px}
.figure-key i{width:12px;height:12px;background:var(--navy);display:inline-block}
.figure-key i.neg{background:#b9842a}
.defs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 56px;margin:28px 0 0;padding:20px 0 0;border-top:1px solid var(--line)}
.defs dt{font-size:15px;font-weight:600;margin:0 0 4px}
.defs dd{font-size:14px;color:var(--muted);line-height:1.6;margin:0}
.howto{font-size:14px;color:var(--muted);margin:20px 0 0;max-width:72ch}
@media(max-width:760px){.panels,.defs{grid-template-columns:1fr}}
/* Menciones: partidos y políticos con logo o foto, y series semanales. */
.avatar{position:relative;display:inline-grid;place-items:center;width:36px;height:36px;flex-shrink:0;overflow:hidden;border-radius:4px;color:#fff;font-size:11px;font-weight:700;letter-spacing:0}
.avatar.round{border-radius:50%}
.avatar.small{width:22px;height:22px;font-size:8px;border-radius:3px}
.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#fff}
.avatar:not(.round) img{object-fit:contain}
.avatar.round img{object-position:50% 18%}
.entities{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 14px}
.entity{display:flex;align-items:center;gap:10px;background:none;border:1px solid var(--line);padding:6px 12px 6px 6px;font:inherit;color:inherit;cursor:pointer;text-align:left}
.entity:hover{border-color:var(--navy)}
.entity[aria-pressed="true"]{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}
.entity b{display:block;font-size:14px;font-weight:600;line-height:1.2}
.entity small{display:block;font-size:12px;color:var(--muted);line-height:1.3}
.entity i{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.chart-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px 6px;margin:0 0 10px;font-size:13px}
.chart-controls>span{color:var(--muted);margin-right:6px}
.chart-controls button{font:inherit;font-size:13px;color:inherit;background:none;border:1px solid var(--line);padding:4px 11px;cursor:pointer}
.chart-controls button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.linechart{position:relative}
.linechart svg{display:block;width:100%;height:auto;touch-action:pan-y}
.linechart text{font-family:inherit;font-size:11px;fill:var(--muted)}
.linechart .end{fill:var(--ink);font-weight:600}
.chart-tip{position:absolute;top:0;left:0;pointer-events:none;background:#fff;border:1px solid var(--line);box-shadow:0 2px 10px #1d2d4420;padding:8px 10px;font-size:12px;line-height:1.5;white-space:nowrap;z-index:2}
.chart-tip b{display:block;font-weight:600;margin-bottom:2px}
.chart-tip span{display:flex;align-items:center;gap:6px}
.chart-tip i{width:8px;height:8px;border-radius:50%}
.chart-tip em{font-style:normal;margin-left:auto;padding-left:14px;font-variant-numeric:tabular-nums}
.panel h3{display:flex;align-items:center;gap:8px}
/* Selector de período de los gráficos de menciones. */
.chart-controls em{font-style:normal;color:var(--muted);margin-left:8px}
.range{position:relative;height:26px;margin:4px 58px 0 30px}
.range::before{content:"";position:absolute;left:8px;right:8px;top:12px;height:2px;background:var(--line)}
.range-fill{position:absolute;top:12px;height:2px;background:var(--navy);margin-inline:8px}
.range input{position:absolute;inset:0;width:100%;height:26px;margin:0;padding:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.range input::-webkit-slider-runnable-track{background:none;height:26px}
.range input::-moz-range-track{background:none}
.range input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:16px;height:16px;margin-top:5px;border-radius:50%;background:var(--navy);border:2px solid #fff;box-shadow:0 0 0 1px var(--navy);cursor:ew-resize}
.range input::-moz-range-thumb{pointer-events:auto;width:12px;height:12px;border-radius:50%;background:var(--navy);border:2px solid #fff;box-shadow:0 0 0 1px var(--navy);cursor:ew-resize}
.range input:focus-visible{outline:none}
.range input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--gold)}
/* Logos de cadena junto al nombre. Si falta el archivo de una cadena, su hueco se conserva para que los nombres sigan alineados;
   si faltan todos en un gráfico, los huecos desaparecen. */
.chlogo{width:22px;height:16px;object-fit:contain;vertical-align:-3px;margin-right:7px}
.chlogo[data-missing]{visibility:hidden}
.chart-controls .chlogo[data-missing],.seg .chlogo[data-missing],.heat .chlogo[data-missing]{display:none}
.hbars:not(:has(.chlogo:not([data-missing]))) .chlogo,.bars:not(:has(.chlogo:not([data-missing]))) .chlogo,.open:not(:has(.chlogo:not([data-missing]))) .chlogo{display:none}
.hbars:has(.chlogo:not([data-missing])) .row{grid-template-columns:108px minmax(0,1fr) 58px}
.bars:has(.chlogo:not([data-missing])) .row{grid-template-columns:114px minmax(0,1fr)}
.open:has(.chlogo:not([data-missing])) .r{grid-template-columns:108px minmax(35px,1fr) 135px}
.chart-controls .chlogo,.seg .chlogo,.heat .chlogo{margin-right:6px}
/* Agenda: historias por cadena, evolución de una historia, series diarias y detalle del día. */
.dotaxis,.dotrow{display:grid;grid-template-columns:230px minmax(0,1fr) 64px;gap:14px;align-items:center}
.dotaxis{font-size:11px;color:var(--muted);margin-top:6px}
.dotaxis .sc{display:flex;justify-content:space-between}
.dotrow{width:100%;padding:7px 0;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;font-size:14px;color:inherit;text-align:left;cursor:pointer}
.dotrow:hover{background:#f3f4f6}
.dotrow[aria-pressed="true"]{background:#eef0f2}
.dotrow[aria-pressed="true"] .lab{font-weight:600}
.dotrow .lab{padding-left:6px}
.dotrow .trk{position:relative;height:22px}
.dotrow .rg{position:absolute;top:9px;height:4px;background:#c9d0d8}
.dotrow .mk{position:absolute;top:1px;width:20px;height:20px;margin-left:-10px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #b9c2cc;display:grid;place-items:center;overflow:hidden;font-size:8px;font-weight:700;color:var(--navy)}
.dotrow .mk img{position:absolute;inset:3px;width:14px;height:14px;object-fit:contain;background:#fff}
.dotrow .num{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;padding-right:6px}
.minis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 28px}
.mini h3{display:flex;align-items:center;font-size:13px;font-weight:600;margin:0 0 4px}
.mini svg{display:block;width:100%;height:auto}
.mini text,.daychart text{font-family:inherit;font-size:11px;fill:var(--muted)}
.daychart{position:relative;margin-bottom:22px}
.daychart h3{font-size:14px;font-weight:600;margin:0 0 2px}
.daychart p{font-size:12px;color:var(--muted);margin:0 0 6px}
.daychart svg{display:block;width:100%;height:auto;cursor:pointer;touch-action:pan-y}
.daybar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 14px;font-size:14px}
.daybar b{font-size:17px;font-weight:600;margin-right:6px}
.daybar button,.daybar input{font:inherit;font-size:13px;color:inherit;background:#fff;border:1px solid var(--line);padding:4px 10px}
.daybar button{cursor:pointer}
.daybar span{color:var(--muted);font-size:13px}
.tscroll{overflow-x:auto}
.daytable{border-collapse:separate;border-spacing:2px;width:100%;min-width:460px;font-size:13px}
.daytable th{font-weight:600;padding:6px 4px;text-align:center;white-space:nowrap}
.daytable th[scope="row"]{font-weight:400;text-align:left;padding-left:0}
.daytable td{text-align:center;padding:8px 4px;font-variant-numeric:tabular-nums}
.daytable td.hi{color:#fff}
@media(max-width:760px){.dotaxis,.dotrow{grid-template-columns:118px minmax(0,1fr) 52px;gap:8px}.dotrow{font-size:13px}.minis{grid-template-columns:repeat(2,minmax(0,1fr))}}
#ag-effs .row{grid-template-columns:170px minmax(0,1fr) 56px}
#ag-effs{max-width:640px}
@media(max-width:760px){#ag-effs .row{grid-template-columns:128px minmax(0,1fr) 48px}}
.chart-controls .chlogo{background:#fff;border-radius:3px;padding:1px 2px;box-sizing:content-box}

/* mapa de audiencias y voto */
.proto-note{font-size:13px;line-height:1.5;background:#f4efe2;border-left:3px solid #b9842a;padding:9px 13px;margin:0 0 22px;max-width:none}
.mapwrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px 48px;align-items:start;margin-top:14px}
.geowrap{max-width:640px}
.geomap{display:block;width:100%;height:auto;overflow:visible}
.geomap .inset{fill:none;stroke:#c3ccd6;stroke-width:1}
.geomap .reg{cursor:pointer;outline:none}
.geomap .reg path,.geomap .reg circle{stroke:#fff;stroke-width:1;stroke-linejoin:round}
.geomap .reg:hover path:first-of-type,.geomap .reg:hover circle:first-of-type,.geomap .reg:focus-visible path:first-of-type,.geomap .reg:focus-visible circle:first-of-type{stroke:var(--navy);stroke-width:1.6}
.geomap .reg[aria-pressed="true"] path:first-of-type,.geomap .reg[aria-pressed="true"] circle:first-of-type{stroke:#b9842a;stroke-width:2.4}
.geomap .lab{pointer-events:none;font-size:11.5px;text-anchor:middle;fill:var(--ink);font-variant-numeric:tabular-nums}
.geomap .lab .v{font-size:15px;font-weight:600}
.geomap .lab .c{font-size:10.5px;opacity:.85}
.geomap .lab text{font-weight:600}
.geomap .lab .on{fill:#fff}
.geomap .lab .out{font-weight:400;font-size:11px}
.mapkey{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-top:12px}
.mapkey{flex-wrap:wrap;gap:6px 16px}
.mapkey i{flex:0 0 150px;height:9px}
.mapkey .sw{display:inline-flex;align-items:center;gap:6px}
.mapkey .sw b{width:11px;height:11px;display:inline-block}
.mapdetail h3{font-size:19px;margin:0 0 2px}
.mapdetail h4{font-size:13px;font-weight:600;margin:18px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.mapdetail .dmeta{font-size:13px;color:var(--muted);margin:0}
.mapdetail .dmeta em{font-style:normal;color:#7a5f25}
.mapdetail .hbars .row,.mapdetail .hbars:has(.chlogo:not([data-missing])) .row{grid-template-columns:132px minmax(0,1fr) 58px}
.mapdetail .dback{margin:16px 0 0}
.mapdetail .dback button{font:inherit;font-size:13px;background:none;border:0;padding:0;color:var(--navy);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.crosstable{min-width:560px}
.chart-controls.tabs{gap:0;border-bottom:1px solid var(--line);margin-bottom:14px}
.chart-controls.tabs button{border:0;border-bottom:3px solid transparent;padding:8px 16px;font-size:15px;font-weight:600;color:var(--muted);margin-bottom:-1px}
.chart-controls.tabs button[aria-pressed="true"]{background:none;color:var(--navy);border-bottom-color:var(--navy)}
.optable{min-width:620px}
.optable thead th{white-space:normal;vertical-align:bottom;line-height:1.25;font-size:12.5px}
.optable td{padding:10px 4px;font-size:14px}
.optable td.ns{color:#8792a0;background:#f7f8fa}
.optable .nn{color:var(--muted);font-size:12.5px;text-align:right;padding-left:10px;background:none;white-space:nowrap}
.optable tr.avg th,.optable tr.avg td{font-weight:600;border-bottom:1px solid var(--ink);background:none}
.optable tr.avg .nn{font-weight:400}
.opkey{margin-top:10px}
.opkey .nsb{background:#f7f8fa;border:1px solid #d5dbe3;box-sizing:border-box}
#fig-opin{margin-bottom:44px}
.plogo{display:inline-block;width:18px;height:18px;object-fit:contain;margin-right:7px;vertical-align:-3px}
.optable thead .pic,.optable thead .plogo{display:block;margin:0 auto 6px}
.optable .pic.gen{object-position:50% 50%}
.optable .pic{width:34px;height:34px;border-radius:50%;object-fit:cover;object-position:50% 20%;background:var(--line)}
.optable thead .plogo{width:26px;height:26px}
.optable.flip th[scope="row"] .pic{display:inline-block;width:26px;height:26px;margin:0 7px 0 0;vertical-align:middle}
.optable.flip th[scope="row"] .plogo{width:18px;height:18px;margin:0 7px 0 0;vertical-align:-3px}
.photo-credits{margin:18px 0 36px;clear:both}
.optable.flip th[scope="row"]{display:flex;align-items:center}
.optable.flip th[scope="row"] .pic,.optable.flip th[scope="row"] .plogo{flex:0 0 auto}
.optable:not(.flip){table-layout:fixed}
.optable:not(.flip) thead th:first-child{width:21%}
.optable:not(.flip) thead th.nn{width:11%}
#op-grp[hidden]{display:none}
.optable.flip{min-width:0;table-layout:fixed;border-spacing:2px}
.optable.flip thead td{width:27%}
.optable.flip thead th{padding:4px 0 6px;font-size:12px}
.optable.flip thead .chlogo{height:20px;width:auto;max-width:30px;margin:0;vertical-align:middle}
.optable.flip th[scope="row"]{white-space:normal;line-height:1.25;padding:6px 6px 6px 0;font-size:13px}
.optable.flip td{padding:10px 0;font-size:13.5px}
.optable.flip .av{font-weight:600;background:none;border-right:1px solid var(--ink)}
.optable.flip .nrow td,.optable.flip .nrow th{font-size:10.5px;letter-spacing:-.2px;color:var(--muted);font-weight:400;background:none;padding-top:8px}
.optable.flip .nrow .av{font-weight:400}
.crosstable th[scope="row"]{white-space:nowrap;padding-right:10px}
@media(max-width:820px){.mapwrap{grid-template-columns:1fr}}
@media(max-width:520px){.geomap .lab{font-size:15px}.geomap .lab .v{font-size:19px}.geomap .lab .c{font-size:14px}.geomap .lab .out{font-size:14px}}

/* monitor de campaña */
.cm-band .cb-title{font-size:clamp(32px,4.2vw,50px);font-weight:600;letter-spacing:-1.4px;line-height:1.02;margin:0;color:#fff}
.cm-band .monitor-band-inner{padding-block:34px 36px}
.cm-band .cb-count{border-left:1px solid #ffffff33;padding-left:36px}
.cm-band .monitor-days strong{font-size:76px;letter-spacing:-3px;color:var(--gold)}
.cm-band .monitor-days span{font-size:16px;color:#fff}
.cm-band .monitor-band-inner{padding-bottom:22px}
.cm-progress{padding:0 0 30px;font-size:13px;color:#d0d7df}
.cm-progress b{font-weight:600;color:#fff;display:block}
.cm-progress i{font-style:normal;display:block;font-size:12px}
.cm-progress .on b{color:var(--gold)}
.cp-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:9px}
.cp-top .cp-end{text-align:right}
.cp-track{position:relative;height:10px;background:#ffffff1f}
.cp-camp{position:absolute;top:0;bottom:0;left:70.9%;width:27.3%;background:#ffffff38}
.cp-fill{position:absolute;top:0;bottom:0;left:0;background:var(--gold);min-width:3px}
.cp-tick{position:absolute;left:70.9%;top:-4px;bottom:-4px;border-left:2px solid #fff}
.cp-dot{position:absolute;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px #142338}
.cp-flag{position:absolute;right:0;top:-5px;bottom:-5px;width:4px;background:#fff}
.cp-labels{position:relative;height:36px;margin-top:9px}
.cp-labels span{position:absolute;top:0;white-space:nowrap}
.campaign-page{padding-top:22px}
.campaign-page .proto-note{margin-bottom:0}
.campaign-page .secnav{border-top:0;margin-top:6px}
.sumario{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:18px 0 22px;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sumario li{counter-increment:s;padding:16px 20px 18px;border-left:1px solid var(--line)}
.sumario li:first-child{border-left:0;padding-left:0}
.sumario a{display:block;text-decoration:none}
.sumario a::before{content:counter(s);display:block;font-size:34px;font-weight:600;line-height:1;letter-spacing:-1px;color:#b9842a;margin-bottom:10px}
.sumario .k{display:block;font-size:12.5px;color:var(--muted);margin-bottom:4px}
.sumario .h{display:block;font-size:16.5px;font-weight:600;line-height:1.3}
.sumario a:hover .h{text-decoration:underline;text-underline-offset:4px}
.linewk .pv.big{font-size:16px}
.linewk .ann{fill:#7a5f25;font-size:12px}
.secnav{display:flex;flex-wrap:wrap;gap:0 26px;border-top:2px solid var(--navy);border-bottom:1px solid var(--line);font-size:14px;margin-bottom:36px}
.secnav a{text-decoration:none;padding:11px 0}
.secnav a:hover{text-decoration:underline;text-underline-offset:4px}
.wk-lead{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:52px;align-items:start;scroll-margin-top:16px}
.wk-lead h1{font-size:clamp(28px,3.2vw,40px);line-height:1.12;letter-spacing:-.8px}
.page .wk-lead .figure{margin-top:0}
.wk-head{margin-top:52px;padding-top:16px;border-top:2px solid var(--navy);scroll-margin-top:16px}
.wk-head h2{font-size:26px;letter-spacing:-.5px}
.wk-head p{font-size:15px;color:var(--muted);margin:0 0 12px}
.wk{margin-top:44px;padding-top:20px;border-top:1px solid var(--line);scroll-margin-top:16px}
@media(min-width:980px){.wk{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);grid-template-rows:repeat(5,auto) 1fr;column-gap:56px}.wk>*{grid-column:1}.wk>.figure{grid-column:2;grid-row:1/-1}.page .wk>.figure{margin-top:4px}.wk .more{margin-top:18px}}
.wk h2{font-size:24px;letter-spacing:-.4px;margin:0 0 10px}
.wk .find{font-size:20px;line-height:1.35;font-weight:600;margin:0 0 8px;max-width:38em}
.wk .ctx{font-size:15px;color:var(--muted);margin:0;max-width:66ch}
.page .wk .figure{margin-top:22px}
.figure-key i.alt{background:#9aa6b2}
.figure-key i.tick{width:3px;height:14px;background:#b9842a}
.figure-key i.dot{width:10px;height:10px;border-radius:50%}
.figure-key i.dot.hollow{width:14px;height:14px;background:#fff;outline:1.5px dashed #5b6674;outline-offset:-1px}
.figure-key i.band{width:26px;height:8px;background:#d5dde6}
.figure .figure-key{margin:14px 0 0}
.hbars .bar.alt{background:#9aa6b2}
.hbars.open7 .row,.hbars.open7:has(.chlogo:not([data-missing])) .row{grid-template-columns:108px minmax(0,1fr) 168px}
.hbars.open7 .num{text-align:left;font-size:12.5px}
.hbars.seats .row{grid-template-columns:84px minmax(0,1fr) 92px}
.hbars.seats .mark{position:absolute;top:-4px;bottom:-4px;width:3px;margin-left:-1.5px;background:#b9842a}
.hbars.seats .num b{font-weight:600}
.hbars.seats .bar.seatbar{background:#ead9b5}
.lead-fact{display:flex;align-items:center;gap:18px;margin:22px 0 20px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lead-fact>b{flex:0 0 auto;font-size:44px;line-height:1;font-weight:600;letter-spacing:-1.5px;color:var(--navy);white-space:nowrap;padding-right:18px;border-right:3px solid #b9842a}
.lead-fact>div{display:grid;gap:9px;min-width:0}
.lead-fact>div>span:first-child{font-size:14.5px;line-height:1.4;color:var(--muted)}
.lead-fact .who{display:flex;gap:8px;flex-wrap:wrap}
.lead-fact .who img{width:38px;height:38px;object-fit:contain;padding:6px;background:#fff;border:1px solid var(--line);border-radius:50%;box-sizing:border-box}
.lead-fact .who img.face{padding:0;object-fit:cover;object-position:50% 20%}
@media(max-width:520px){.lead-fact{gap:14px}.lead-fact>b{font-size:36px;padding-right:14px}}
.tonewk .name .plogo{margin-right:6px}
@media(max-width:620px){.tonewk .name{white-space:nowrap}.tonewk .name .plogo{width:14px;height:14px;margin-right:4px;vertical-align:-2px}}
.hbars.seats .row{grid-template-columns:96px minmax(0,1fr) 116px}
.figure-key i.pend{background:none;border:1px dashed #8792a0;box-sizing:border-box}
.heatwk th.dim,.heatwk td.dim{opacity:.32}
.heatwk td.ghost{outline:2px solid #b9842a;outline-offset:-2px}
.heatwk thead th{font-weight:600}
.tonewk{display:grid;gap:4px;font-size:13px}
.tonewk .trow{display:grid;grid-template-columns:76px minmax(0,1fr) 204px;gap:12px;align-items:center}
.tonewk .trk{position:relative;height:34px;background:#f1f3f5}
.tonewk .zero{position:absolute;left:50%;top:-3px;bottom:-3px;border-left:1px solid var(--ink)}
.tonewk .band{position:absolute;top:13px;height:8px;background:#d5dde6}
.tonewk .d{position:absolute;top:5px;width:24px;height:24px;margin-left:-12px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #9aa6b2;display:grid;place-items:center;overflow:hidden;font-size:8px;color:var(--navy)}
.tonewk .d b,.tonewk .d img{grid-area:1/1}
.tonewk .d img{width:17px;height:17px;object-fit:contain;background:#fff}
.tonewk .d:hover{z-index:2;box-shadow:0 0 0 2px var(--navy)}
.tonewk .d.hollow{box-shadow:none;outline:1.5px dashed #5b6674;outline-offset:-1px}
.tonewk .d.off{opacity:.3}
.tonewk .d.on{z-index:1;box-shadow:0 0 0 2px var(--navy)}
.tonewk .val{font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--muted)}.tonewk .val b{color:var(--ink);font-weight:600}
.tonewk .axis .sc{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted)}
.linewk{display:block;width:100%;max-width:680px;height:auto;font-size:12px;fill:var(--muted)}
.linewk .pv{fill:var(--ink);font-weight:600;font-size:13px}
.campaign-page .defs{margin-top:48px}
@media(max-width:860px){.wk-lead{grid-template-columns:1fr;gap:28px}.sumario{grid-template-columns:repeat(2,minmax(0,1fr))}.sumario li:nth-child(3){border-left:0;padding-left:0}.sumario li:nth-child(n+3){border-top:1px solid var(--line)}.cm-band .cb-count{border-left:0;padding-left:0}}
@media(max-width:620px){.sumario{grid-template-columns:1fr}.sumario li{border-left:0;padding:14px 0;border-top:1px solid var(--line)}.sumario li:first-child{border-top:0}.sumario a{display:grid;grid-template-columns:34px 1fr;column-gap:6px}.sumario a::before{grid-row:1/3;font-size:28px;margin:0}.cm-band .monitor-days strong{font-size:60px}.heatwk{min-width:0;font-size:12.5px}.heatwk thead .chn{display:none}.heatwk thead th:has(.chlogo[data-missing]) .chn{display:inline;font-size:10px}.heatwk thead .chlogo{margin:0}.heatwk th[scope="row"]{white-space:normal;line-height:1.2;padding-right:6px}.tonewk .trow{grid-template-columns:70px minmax(0,1fr)}.tonewk .val{grid-column:2;margin:-2px 0 6px}.tonewk .axis .val{display:none}.hbars.open7 .row,.hbars.open7:has(.chlogo:not([data-missing])) .row{grid-template-columns:96px minmax(0,1fr)}.hbars.open7 .num{grid-column:2;margin:-4px 0 4px}.secnav{gap:0 18px}}

/* pieza */
.article{max-width:720px}
.article h1{font-size:clamp(30px,3.8vw,44px);line-height:1.1;letter-spacing:-1px}
.article .kicker a{text-decoration:none}.article .kicker a:hover{text-decoration:underline}
.article-meta{display:flex;flex-wrap:wrap;gap:2px 0;font-size:13px;color:var(--muted);margin:18px 0 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none}
.article-meta>span+span::before{content:"·";margin:0 9px}
.article-body{margin-top:26px}
.article-body>p{font-size:17px;line-height:1.7;margin:0 0 18px;max-width:none}
.article-body>h2{font-size:21px;margin:34px 0 10px}
.page .article-body .figure{margin:30px 0 34px}
.method-box{background:#f1f3f5;border-left:3px solid var(--navy);padding:16px 18px;margin:32px 0 0}
.page .method-box h2{font-size:15px;margin:0 0 6px}
.method-box p{font-size:14px;line-height:1.6;margin:0 0 8px;max-width:none}.method-box p:last-child{margin:0}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:14px;margin-top:32px;padding-top:14px;border-top:1px solid var(--line)}
.share>span{color:var(--muted)}
.share button{font:inherit;color:inherit;background:none;border:1px solid var(--line);padding:4px 11px;cursor:pointer}
.share button:hover{border-color:var(--navy)}
.related{margin-top:40px;padding-top:14px;border-top:2px solid var(--navy)}
.page .related h2{font-size:15px;margin:0 0 8px}
.related ul{list-style:none;margin:0;padding:0}
.related li{padding:9px 0;border-bottom:1px solid var(--line);font-size:16px}
.related a{text-decoration:none}.related a:hover{text-decoration:underline;text-underline-offset:4px}
.article-body .fig-tools{margin-bottom:6px}

/* método y archivo */
.block-m{margin-top:44px;padding-top:16px;border-top:2px solid var(--navy)}
.page .block-m>h2{font-size:24px;letter-spacing:-.4px;margin:0 0 18px}
.steps{list-style:none;counter-reset:st;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.steps li{counter-increment:st;padding:0 18px 0 0;position:relative}
.steps li::before{content:counter(st);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-weight:600;font-size:16px;margin-bottom:12px;position:relative;z-index:1}
.steps li::after{content:"";position:absolute;left:34px;right:0;top:17px;border-top:2px solid var(--line)}
.steps li:last-child::after{display:none}
.steps h3{font-size:16px;font-weight:600;line-height:1.25;margin:0 0 6px}
.steps p{font-size:14px;line-height:1.55;color:var(--muted);margin:0}
.pipeline img{display:block;max-width:100%;height:auto;margin-top:12px}
.page .block-m .figure.pipeline{margin-top:34px}
.inds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px}
.ind{scroll-margin-top:16px}
.ind h3{font-size:18px;font-weight:600;margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.ind p{font-size:15px;line-height:1.6;margin:0 0 10px;max-width:none}
.ind .more{font-size:14px;margin-top:12px}
.limits{margin:0;padding:0;list-style:none;max-width:780px}
.limits li{font-size:16px;line-height:1.6;padding:12px 0;border-bottom:1px solid var(--line)}
.limits li:first-child{padding-top:0}
.week{margin-top:40px;padding-top:14px;border-top:2px solid var(--navy);max-width:860px}
.week header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 20px;margin-bottom:6px}
.page .week h2{font-size:20px;margin:0}
.week header span{font-size:13px;color:var(--muted)}
.archive{list-style:none;margin:0;padding:0}
.archive li{padding:18px 0;border-bottom:1px solid var(--line)}
.archive h3{font-size:21px;font-weight:600;line-height:1.25;letter-spacing:-.3px;margin:0 0 6px}
.archive h3 a{text-decoration:none}.archive h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.archive li>p:last-child{font-size:15px;color:var(--muted);margin:0}
.week.next>p{font-size:15px;color:var(--muted);margin:10px 0 0}
.home-alert{padding-top:26px}
.home-alert .proto-note{margin:0;font-size:14px;padding:11px 15px}
/* investigación */
.papers h3{font-size:22px}
.papers li>p:not(.kicker):not(.more){font-size:15.5px;color:var(--ink);line-height:1.6;margin:0}
.papers .more{font-size:14px;margin-top:10px}
.papers li>p.award{font-size:13.5px;color:#7a5f25;font-weight:600;margin-top:8px}
.avatar:not(.round):has(img){box-shadow:inset 0 0 0 1px var(--line)}
.avatar:not(.round) img{padding:2px}
.avatar.small:not(.round) img{padding:1px}
.block-m.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px;max-width:none}
.block-m.two-col p{font-size:15.5px;line-height:1.6}
.page .block-m.two-col h2{font-size:20px;margin-bottom:10px}
@media(max-width:760px){.block-m.two-col{grid-template-columns:1fr}}
/* selectores con logos de cadena */
.chart-controls button{display:inline-flex;align-items:center;gap:7px;min-height:32px;line-height:1.2}
.chart-controls .chlogo{width:auto;max-width:26px;height:17px;margin:0;padding:0;background:none;border-radius:0;vertical-align:0;flex:0 0 auto}
.chart-controls:has(.chlogo) button[aria-pressed="true"]{background:#e9eef4;color:var(--ink);border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);font-weight:600}
@media(max-width:900px){.steps{grid-template-columns:1fr;gap:18px}.steps li{padding:0 0 0 48px;min-height:34px}.steps li::before{position:absolute;left:0;top:0;margin:0}.steps li::after{left:16px;right:auto;top:34px;bottom:-18px;border-top:0;border-left:2px solid var(--line)}.inds{grid-template-columns:1fr}}

/* proyecto */
.about2{max-width:900px;margin-inline:auto}
.about2 .kicker,.about2 h1,.about2 .deck{text-align:center}
.about2 .deck{margin-inline:auto;max-width:56ch}
.people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:44px;padding-top:36px;border-top:2px solid var(--navy)}
.person{text-align:center}
.person img{width:148px;height:148px;border-radius:50%;object-fit:cover;background:var(--line);display:block;margin:0 auto 18px}
.person h3{font-size:22px;font-weight:600;letter-spacing:-.3px;margin:0 0 4px}
.person .role{font-size:14px;color:#7a5f25;font-weight:600;margin:0 0 10px;max-width:none}
.person p{font-size:15px;line-height:1.6;color:var(--muted);margin:0 auto;max-width:38ch}
.person .more{font-size:14px;margin-top:12px}
.about-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px;margin-top:48px;padding-top:22px;border-top:1px solid var(--line)}
.page .about-cols h2{font-size:20px;margin:0 0 10px}
.about-cols p{font-size:15.5px;line-height:1.7;color:var(--muted);margin:0 0 12px;max-width:none}
.about-cols.boxes{border-top:0;padding-top:0;margin-top:40px}
.about-cols.boxes>div{background:#f1f3f5;padding:20px 22px}
.contact-list{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:10px}
.contact-list li{display:flex;align-items:center;gap:11px;font-size:15.5px;min-width:0}
.contact-list svg{flex:0 0 auto;width:20px;height:20px;color:var(--navy)}
.contact-list li:nth-child(2) svg{width:17px;height:17px;margin:0 1.5px}
.contact-list a{color:var(--ink);overflow-wrap:anywhere}
.about-cols.boxes p.small{font-size:13.5px;margin-bottom:0}
.about-cols .cite{color:var(--ink);font-size:14.5px}
.about-cols a[href^="mailto"]{word-break:break-word}
.about-research{margin-top:56px;padding-top:22px;border-top:2px solid var(--navy);scroll-margin-top:90px}
.page .about-research h2{font-size:26px;margin:0 0 10px}
.about2 .about-research .rs-lead{font-size:16px;line-height:1.65;color:var(--muted);max-width:68ch;margin:0 0 8px}
.about2 .about-research .kicker{text-align:left}
.about-research .note{font-size:14px;color:var(--muted);margin:18px 0 0;max-width:none}
.about-research .papers li:last-child{border-bottom:0}
.monitor-band:not(.cm-band) .monitor-cta{font-size:15px;padding:13px 22px}
.ticker{background:#fff;border-bottom:1px solid var(--line);font-size:13px}
.ticker .shell{display:flex;align-items:baseline;gap:6px 18px;padding-block:9px;overflow-x:auto;scrollbar-width:none}
.ticker .shell::-webkit-scrollbar{display:none}
.ticker b{flex:0 0 auto;font-weight:600;color:#7a5f25}
.ticker ul{display:flex;flex-wrap:wrap;gap:4px 26px;list-style:none;margin:0;padding:0}
.ticker li{white-space:nowrap}
@media(max-width:700px){.ticker ul{flex-wrap:nowrap}}
.ticker time{color:var(--muted);margin-right:7px;font-variant-numeric:tabular-nums}
.ticker a{text-decoration:none}.ticker a:hover{text-decoration:underline;text-underline-offset:3px}
.q-sub{font-size:14px;color:var(--muted);margin:0 0 4px}
.questions{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 36px}
.questions li{border-bottom:1px solid var(--line)}
.questions a{display:block;text-decoration:none;padding:16px 26px 18px 0;position:relative;height:100%}
.questions a::after{content:"→";position:absolute;right:0;top:16px;color:#b9842a;font-size:17px}
.questions .k{display:block;font-size:12.5px;color:#7a5f25;font-weight:600;margin-bottom:4px}
.questions .h{display:block;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.2px}
.questions a:hover .h{text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.questions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.questions{grid-template-columns:1fr}}
.pick-hint{font-size:14px;margin:6px 0 4px;padding:8px 12px;background:#f4efe2;border-left:3px solid #b9842a;max-width:none}
.dotrow .lab::after{content:"›";color:#b9842a;font-weight:700;margin-left:8px}
.dotrow[aria-pressed="true"]{box-shadow:inset 3px 0 0 #b9842a}
.dotrow[aria-pressed="true"] .lab{padding-left:8px}
#ag-pick{margin-top:10px}
#ag-pick label{color:var(--muted);margin-right:2px}
#ag-pick select{font:inherit;font-size:14px;color:inherit;background:#fff;border:1px solid var(--navy);padding:6px 10px;max-width:100%}
.qhead{font-size:19px;font-weight:600;letter-spacing:-.2px;margin:34px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.chart-controls+.qhead{margin-top:20px}
.reading{font-size:14.5px;line-height:1.5;margin:12px 0 0;padding:9px 12px;background:#f1f3f5;max-width:none}
.reading:empty{display:none}
/* banda más ligera */
.monitor-band,.monitor-band.cm-band{background:rgba(20,35,56,.84)}
.monitor-band .cp-dot{box-shadow:0 0 0 3px #394657}
.monitor-band .monitor-text,.monitor-band .cm-progress{color:#e3e8ee}
.fig-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.fig-tools button{font:inherit;font-size:13px;color:var(--navy);background:none;border:1px solid var(--line);padding:5px 12px;cursor:pointer}
.fig-tools button:hover{border-color:var(--navy)}
.hbars.div.ci .row,.hbars.div.ci:has(.chlogo:not([data-missing])) .row{grid-template-columns:108px minmax(0,1fr) 70px}
.hbars.div.ci .ci{position:absolute;top:50%;height:0;border-top:2px solid var(--ink);margin-top:-1px;min-width:3px}
.hbars.div.ci .ci::before,.hbars.div.ci .ci::after{content:"";position:absolute;top:-5px;height:8px;border-left:2px solid var(--ink)}
.hbars.div.ci .ci::before{left:0}.hbars.div.ci .ci::after{right:0}
.hbars.div.ci .row.ns .bar{opacity:.38}
.hbars.div.ci .num{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}
.hbars.div.ci .num b{font-weight:400}.hbars.div.ci .num small{font-size:11px;color:var(--muted)}
.figure-key i.cikey{width:24px;height:8px;border-left:2px solid var(--ink);border-right:2px solid var(--ink);background:linear-gradient(var(--ink),var(--ink)) center/100% 2px no-repeat}
.figure-key i.nskey{opacity:.38}
.figure.avail{border-top:1px solid var(--line)}
.page .figure.avail{margin-top:22px}
.figure.avail figcaption{font-size:13px;color:var(--muted);font-weight:600;margin-bottom:8px}
.arow{display:grid;grid-template-columns:108px minmax(0,1fr) 128px;gap:10px;align-items:center;font-size:13px;margin-bottom:5px}
.arow svg{display:block;width:100%;height:10px}
.arow svg .bg{fill:#eef0f2}.arow svg g rect{fill:#7c8aa0}.arow svg .out{fill:#fcfcfa;opacity:.72}
.arow .num{font-size:12px;color:var(--muted);text-align:right;white-space:nowrap}.arow .num b{color:var(--ink);font-weight:600}
.arow.axis .ax{position:relative;height:14px;font-size:11px;color:var(--muted)}.arow.axis .ax span{position:absolute;top:0;transform:translateX(-50%)}
.archive-note{font-size:14px;line-height:1.5;margin:16px 0 0;padding:9px 13px;background:#f1f3f5;border-left:3px solid var(--navy);max-width:none}
@media(max-width:560px){.arow{grid-template-columns:34px minmax(0,1fr) 92px}.arow .name{font-size:0}.arow .name .chlogo{margin:0}.arow.axis .num{font-size:0}}
.subnav2{background:#fff;border-bottom:1px solid var(--line);font-size:14px}
.subnav2 .shell{display:flex;flex-wrap:wrap;align-items:stretch;gap:0 6px}
.subnav2 b{align-self:center;font-weight:600;font-size:13px;color:#7a5f25;margin-right:14px}
.subnav2 a{display:flex;flex-direction:column;justify-content:center;text-decoration:none;padding:8px 14px 9px;line-height:1.25;border-bottom:3px solid transparent}
.subnav2 a small{font-size:11.5px;color:var(--muted)}
.subnav2 a:hover{background:#f4f6f8}
.subnav2 a[aria-current]{border-bottom-color:var(--gold);font-weight:600}
.intro-band{background:#fff;border-bottom:1px solid var(--line)}
.intro-band .shell{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:18px 48px;align-items:center;padding-block:22px}
.intro-lead{font-size:20px;line-height:1.4;letter-spacing:-.2px;margin:0;max-width:none}
.intro-lead b{font-weight:600}
.intro-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.intro-links li{border-left:1px solid var(--line)}
.intro-links a{display:block;text-decoration:none;padding:4px 14px;height:100%}
.intro-links b{display:block;font-size:15px;font-weight:600;line-height:1.25}
.intro-links span{display:block;font-size:12.5px;color:#7a5f25;font-weight:600;margin-top:4px}
.intro-links a:hover b{text-decoration:underline;text-underline-offset:3px}
.indicators h3{font-size:26px}
@media(max-width:900px){.intro-band .shell{grid-template-columns:1fr}.intro-links li:first-child{border-left:0}.intro-links li:first-child a{padding-left:0}}
@media(max-width:560px){.intro-lead{font-size:18px}.intro-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 0}.intro-links li:nth-child(odd){border-left:0}.intro-links li:nth-child(odd) a{padding-left:0}.subnav2 b{display:none}.subnav2 a{padding-inline:10px}.subnav2 a:first-of-type{padding-left:0}}
@media(max-width:700px){.people,.about-cols{grid-template-columns:1fr}.people{gap:36px}.person img{width:124px;height:124px}}

/* tablas en móvil */
.tscroll{position:relative}
@media(max-width:640px){
#ag-daytable{min-width:0;table-layout:fixed}
#ag-daytable tr:first-child th:first-child{width:36%}
#ag-daytable th[scope="row"]{white-space:normal;line-height:1.25;padding:6px 6px 6px 0}
#ag-daytable .chn{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#ag-daytable .chlogo{margin:0;height:20px;width:auto;max-width:30px}
#ag-daytable td{padding:10px 0}
.daytable th[scope="row"]{position:sticky;left:0;background:var(--paper,#fbfaf7);z-index:1}
}
