:root{padding-block:env(safe-area-inset-top,0px) env(safe-area-inset-bottom,0px);color-scheme:light}body{margin:0;font:14px system-ui,sans-serif}img{max-width:100%}[hidden]{display:none!important}

/* Layout: columna de controles a la izquierda, resultado y tabla a la derecha; una columna en móvil */
:root{
  --bg:#f6f7f9; --panel:#ffffff; --fg:#14181f; --muted:#5b6472; --line:#dde1e8;
  --pp:#1d6fb8; --psoe:#d4342c; --vox:#4a9a3a; --sumar:#a03a8f; --reg:#8a919c; --majority:#14181f;
  --accent:#14181f;
  --display:'Public Sans',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0f1318; --panel:#171c23; --fg:#e8ebf0; --muted:#9aa3b0; --line:#2a313b;
  --pp:#4b9be0; --psoe:#ef6a62; --vox:#74c063; --sumar:#cf6fc0; --reg:#7b8491; --majority:#e8ebf0; --accent:#e8ebf0; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0f1318; --panel:#171c23; --fg:#e8ebf0; --muted:#9aa3b0; --line:#2a313b;
  --pp:#4b9be0; --psoe:#ef6a62; --vox:#74c063; --sumar:#cf6fc0; --reg:#7b8491; --majority:#e8ebf0; --accent:#e8ebf0; color-scheme:dark}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--display);font-size:15px;line-height:1.5;
  padding-block:24px 48px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.wrap{max-width:1080px;margin:0 auto;display:flex;flex-direction:column;gap:20px}
h1{font-size:clamp(26px,4.5vw,38px);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0;text-wrap:balance}
.sub{color:var(--muted);margin:6px 0 0;max-width:62ch}
.grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:20px;align-items:start}
@media(max-width:820px){.grid{grid-template-columns:minmax(0,1fr)}.grid>.resc{display:contents!important}.resc>section:nth-child(1){order:1}.grid>.panel:first-child{order:2}.resc>section:nth-child(n+2){order:3}}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px;min-width:0}
h2{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
button{font:inherit;font-size:13px;font-weight:500;color:var(--fg);background:transparent;border:1px solid var(--line);border-radius:6px;padding:7px 11px;cursor:pointer}
button:hover{border-color:var(--fg)} button[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
button:focus-visible,input:focus-visible{outline:2px solid var(--pp);outline-offset:2px}
.ctl{display:grid;grid-template-columns:1fr auto;gap:2px 8px;margin-bottom:16px}
.ctl label{font-weight:600;display:flex;align-items:center;gap:8px}
.dot{width:10px;height:10px;border-radius:2px;display:inline-block}
.ctl output{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600}
.ctl input{grid-column:1/-1;width:100%;accent-color:var(--fg)}
.ctl small{grid-column:1/-1;color:var(--muted);font-family:var(--mono);font-size:11.5px}
.note{color:var(--muted);font-size:13px;margin:0}
.bar{position:relative;display:flex;height:44px;background:var(--line);margin:30px 0 6px}
.bar div{height:100%;min-width:0;transition:width .15s}
.mark{position:absolute;top:-24px;bottom:-6px;width:0;border-left:2px dashed var(--majority);pointer-events:none}
.mark span{position:absolute;top:0;left:6px;font-family:var(--mono);font-size:11.5px;white-space:nowrap;color:var(--fg)}
.scale{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--muted)}
.blocs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:10px}
.podsep{display:block;margin:10px 0 4px;font-size:14px;line-height:1.45}.podsep input{margin-right:6px;vertical-align:-1px}
.subh{font-size:15px;margin:20px 0 8px}
.pseats{display:flex;flex-wrap:wrap;gap:8px}
.pchip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:13.5px}
.pchip i{width:10px;height:10px;border-radius:50%;display:inline-block}
.pchip b{font-family:var(--mono);font-variant-numeric:tabular-nums;margin-left:2px}
.bloc{border:1px solid var(--line);border-radius:6px;padding:12px}
.bloc b{font-family:var(--mono);font-size:26px;font-variant-numeric:tabular-nums;display:block;line-height:1.1}
.bloc span{font-size:13px;color:var(--muted)}
.bloc .ok{color:var(--vox);font-weight:700}.bloc .no{color:var(--psoe);font-weight:700}
.tw{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
th,td{text-align:right;padding:7px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
th:first-child,td:first-child{text-align:left}
th{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
td.m{font-family:var(--mono)} .up{color:var(--vox)} .dn{color:var(--psoe)} .eq{color:var(--muted)}
details summary{cursor:pointer;font-weight:600;padding:2px 0}
.foot{color:var(--muted);font-size:12.5px;max-width:80ch}
.foot p{margin:0 0 8px}

:root{--good:#2a8a4a;--mid:#b9811a;--bad:#c93b33;--goodbg:#e4f3e9;--midbg:#f8eed6;--badbg:#f9e3e1}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--good:#5fc17f;--mid:#e0ab42;--bad:#ef7b73;--goodbg:#16301f;--midbg:#352b12;--badbg:#391a18}}
:root[data-theme="dark"]{--good:#5fc17f;--mid:#e0ab42;--bad:#ef7b73;--goodbg:#16301f;--midbg:#352b12;--badbg:#391a18}
.top{display:flex;flex-direction:column;gap:14px}
nav.tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line)}
nav.tabs a{border:0;border-bottom:3px solid transparent;border-radius:0;padding:10px 14px;font-weight:600;font-size:14px;color:var(--muted)}
nav.tabs a[aria-current="page"]{color:var(--fg);border-bottom-color:var(--fg);background:transparent}
section.tab[hidden]{display:none}
.banner{border:1px solid var(--line);border-left:4px solid var(--mid);background:var(--panel);padding:12px 14px;border-radius:6px;font-size:14px}
.banner b{font-weight:700}
.mx{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}
.mx th,.mx td{white-space:normal;text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid var(--line);font-size:13.5px;line-height:1.45}
.mx thead th{position:sticky;top:0;background:var(--panel);font-size:13px;letter-spacing:0;text-transform:none;color:var(--fg);border-bottom:3px solid var(--c)}
.mx .o{margin-top:6px;font-size:11.5px;color:var(--muted)}.mx .ms{margin-top:4px;font-size:11.5px;display:flex;flex-wrap:wrap;gap:4px}.mx .ms a{display:inline-block;padding:3px 8px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--fg);background:var(--bg)}.mx .na{color:var(--muted);font-style:italic}
.mx td:first-child,.mx th:first-child{width:96px;font-weight:700;color:var(--muted);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.sources{font-size:12.5px;color:var(--muted)} .sources a,.src a{color:inherit}
.bars{display:flex;flex-direction:column;gap:18px}
.bar2{display:flex;height:34px;width:100%;background:var(--line)}
.bar2 div{display:flex;align-items:center;padding:0 10px;font-family:var(--mono);font-size:13px;font-weight:600;white-space:nowrap;color:#fff;min-width:0}
.cap{font-size:13px;margin:0 0 6px}
.cap small{color:var(--muted)}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media(max-width:820px){.two{grid-template-columns:minmax(0,1fr)}}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.cards{display:flex;flex-direction:column;gap:12px}
.pc{border:1px solid var(--line);border-radius:6px;padding:12px 14px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:4px 12px;background:var(--panel)}
.st{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:17px;grid-row:span 3}
.st.g{background:var(--goodbg);color:var(--good)}.st.m{background:var(--midbg);color:var(--mid)}.st.b{background:var(--badbg);color:var(--bad)}
.pc h3{font-size:14.5px;margin:0;line-height:1.3}
.pc p{margin:0;font-size:13.5px;line-height:1.45}
.pc .lab{font-family:var(--mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.pc .src{font-size:12px;color:var(--muted)}
.tag{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:3px;margin-left:6px;vertical-align:1px;color:#fff}
.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted);align-items:center}
.legend span{display:inline-flex;gap:6px;align-items:center}
.steps{display:flex;align-items:center;gap:0;margin:6px 0 2px}
.steps i{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);background:transparent;display:block;position:relative}
.steps i.on{background:var(--fg);border-color:var(--fg)}
.steps u{height:2px;width:26px;background:var(--line);display:block}
.steps u.on{background:var(--fg)}
.stl{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10.5px;color:var(--muted);width:calc(4*14px + 3*26px + 40px);max-width:100%;margin-left:-20px}
.stl span{width:60px;text-align:center}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:start}
.colh{font-size:14px;font-weight:800;margin:0 0 10px;padding-bottom:6px;border-bottom:3px solid var(--c)}
.cc{border:1px solid var(--line);border-radius:6px;padding:12px 14px;background:var(--panel);display:flex;flex-direction:column;gap:4px}
.cc h3{font-size:14.5px;margin:0}.cc p{margin:0;font-size:13.5px;line-height:1.45}
.cc .who{font-size:12.5px;color:var(--muted)}
.res{font-weight:700;font-size:12.5px}
h2.big{font-size:20px;letter-spacing:-.01em;text-transform:none;color:var(--fg);margin:0 0 6px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);margin:8px 0 2px;gap:0;width:100%;max-width:340px}
.steps i,.steps u{all:unset}
.sp{position:relative;text-align:center;font-size:10.5px;font-family:var(--mono);color:var(--muted);padding-top:22px;min-width:0}
.sp::before{content:"";position:absolute;top:2px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;border:2px solid var(--line);background:var(--panel);z-index:1;box-sizing:border-box}
.sp::after{content:"";position:absolute;top:8px;left:-50%;width:100%;height:2px;background:var(--line)}
.sp:first-child::after{display:none}
.sp.on::before{background:var(--fg);border-color:var(--fg)}.sp.on::after{background:var(--fg)}.sp.on{color:var(--fg);font-weight:600}
.exec{border:1px solid var(--line);border-top:4px solid var(--fg);background:var(--panel);border-radius:6px;padding:18px;min-width:0}
.exec h2.big{margin-bottom:4px}
.exec .lead{color:var(--muted);margin:0 0 16px;font-size:14px;max-width:70ch}
.sem{display:flex;flex-direction:column;gap:14px}
.sr2{display:grid;grid-template-columns:150px minmax(0,1fr);gap:6px 14px;align-items:center}
@media(max-width:620px){.sr2{grid-template-columns:minmax(0,1fr)}}
.sr2 .nm{font-weight:800;font-size:15px;line-height:1.2}.sr2 .nm small{display:block;font-weight:500;color:var(--muted);font-size:12px;margin-top:2px}
.sbar{display:flex;height:44px;width:100%;border-radius:4px;overflow:hidden;background:var(--line)}
.sbar button{border:0;border-radius:0;padding:0;margin:0;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:800;font-size:16px;color:#fff;min-width:0}
.sbar button.g{background:var(--good)}.sbar button.m{background:var(--mid)}.sbar button.b{background:var(--bad)}
.sbar button:hover{filter:brightness(1.12);border:0}
.sbar.none{background:repeating-linear-gradient(45deg,var(--line),var(--line) 8px,transparent 8px,transparent 16px);align-items:center;justify-content:center;font-size:13px;color:var(--muted);font-weight:600}
.sn{grid-column:2;font-size:12.5px;color:var(--muted)}
@media(max-width:620px){.sn{grid-column:1}}
.dp{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;font-size:12.5px;color:var(--muted)}
.dp span{display:inline-flex;align-items:center;gap:6px}
.dp i{width:12px;height:12px;border-radius:2px;display:inline-block}
.dp i.g{background:var(--good)}.dp i.m{background:var(--mid)}.dp i.b{background:var(--bad)}
.starg{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.star{border:1px solid var(--line);border-top:4px solid var(--c);border-radius:6px;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--bg)}
.star h3{margin:0;font-size:15px;font-weight:800}
.star .big2{font-size:20px;font-weight:800;line-height:1.2;letter-spacing:-.01em}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12px;padding:3px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);line-height:1.3}
.star .cost{font-size:12px;color:var(--muted)}
.pos{width:100%;border-collapse:collapse;min-width:520px}
.pos th,.pos td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:center;white-space:normal}
.pos th{font-size:12px;letter-spacing:0;text-transform:none;font-weight:800;border-bottom:3px solid var(--c)}
.pos td:first-child,.pos th:first-child{text-align:left;font-weight:600;font-size:13.5px}
.pv{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:800;font-size:14px}
.pv.y{background:var(--goodbg);color:var(--good)}.pv.n{background:var(--badbg);color:var(--bad)}.pv.p{background:var(--midbg);color:var(--mid)}.pv.q{background:var(--line);color:var(--muted)}
.dt{margin-top:26px;scroll-margin-top:12px}
.dt > h2.big{border-top:1px solid var(--line);padding-top:18px}
.cardsg{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;align-items:start}
.pt{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:3px;color:#fff;margin-bottom:2px;width:max-content}
.pc .srcs{font-size:12px;color:var(--muted)} .pc .srcs a{color:inherit}
.stg{width:100%;border-collapse:collapse;min-width:480px}
.stg th,.stg td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:center;white-space:normal}
.stg th{font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:600}
.stg td:first-child,.stg th:first-child{text-align:left;font-weight:800;font-size:14px}
.cnt{display:inline-grid;place-items:center;min-width:34px;height:34px;border-radius:50%;font-family:var(--mono);font-weight:800;font-size:15px;border:2px solid var(--line);color:var(--muted)}
.cnt.s1{border-color:var(--mid);color:var(--mid)}.cnt.s2{border-color:var(--pp);color:var(--pp)}.cnt.s3{border-color:var(--bad);color:var(--bad)}.cnt.s4{border-color:var(--fg);color:var(--bg);background:var(--fg)}
.cnt.z{border-color:var(--line);color:var(--line);font-weight:400}
.rowf{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;align-items:center}
.rowf b{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-right:4px}
:root{--link:#1d5fa6}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--link:#7db4ec}}
:root[data-theme="dark"]{--link:#7db4ec}
a{color:var(--link)}
.sources a,.pc .srcs a,.cc .src a{color:var(--link);text-underline-offset:2px}
.pc .srcs,.cc .src{display:flex;flex-wrap:wrap;gap:6px;align-items:center;grid-column:1/-1}
.pc .srcs a,.cc .src a{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:12px;line-height:1.3;background:var(--bg);color:var(--fg)}
.pc>p{grid-column:1/-1}
nav.tabs a svg{display:none}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:36px;background:transparent;margin:0;touch-action:pan-y}
input[type=range]::-webkit-slider-runnable-track{height:10px;border-radius:999px;background:var(--line)}
input[type=range]::-moz-range-track{height:10px;border-radius:999px;background:var(--line)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;margin-top:-10px;border-radius:50%;background:var(--fg);border:4px solid var(--panel);box-shadow:0 0 0 1px var(--fg),0 2px 6px rgba(0,0,0,.25)}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--fg);border:4px solid var(--panel);box-shadow:0 0 0 1px var(--fg)}
@media(max-width:640px){
  body{padding-block:16px calc(84px + env(safe-area-inset-bottom,0px))}
  h1{font-size:30px}
  h2.big{font-size:18px}
  .exec{padding:14px}
  nav.tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;flex-wrap:nowrap;background:var(--panel);border-top:1px solid var(--line);border-bottom:0;padding:6px max(4px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(4px,env(safe-area-inset-left,0px));box-shadow:0 -4px 16px rgba(0,0,0,.08)}
  nav.tabs a{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;border-radius:10px;padding:7px 2px;font-size:11.5px;font-weight:700;min-height:52px;color:var(--muted)}
  nav.tabs a svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  nav.tabs a[aria-current="page"]{color:var(--fg);background:var(--bg)}
  .starg{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-inline:-14px;padding:2px 14px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .starg::-webkit-scrollbar{display:none}
  .star{flex:0 0 80%;scroll-snap-align:center}
  .star .big2{font-size:19px}
  .pos{min-width:620px}
  .pos th,.pos td{padding:10px 2px;font-size:11.5px}
  .pos td:first-child,.pos th:first-child{width:38%;font-size:12.5px;padding-left:0}
  .pv{width:30px;height:30px}
  .mx,.mx tbody,.mx tr,.mx td{display:block;min-width:0;width:100%}
  .mx thead{display:none}
  .mx tr{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:12px;background:var(--bg)}
  .mx td{border:0;padding:10px 14px;font-size:14px;line-height:1.5}
  .mx td:first-child{width:100%;background:var(--fg);color:var(--bg);font-size:12px;padding:8px 14px}
  .mx td[data-p]{border-left:5px solid var(--c);border-top:1px solid var(--line)}
  .mx td[data-p]::before{content:attr(data-p);display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--c);margin-bottom:2px}
  .panel{padding:10px}
  .stg{table-layout:fixed;width:100%;min-width:0}
  .stg th{font-size:9.5px;letter-spacing:0;padding:6px 1px;text-align:center}
  .stg th:first-child{width:22%;text-align:left}
  .stg td{padding:8px 1px;text-align:center}
  .stg td:first-child{text-align:left;font-weight:700;font-size:13px}
  .cnt{min-width:36px;height:36px}
  .rowf{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding:2px 16px 8px;scrollbar-width:none}
  .rowf::-webkit-scrollbar{display:none}
  .rowf button{flex:0 0 auto;min-height:42px;padding:8px 14px;white-space:nowrap}
  .rowf b{flex:0 0 auto}
  .bar2 div{overflow:hidden;white-space:nowrap;text-overflow:clip;font-size:11.5px}
  .sbar{height:52px}
  .pc{padding:14px;grid-template-columns:30px minmax(0,1fr)}
  .pc p,.cc p{font-size:14.5px}
  .cc{padding:14px}
  .cc .steps .sp{font-size:9.5px}
}

.by{margin:6px 0 0;font-size:13px;color:var(--muted)}.by b{color:var(--fg)}
.credit{border-top:1px solid var(--line);padding-top:16px;font-size:12.5px;color:var(--muted);max-width:80ch}.credit b{color:var(--fg)}

.tmap{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(10,auto);gap:3px;max-width:520px;margin:0 auto}
.tile{aspect-ratio:1;min-width:0;padding:0;border:2px solid transparent;border-radius:5px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;cursor:pointer}
.tile span{font-size:9px;font-weight:700;letter-spacing:.02em;opacity:.95}.tile b{font-family:var(--mono);font-size:13px}
.tile.close{border:2px dashed #fff;box-shadow:0 0 0 2px var(--fg)}
.tile.sel{outline:3px solid var(--fg);outline-offset:1px}
.tile:hover{filter:brightness(1.1)}
.mi{border:1px solid var(--line);border-radius:8px;padding:12px;margin-top:10px;background:var(--bg)}.mi h3{margin:0 0 4px;font-size:15px}.mi small{color:var(--muted);font-weight:500}.mi p{margin:4px 0}
.share{margin-top:16px;display:flex;flex-direction:column;gap:8px}
.share .lab{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sh{display:flex;flex-wrap:wrap;gap:8px}
.sh a,.sh button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--fg);font-weight:700;font-size:14px;text-decoration:none;font-family:inherit}
.sh a.wa{background:#1f9d55;border-color:#1f9d55;color:#fff}
.meth{display:flex;flex-direction:column;gap:10px}
.meth details{border:1px solid var(--line);border-radius:8px;background:var(--bg)}
.meth summary{cursor:pointer;padding:14px;font-weight:700;font-size:15px;min-height:44px}
.meth ul{margin:0;padding:0 16px 14px 32px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.5}
@media(max-width:640px){nav.tabs{grid-template-columns:repeat(6,minmax(0,1fr))}nav.tabs a{font-size:10.5px}.tile span{font-size:8px}.tile b{font-size:12px}}
.aviso p{margin:0 0 10px;padding:0 16px;font-size:14px;line-height:1.55}.aviso p:first-child{margin-top:0}.sg a{color:var(--link)}.aviso .sg{font-size:13.5px}
.cd{margin-top:14px;border:1px solid var(--line);border-top:4px solid var(--fg);border-radius:8px;background:var(--panel);padding:12px 14px;max-width:520px}
.cdl{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.cdg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;text-align:center}
.cdg div{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 2px}
.cdg b{display:block;font-family:var(--mono);font-size:clamp(24px,8vw,34px);line-height:1.1;font-variant-numeric:tabular-nums}
.cdg span{font-size:11px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}
.cd.done .cdg{display:none}.cd.done .cdl{font-size:15px;color:var(--fg);margin:0}
:root{--disp:'Bricolage Grotesque','Public Sans',system-ui,sans-serif}
html{scroll-behavior:auto}
.prog{position:fixed;left:0;top:0;right:0;height:3px;z-index:60;background:linear-gradient(90deg,#4b9be0,#ef6a62,#74c063,#cf6fc0);transform-origin:left;transform:scaleX(0);pointer-events:none}
/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;border-radius:22px;color:var(--fg);background:var(--panel);border:1px solid var(--line)}
.hero .blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.14;pointer-events:none;will-change:transform}
.hero .b1{width:340px;height:340px;background:var(--pp);left:-90px;top:-80px;animation:fl1 16s ease-in-out infinite alternate;translate:0 calc(var(--sy,0)*-.12px)}
.hero .b2{width:300px;height:300px;background:var(--psoe);right:-70px;top:40px;animation:fl2 19s ease-in-out infinite alternate;translate:0 calc(var(--sy,0)*-.2px)}
.hero .b3{width:280px;height:280px;background:var(--vox);left:30%;bottom:-120px;animation:fl1 22s ease-in-out infinite alternate-reverse;translate:0 calc(var(--sy,0)*-.08px)}
.hero .b4{width:220px;height:220px;background:var(--sumar);right:12%;bottom:-60px;animation:fl2 17s ease-in-out infinite alternate-reverse}
@keyframes fl1{to{transform:translate(70px,50px) scale(1.15)}}@keyframes fl2{to{transform:translate(-60px,40px) scale(.9)}}
.hin{position:relative;padding:clamp(22px,5vw,48px);display:flex;flex-direction:column;gap:16px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0}
.hero h1{font-family:var(--disp);font-size:clamp(60px,17vw,150px);line-height:.88;letter-spacing:-.045em;font-weight:800;margin:0;text-wrap:balance;color:var(--fg)}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--pp),var(--psoe),var(--vox),var(--sumar),var(--pp));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gshift 9s linear infinite}
@keyframes gshift{to{background-position:300% 0}}
.hero .sub{color:var(--muted);font-size:clamp(15px,2.4vw,19px);max-width:56ch;margin:0}
.hero .by{color:var(--muted);margin:0;font-size:12.5px}
.hero .cd{margin:0;max-width:640px;border:1px solid var(--line);border-top:1px solid var(--line);background:var(--bg);border-radius:16px;padding:14px}
.hero .cdl{color:var(--muted)}
.hero .cdg div{background:var(--panel);border-color:var(--line)}
.hero .cdg b{color:var(--fg);font-size:clamp(28px,9vw,48px)}
.hero .cdg span{color:var(--muted)}
.hero .cd.done .cdl{color:var(--fg)}
.hemiwrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;align-items:center;margin-top:8px}
@media(max-width:760px){.hemiwrap{grid-template-columns:minmax(0,1fr)}}
.hstats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hs{border:1px solid var(--line);border-left:5px solid var(--c);border-radius:12px;padding:10px 12px;background:var(--bg)}
.hs .hn{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.hs b{display:block;font-family:var(--mono);font-size:clamp(28px,7vw,40px);line-height:1.1;font-variant-numeric:tabular-nums;color:var(--fg)}
.hs small{color:var(--muted);font-size:12px}
.hcap{margin:0;font-size:12.5px;color:var(--muted);max-width:80ch}
.cue{align-self:flex-start;display:inline-flex;gap:8px;align-items:center;color:var(--fg);text-decoration:none;font-weight:700;border:1px solid var(--fg);border-radius:999px;padding:10px 18px;min-height:44px}
.cue::after{content:"↓";animation:bob 1.6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(5px)}}
/* hemiciclo */
.hemi{width:100%;height:auto;display:block;overflow:visible}
.hemi circle{fill:var(--reg);transform-box:fill-box;transform-origin:center;transition:fill .8s ease,opacity .6s ease,transform .6s cubic-bezier(.3,1.5,.5,1);transition-delay:calc(var(--i)*2.4ms)}
.hemi .p-PP{fill:var(--pp)}.hemi .p-PSOE{fill:var(--psoe)}.hemi .p-VOX{fill:var(--vox)}.hemi .p-SUMAR{fill:var(--sumar)}
.hemi .p-ERC,.hemi .p-JUNTS,.hemi .p-BILDU,.hemi .p-PNV,.hemi .p-BNG,.hemi .p-CCa,.hemi .p-UPN{fill:var(--reg)}
.hemi .hmaj{stroke:currentColor;stroke-width:1;stroke-dasharray:3 3;opacity:.45}
.hemi .hmajt{font:600 8px var(--mono);fill:currentColor;opacity:.8}
#hemi1 circle{opacity:0;transform:scale(.1)}
#hemi1.on circle{opacity:1;transform:none}
#hemi1{color:#c9d3e8}
.hemibox{color:var(--muted);margin:2px 0 4px}.hemibox circle{transition-delay:calc(var(--i)*.8ms)}
.hcap2{font-size:12px;color:var(--muted);margin:0 0 6px}
/* ---------- ticker ---------- */
.ticker{overflow:hidden;border-block:1px solid var(--line);margin-inline:calc(-1*max(16px,env(safe-area-inset-left,0px)));-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.tkin{display:flex;gap:36px;width:max-content;padding:11px 0;animation:tk 38s linear infinite;font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.tkin span::before{content:"●";margin-right:12px;color:var(--fg);opacity:.5}
@keyframes tk{to{transform:translateX(-50%)}}
/* ---------- navegación sticky ---------- */
nav.tabs a[aria-current="page"]{color:var(--fg);background:var(--bg)}
@media(min-width:641px){
  body{padding-top:84px}
  nav.tabs{position:fixed;top:max(10px,env(safe-area-inset-top,0px));left:0;right:0;margin-inline:auto;z-index:40;justify-content:center;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:5px;gap:4px;width:fit-content;max-width:calc(100vw - 32px);box-shadow:0 6px 24px rgba(0,0,0,.08)}
  nav.tabs a{border:0;border-radius:999px;padding:9px 16px;display:flex;gap:7px;align-items:center}
  nav.tabs a svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  nav.tabs a[aria-current="page"]{background:var(--fg);color:var(--bg)}
}
/* ---------- secciones ---------- */
section.sec{scroll-margin-top:72px;display:flex;flex-direction:column;gap:20px}
.sech{padding-top:clamp(12px,2.4vw,32px)}
.sech .num{font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:var(--muted);display:flex;align-items:center;gap:12px}
.sech .num::after{content:"";height:2px;width:56px;background:linear-gradient(90deg,var(--pp),var(--psoe),var(--vox),var(--sumar));border-radius:2px}
.sech h2{font-family:var(--disp);font-size:clamp(32px,8vw,60px);letter-spacing:-.035em;line-height:1;text-transform:none;color:var(--fg);font-weight:800;margin:10px 0 10px;text-wrap:balance}
.sech .lead{margin:0;color:var(--muted);max-width:58ch;font-size:clamp(15px,2.2vw,18px)}
/* ---------- reveal ---------- */
.js .rv{opacity:0;transform:translateY(30px);transition:opacity 1.15s cubic-bezier(.22,.7,.2,1),transform 1.15s cubic-bezier(.22,.7,.2,1);transition-delay:var(--d,0ms)}
.js .rv.in{opacity:1;transform:none}
.js .sbar button{width:var(--w);transition:width 1.2s cubic-bezier(.2,.8,.2,1) .15s}
.js .sr2.rv:not(.in) .sbar button{width:0}
.js .bars>div.rv:not(.in) .bar2>div{width:0!important}
.js .bar2>div{transition:width 1.3s cubic-bezier(.2,.8,.2,1) .2s}
.js .stg.rv:not(.in) .cnt{transform:scale(.3);opacity:0}
.stg .cnt{transition:transform .55s cubic-bezier(.3,1.6,.5,1),opacity .4s}
.stg td:nth-child(2) .cnt{transition-delay:.15s}.stg td:nth-child(3) .cnt{transition-delay:.3s}.stg td:nth-child(4) .cnt{transition-delay:.45s}.stg td:nth-child(5) .cnt{transition-delay:.6s}
.js .pos.rv:not(.in) .pv{transform:scale(.3);opacity:0}.pos .pv{transition:transform .5s cubic-bezier(.3,1.6,.5,1),opacity .4s}
.star,.pc,.cc{transition:translate .25s ease,box-shadow .25s ease}
.star:hover,.pc:hover,.cc:hover{translate:0 -3px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
/* ---------- mapa real ---------- */
.mapbox{max-width:760px;margin:6px auto 0}
.geomap{width:100%;height:auto;display:block;overflow:visible}
.geomap .prov{stroke:var(--panel);stroke-width:.9;stroke-linejoin:round;cursor:pointer;transition:fill .6s ease,stroke .2s;fill:var(--line)}
.geomap .prov:hover{stroke:var(--fg);stroke-width:2}
.geomap .prov.sel{stroke:var(--fg);stroke-width:2.6}
.geomap .prov.close{stroke:var(--fg);stroke-width:1.6;stroke-dasharray:4 3}
.geomap .mk{stroke:var(--fg);stroke-width:1.4}
.geomap .inset{fill:none;stroke:var(--line);stroke-dasharray:4 4}
.geomap .insl{font:600 11px var(--mono);fill:var(--muted)}
.geomap .seatn{font:800 15px var(--display);fill:#fff;paint-order:stroke;stroke:rgba(0,0,0,.45);stroke-width:3px;stroke-linejoin:round;pointer-events:none}
.maplg{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:8px 0}
.maplg i{display:inline-block;width:10px;height:10px;border-radius:2px}.maplg .grad{display:inline-block;width:120px;height:10px;border-radius:5px}
.psel{display:flex;gap:10px;align-items:center;margin:6px 0 4px;font-size:13px;color:var(--muted)}
.psel select{flex:1;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--fg);padding:0 10px;font:inherit}
.mapp .rowf{margin-bottom:6px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}.tkin{animation:none}}
@media(max-width:640px){
  .hero{border-radius:18px}
  .hin{gap:14px}
  .ticker{margin-inline:-16px}
  section.sec{scroll-margin-top:12px}
  .sech{padding-top:14px}
}
@media(max-width:480px){.hero .cdg span{font-size:9px;letter-spacing:0}.hero .cdg div{padding-inline:0}}


@view-transition{navigation:auto}
nav.tabs a{text-decoration:none;color:var(--muted);cursor:pointer}
.mini{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:6px}
.brand{font-family:var(--disp);font-weight:800;font-size:clamp(26px,6vw,34px);letter-spacing:-.04em;color:var(--fg);text-decoration:none;line-height:1}
.brand em{font-style:normal;background:linear-gradient(90deg,#4b9be0,#ef6a62,#74c063,#cf6fc0);-webkit-background-clip:text;background-clip:text;color:transparent}
.mcd{font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:var(--muted);background:var(--panel)}
.mcd b{color:var(--fg)}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:640px){.tiles{grid-template-columns:minmax(0,1fr)}}
.tile2{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);text-decoration:none;color:var(--fg);transition:translate .25s,box-shadow .25s}
.tile2:hover{translate:0 -3px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.tile2 .tn{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--muted)}
.tile2 b{font-family:var(--disp);font-size:clamp(20px,4vw,26px);letter-spacing:-.02em;line-height:1.1}
.tile2 span.d{color:var(--muted);font-size:14px}
.tile2 .go{font-weight:700;margin-top:6px}
.tile2 .go::after{content:" →"}
.nextp{display:flex;flex-direction:column;gap:4px;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--panel);text-decoration:none;color:var(--fg);transition:translate .25s,box-shadow .25s}
.nextp:hover{translate:0 -3px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.nextp small{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.nextp b{font-family:var(--disp);font-size:clamp(20px,4.5vw,30px);letter-spacing:-.02em}
.nextp b::after{content:" →"}
.mesa-cta{display:flex;align-items:center;gap:12px;margin:14px 0;padding:14px 16px;border-radius:12px;border:2px solid var(--mid);background:var(--panel);color:var(--fg);text-decoration:none;font-size:15px;line-height:1.35}
.mesa-cta b{display:block;font-size:16px}.mesa-cta small{display:block;opacity:.8;font-size:13px}.mesa-cta .go{margin-left:auto;font-weight:800;white-space:nowrap}
.mesa-cta .dot{flex:none;width:12px;height:12px;border-radius:50%;background:var(--mid);animation:mp 1.6s infinite}
@keyframes mp{50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.mesa-cta .dot{animation:none}}

/* ===== v18: navegación «Más», volver arriba, portada, noticias, mesas ===== */
.tabs .more{display:none;border:0;background:none;cursor:pointer;font:inherit;color:var(--muted)}
.tabs .more svg{display:block;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.tabs a.x{display:none}
@media(max-width:640px){
  nav.tabs{grid-template-columns:repeat(6,minmax(0,1fr))}
  nav.tabs .more{display:flex;flex-direction:column;align-items:center;gap:3px;border-radius:10px;padding:7px 2px;font-size:10.5px;font-weight:700;min-height:52px}
  nav.tabs .more svg{width:22px;height:22px;stroke-width:1.9}
  nav.tabs .more[data-on]{color:var(--fg);background:var(--bg)}
}
@media(min-width:641px) and (max-width:979px){
  nav.tabs .more{display:flex;gap:7px;align-items:center;border-radius:999px;padding:9px 16px;font-weight:600;font-size:14px}
  nav.tabs .more svg{width:16px;height:16px;stroke-width:2}
  nav.tabs .more[data-on]{background:var(--fg);color:var(--bg)}
}
@media(min-width:980px){nav.tabs a.x{display:flex}nav.tabs a{padding-inline:13px}}
.msheet{position:fixed;inset:0;z-index:80}
.msbg{position:absolute;inset:0;background:rgba(10,14,22,.45);animation:fin .2s ease}
.msp{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,460px);background:var(--panel);color:var(--fg);border:1px solid var(--line);border-radius:20px 20px 0 0;padding:14px max(16px,env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));box-shadow:0 -12px 40px rgba(0,0,0,.25);display:grid;gap:8px;animation:sup .25s cubic-bezier(.2,.8,.2,1)}
@media(min-width:641px){.msp{bottom:24px;border-radius:20px}}
.msh{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 6px}
.msh b{font-family:var(--disp);font-size:20px;letter-spacing:-.02em}
.msx{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:999px;width:36px;height:36px;font-size:15px;cursor:pointer}
.msl{display:flex;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--fg);background:var(--bg)}
.msl svg{flex:none;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.msl b{display:block;font-size:16px}.msl small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.msl[aria-current="page"]{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}
.msl:hover{border-color:var(--fg)}
html.msopen{overflow:hidden}
@keyframes fin{from{opacity:0}}@keyframes sup{from{transform:translate(-50%,30px);opacity:0}}
.totop{position:fixed;z-index:35;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px));width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--fg);box-shadow:0 8px 24px rgba(0,0,0,.16);display:grid;place-items:center;cursor:pointer;opacity:0;pointer-events:none;translate:0 12px;transition:opacity .25s,translate .25s}
.totop svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.totop.on{opacity:1;pointer-events:auto;translate:0 0}
@media(max-width:640px){.totop{bottom:calc(80px + env(safe-area-inset-bottom,0px))}}
/* portada: lo último */
.hlast{display:none}
@media(min-width:1100px){
  .hin{padding-right:calc(340px + 72px)}
  .hlast:not([hidden]){display:flex;flex-direction:column;gap:10px;position:absolute;top:48px;right:48px;width:340px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--bg);color:var(--fg);z-index:2}
}
.hlh{display:flex;justify-content:space-between;align-items:baseline}
.hlh span{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mid)}
.hlh small{font-size:12px;color:var(--muted)}
.hlast ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.hlast .nitem{border:1px solid var(--line);background:var(--panel)}
.hlast .nitem a{color:var(--fg);font-size:14.5px}
.hlast .nmeta{color:var(--muted)}.hlast .ntag{background:var(--line);color:var(--fg)}
.hlm{color:var(--fg);font-weight:700;text-decoration:none;font-size:14px}.hlm:hover{text-decoration:underline}
/* noticias */
.nlist{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px}
@media(min-width:760px){.nlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nitem{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--panel);display:flex;flex-direction:column;gap:6px;transition:border-color .2s,translate .2s}
.nitem:hover{border-color:var(--fg);translate:0 -2px}
.nitem a{font-weight:700;text-decoration:none;color:var(--fg);line-height:1.35;font-size:16px}
.nitem a::after{content:" ↗";color:var(--muted);font-weight:400}
.nmeta{font-size:12.5px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ntag{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--bg);border:1px solid var(--line);color:var(--fg)}
.nload{color:var(--muted);list-style:none}
/* sigue explorando */
.tiles.tiles3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:760px){.tiles.tiles3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}
.tiles3 .tile2{padding:14px;gap:4px;min-width:0}
.tiles3 .tile2 .ti{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--bg);border:1px solid var(--line);margin-bottom:6px}
.tiles3 .tile2 .ti svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.tiles3 .tile2 b{font-size:clamp(17px,2.2vw,21px)}
.tiles3 .tile2 span.d{font-size:13px;line-height:1.4}
.tiles3 .tile2 .tn{font-size:11px}
.tiles3 .t-mesas{border-color:var(--mid);box-shadow:inset 0 0 0 1px var(--mid)}
.tiles3 .t-mesas .ti{background:var(--mid);border-color:var(--mid);color:#fff}
@media(max-width:640px){.tiles3 .tile2 .go{display:none}}
/* gastos: índice */
.gidx{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;margin:16px 0 0;scrollbar-width:thin}
.gidx a{flex:none;display:flex;gap:8px;align-items:center;padding:8px 14px 8px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--fg);text-decoration:none;font-weight:600;font-size:14px}
.gidx a i{font-style:normal;font-family:var(--mono);font-size:11.5px;min-width:24px;height:24px;padding:0 4px;border-radius:999px;display:grid;place-items:center;background:var(--fg);color:var(--bg)}
.gidx a:hover{border-color:var(--fg)}
[id^="g_"]{scroll-margin-top:72px}
@media(max-width:600px){.gsvg text{font-size:15px}}
/* mesas */
.mk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}
@media(min-width:760px){.mk{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mk>div{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:14px;display:flex;flex-direction:column;gap:6px;min-width:0}
.mk b{font-family:var(--disp);font-size:clamp(22px,5vw,30px);letter-spacing:-.03em;line-height:1}
.mk>div:nth-child(2) b{color:var(--mid)}
.mk span{font-size:13.5px;color:var(--muted);line-height:1.4}
.mtl{list-style:none;margin:14px 0 0;padding:0 0 0 22px;position:relative;display:grid;gap:18px}
.mtl::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:var(--line)}
.mtl li{position:relative}
.mtl li::before{content:"";position:absolute;left:-22px;top:3px;width:14px;height:14px;border-radius:50%;background:var(--panel);border:3px solid var(--fg)}
.mtl li.mday::before{background:var(--mid);border-color:var(--mid)}
.mtl .md{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:var(--bg);border:1px solid var(--line);margin-bottom:4px}
.mtl .mday .md{background:var(--mid);border-color:var(--mid);color:#fff}
.mtl li>b{display:block;font-size:17px}
.mtl p{margin:4px 0 0;color:var(--muted);line-height:1.5;font-size:14.5px;max-width:68ch}
.mcalc{border-top-color:var(--mid)!important}
.mcin{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px;font-weight:600}
.mcin input{font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg);min-height:44px}
.mres{margin-top:12px;padding:14px 16px;border-radius:12px;background:var(--bg);border:1px dashed var(--line);font-size:16px;color:var(--muted)}
.mres.on{border-style:solid;border-color:var(--mid);color:var(--fg)}
.mres.late{border-color:var(--bad)}
.mex{display:grid;gap:12px;margin-top:12px}
@media(min-width:760px){.mex{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mexc{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:14px 16px;border-top:4px solid var(--good)}
.mexc.mid{border-top-color:var(--mid)}
.mexc h3{margin:0 0 8px;font-size:16px}
.mexc ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mexc li{position:relative;padding-left:24px;font-size:14.5px;line-height:1.45}
.mexc li::before{content:"✓";position:absolute;left:0;top:0;font-weight:800;color:var(--good)}
.mexc.mid li::before{content:"?";color:var(--mid)}
.msteps{margin:8px 0 0;padding-left:22px;display:grid;gap:6px;font-size:15px;line-height:1.5}
.mwarn{border:1px solid var(--line);border-left:5px solid var(--bad);border-radius:12px;padding:14px 16px;background:color-mix(in srgb,var(--bad) 8%,var(--panel));font-size:15px;line-height:1.55}
.mq{margin-top:12px;border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--panel)}
.mq p{margin:6px 0 0;color:var(--muted);line-height:1.5}
/* sub-páginas: menos hueco tras el aviso de mesas */
.mini+.tabs+.mesa-cta,.mesa-cta+.sec{margin-top:6px}
.mesa-cta+.sec .sech{padding-top:8px}
/* destacado: mapa de vuelos */
.vfeat{display:grid;margin:28px 0 8px;border-radius:18px;overflow:hidden;background:#161c23;color:#e8edf7;text-decoration:none;border:1px solid #29303b;box-shadow:0 18px 50px rgba(0,0,0,.18);transition:translate .25s,box-shadow .25s;position:relative}
.vfeat:hover{translate:0 -3px;box-shadow:0 24px 60px rgba(0,0,0,.26)}
.vfi{overflow:hidden;background:#161c23}
.vfi img{display:block;width:100%;height:auto;transform:scale(1.04);transition:transform 1.2s ease}
.vfeat:hover .vfi img{transform:scale(1.09)}
.vft{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;position:relative}
.vfk{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#ff8a7a}
.vft>b{font-family:var(--disp);font-size:clamp(26px,5vw,40px);line-height:1.02;letter-spacing:-.03em;color:#fff;text-wrap:balance}
.vft p{margin:0;color:#aab6cc;font-size:15px;line-height:1.5;max-width:60ch}
.vfn{display:flex;flex-wrap:wrap;gap:8px}
.vfn span{display:flex;flex-direction:column;padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.05);font-size:12.5px;color:#aab6cc;min-width:0;flex:1 1 90px}
.vfn span b{font-family:var(--disp);font-size:24px;color:#fff;letter-spacing:-.02em}
.vfgo{align-self:flex-start;background:#ff6b5a;color:#14181f;font-weight:800;padding:11px 18px;border-radius:999px;font-size:15px}
@media(min-width:900px){
  .vfeat:not(.vfs){grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:center}
  .vfeat:not(.vfs) .vfi{align-self:stretch}.vfeat:not(.vfs) .vfi img{height:100%;object-fit:cover;object-position:46% 40%;transform:scale(1.05)}
  .vfeat:not(.vfs):hover .vfi img{transform:scale(1.1)}
  .vfeat:not(.vfs) .vft{padding:28px}
}
.vfs{margin:18px 0 6px}
.vfs .vft{padding:14px 16px 18px;gap:8px}.vfs .vft>b{font-size:clamp(22px,4vw,30px)}.vfs .vfn{display:none}
@media(prefers-reduced-motion:reduce){.vfi img{transition:none}}
/* v20: Falcon en la barra (7 iconos en móvil) */
@media(max-width:640px){nav.tabs{grid-template-columns:repeat(7,minmax(0,1fr))}nav.tabs a,nav.tabs .more{font-size:10px;letter-spacing:-.01em;padding-inline:0}nav.tabs a svg,nav.tabs .more svg{width:21px;height:21px}}
@media(min-width:980px) and (max-width:1149px){nav.tabs a.x{display:none}nav.tabs .more{display:flex;gap:7px;align-items:center;border-radius:999px;padding:9px 14px;font-weight:600;font-size:14px}nav.tabs .more svg{width:16px;height:16px;stroke-width:2}nav.tabs .more[data-on]{background:var(--fg);color:var(--bg)}}
@media(min-width:1150px){nav.tabs a{padding-inline:12px}}
@media(max-width:374px){nav.tabs a,nav.tabs .more{font-size:9.2px;letter-spacing:-.02em}}
/* v23: portátil */
@media(min-width:900px){
  .vfs{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center}
  .vfs .vfi{align-self:stretch}
  .vfs .vfi img{height:100%;max-height:260px;object-fit:cover;object-position:46% 40%}
}
@media(min-width:1100px){.hero h1{font-size:clamp(84px,8.4vw,128px);white-space:nowrap}}
/* v24: compartir la web por WhatsApp */
.wshare{display:inline-flex;align-items:center;gap:7px;padding:8px 14px 8px 11px;border-radius:999px;background:#1f9d55;color:#fff;text-decoration:none;font-weight:700;font-size:14px;box-shadow:0 4px 14px rgba(31,157,85,.3);transition:translate .2s,box-shadow .2s;min-height:40px;box-sizing:border-box}
.wshare:hover{translate:0 -2px;box-shadow:0 8px 20px rgba(31,157,85,.38)}
.wshare svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mini .mcd{margin-left:auto}
.wshare.onhero{position:absolute;top:clamp(14px,3vw,36px);right:clamp(14px,3vw,48px);z-index:3}
.hero .eyebrow{padding-right:140px}
@media(min-width:1100px){.hlast:not([hidden]){top:96px}}
@media(max-width:480px){.wshare span{display:none}.wshare{padding:0;width:42px;height:42px;justify-content:center}.hero .eyebrow{padding-right:52px}}
.mcd .mshort{display:none}
@media(max-width:480px){.mini{flex-wrap:nowrap}.mini .mcd{font-size:11.5px;padding:6px 10px;white-space:nowrap}.mcd .mlong{display:none}.mcd .mshort{display:inline}}
.mini .brand{white-space:nowrap}@media(max-width:400px){.mcd .mshort{display:none}}
@media(min-width:1150px){nav.tabs{flex-wrap:nowrap;gap:1px}nav.tabs a{padding:9px 9px;gap:6px;font-size:13px;white-space:nowrap}nav.tabs a svg{width:15px;height:15px}}
@media(min-width:1000px){.foot{max-width:none;column-count:2;column-gap:48px}.foot p{break-inside:avoid}.credit{max-width:none}}
.rdet{margin:4px 0 12px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:var(--panel)}
.rdet summary{cursor:pointer;padding:10px 0;font-weight:700;font-size:14px}
.rdet[open] summary{border-bottom:1px solid var(--line);margin-bottom:10px}
/* guía de lectura */
.g3{margin:8px 0 0;padding-left:22px;display:grid;gap:8px;font-size:15.5px;line-height:1.5}
.gcards{display:grid;gap:14px;margin-top:14px}
@media(min-width:900px){.gcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gcard2{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:16px 18px;display:flex;flex-direction:column;gap:10px;scroll-margin-top:72px;min-width:0}
.gcard2 header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.gcard2 .gtn{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.gcard2 h3{margin:0;font-family:var(--disp);font-size:clamp(19px,2.4vw,22px);letter-spacing:-.02em;flex-basis:100%}
.gcard2 .gopen{order:3;font-weight:700;font-size:14px;color:var(--fg);text-decoration:none;margin-left:auto}
.gcard2 header .gtn{order:1}.gcard2 header h3{order:2}
.gwhat{margin:0;color:var(--muted);line-height:1.5;font-size:15px}
.gcols{display:grid;gap:10px}
@media(min-width:560px){.gcols{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gok,.gno{border-radius:12px;padding:10px 12px;border:1px solid var(--line);background:var(--bg)}
.gok{border-top:3px solid var(--good)}.gno{border-top:3px solid var(--bad)}
.gok b,.gno b{font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.gok ul,.gno ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.gok li,.gno li{position:relative;padding-left:20px;font-size:14px;line-height:1.45}
.gok li::before{content:"✓";position:absolute;left:0;color:var(--good);font-weight:800}
.gno li::before{content:"✕";position:absolute;left:0;color:var(--bad);font-weight:800}
.gglos{display:grid;gap:10px;margin:8px 0 0}
@media(min-width:760px){.gglos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gglos div{border-left:3px solid var(--line);padding:2px 0 2px 12px}
.gglos dt{font-weight:800}.gglos dd{margin:2px 0 0;color:var(--muted);font-size:14.5px;line-height:1.45}

/* bloques de encuestas compartidos (portada y predicción) */
.kcard{margin:12px 0 0;padding:12px 14px;border-radius:10px;background:var(--panel);border:1px solid var(--line)}
.kcard:empty{display:none}.kh{margin:0;font-size:16px;line-height:1.35}.kn{font-family:var(--mono);font-size:22px;font-variant-numeric:tabular-nums}
.kstrip{width:100%;max-width:700px;height:auto;display:block}.kstrip text{font:11px var(--mono);fill:var(--muted)}
.kt{font-weight:700;font-size:15px}.kt small{font-weight:400;color:var(--muted);font-size:12.5px;margin-left:6px}
.swr{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px}.sw{font-size:14px}.sw .m,.m{font-family:var(--mono);font-variant-numeric:tabular-nums}
.sw small,.etab small{font-family:var(--mono);font-size:11px;margin-left:4px;color:var(--muted)}.up{color:var(--vox)!important}.dn{color:var(--psoe)!important}
.etab{border-collapse:collapse;font-size:13px;width:100%}.etab th{font-size:11.5px;text-align:left;color:var(--muted);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
.etab td{padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.etab td small{display:block;margin:0}.etab small.big{font-weight:700;color:var(--fg)}.etab tr.avg td{font-weight:700;border-top:2px solid var(--fg)}
.dlist{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.dlist li{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.dh{display:flex;align-items:baseline;gap:8px}.dh small{color:var(--muted)}.dp{margin-left:auto;font-weight:700}
.db{height:6px;border-radius:3px;background:var(--line);margin:6px 0;overflow:hidden}.db i{display:block;height:100%;background:var(--fg);opacity:.75}.dd{font-size:12.5px;color:var(--muted);line-height:1.45}
.pcell{position:relative}.shimg{position:absolute;top:0;right:0;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);font:600 11px var(--mono);cursor:pointer}
.shimg svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.shimg:hover{color:var(--fg);border-color:var(--fg)}
.simdet>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;border:2px solid var(--fg);background:var(--panel);cursor:pointer;font-size:15px;line-height:1.35}
.simdet>summary::-webkit-details-marker{display:none}.simdet>summary b{display:block;font-size:16px}.simdet>summary small{display:block;opacity:.8;font-size:13px}.simdet>summary .go{margin-left:auto;font-weight:800;white-space:nowrap}
.simdet[open]>summary{margin-bottom:16px;border-color:var(--line)}.simdet[open]>summary .go::after{content:" ▴"}.simdet:not([open])>summary .go::after{content:" ▾"}
.hoyg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hoyg:empty{display:none}
.hoyc{padding:12px 14px;border-radius:10px;background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--c);min-width:0}
.hoyc .hn{font-weight:700;color:var(--c);font-size:14px}.hoyc .hv{display:flex;align-items:baseline;gap:10px;margin-top:4px;flex-wrap:wrap}
.hoyc .hv b{font:800 30px/1 var(--mono);font-variant-numeric:tabular-nums}.hoyc .hv span{font:700 14px var(--mono);color:var(--muted)}.hoyc small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.hoym{grid-column:1/-1;padding:10px 14px;border-radius:10px;background:var(--panel);border:1px solid var(--line);font-size:14.5px}.hoym b{font-family:var(--mono)}
@media(max-width:640px){.hoyg{grid-template-columns:repeat(2,minmax(0,1fr))}.hoyc .hv b{font-size:26px}}
.nsteps{margin:0;padding:0;list-style:none;display:grid;gap:8px}.nsteps li{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.nsteps li b{font-family:var(--mono)}.nsteps li span{color:var(--fg);line-height:1.5}@media(max-width:520px){.nsteps li{grid-template-columns:1fr;gap:2px}}
.etab .ok{color:var(--vox);font-weight:700}.etab .ko{color:var(--psoe);font-weight:700}
.etab th small{display:block;font-weight:400;margin:0}
#ntab td,#ntab th{padding:6px 5px}#ntab td:first-child{white-space:normal}#ntab td small{display:block}

.kleg{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.kc{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--fg);font:12px var(--display);cursor:pointer}
.kc i{width:10px;height:10px;border-radius:50%;flex:none}.kc b{font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.kc.on{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}.kd{cursor:pointer;transition:opacity .2s}
/* Cómo se hace la previsión (prediccion-como.js) */
.cm{padding:16px 16px 14px}
.cmh1{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.cmh1 h3{font-size:20px}.cmsub{color:var(--muted);font-size:13px}
.cmnav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:12px 0 0}
.cmnav button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 2px;border-radius:8px;font-size:11.5px;line-height:1.2;color:var(--muted);background:transparent;border:1px solid var(--line);min-width:0}
.cmnav button b{font-family:var(--mono);font-size:13px;color:var(--fg)}
.cmnav button.on{border-color:var(--fg);color:var(--fg)}.cmnav button[aria-selected="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}.cmnav button[aria-selected="true"] b{color:var(--bg)}
.cmnav button span{overflow:hidden;text-overflow:ellipsis;max-width:100%}
@media(max-width:520px){.cmnav button span{display:none}.cmnav button{padding:9px 2px}}
.cmprog{height:3px;background:var(--line);border-radius:2px;margin:10px 0 0;overflow:hidden}.cmprog i{display:block;height:100%;width:0;background:var(--fg)}
.cmstage{margin:8px 0 0;min-height:300px;border-radius:10px;background:var(--bg);border:1px solid var(--line);padding:6px;position:relative}
.cmsvg{width:100%;height:auto;display:block;max-width:560px;margin:0 auto}
.cmsvg text{font-family:var(--mono);font-size:11px;fill:var(--muted)}
.cmsvg .cml{font-family:var(--display);font-size:12px;font-weight:800}.cmsvg .cmv{font-size:11px}.cmsvg .cmbig{font-family:var(--display);font-size:14px;font-weight:800;fill:var(--fg)}
.cmd{transform-box:fill-box;transform-origin:center}
@keyframes cmdrop{from{transform:translateY(-46px);opacity:0}to{transform:none;opacity:1}}
@keyframes cmfade{from{opacity:0}to{opacity:1}}
@keyframes cmgrow{from{transform:scaleY(.02);opacity:0}to{transform:none;opacity:1}}
@keyframes cmgrowx{from{transform:scaleX(.02);opacity:0}to{transform:none;opacity:1}}
@keyframes cmmove{from{transform:none}to{transform:translate(var(--tx),var(--ty,0))}}
@keyframes cmslide{from{transform:none}to{transform:translateX(var(--tx))}}
@keyframes cmpop{from{transform:scale(0);opacity:0}to{transform:none}}
.drop{animation:cmdrop .6s cubic-bezier(.3,1.4,.5,1) both}
.fade{animation:cmfade .6s ease both}
.grow{transform-box:fill-box;transform-origin:50% 100%;animation:cmgrow .9s cubic-bezier(.2,.8,.2,1) both}
.cmsvg .grow rect{transform-box:fill-box;transform-origin:0 50%}
.mv{animation:cmmove 1.3s .5s cubic-bezier(.6,0,.2,1) both}
.slide{animation:cmslide 1.1s cubic-bezier(.6,0,.2,1) both}
.pop{animation:cmpop .25s ease-out both}
.cmcap{margin:12px 0 0;min-height:112px}.cmcap h4{margin:0 0 4px;font-size:17px;line-height:1.3}.cmcap p{margin:0;font-size:14.5px;line-height:1.55;max-width:70ch}
.cmctl{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}.cmctl button{padding:8px 14px;border-radius:999px;font-size:13.5px;white-space:nowrap}.cmctl button:disabled{opacity:.35;cursor:default}
#cmplay[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.cmfoot{margin:12px 0 0;font-size:12.5px;color:var(--muted);line-height:1.5;max-width:75ch}
.cmdh{padding:8px 8px 4px}.cmsel{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.cmsel button{padding:5px 11px;border-radius:999px;font-size:12.5px}
.cmdt{font-size:13.5px;margin:0 0 8px}.cmseats{display:flex;flex-wrap:wrap;gap:3px;margin:0 0 12px}
.cmseats i{width:15px;height:15px;border-radius:4px;background:var(--line);transition:background .25s,transform .25s}.cmseats i.on{transform:scale(1.12)}
.cmrows{display:grid;gap:5px}.cmr,.cmh{display:grid;grid-template-columns:62px minmax(0,1fr) 56px 54px 34px;gap:8px;align-items:center;font-size:12.5px;padding:2px 4px;border-radius:6px}
.cmh{color:var(--muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}
.cmr span{white-space:nowrap;font-family:var(--mono);font-variant-numeric:tabular-nums}.cmr .cmn{font-family:var(--display);font-weight:800}
.cmb{display:block;height:9px;background:var(--line);border-radius:5px;overflow:hidden}.cmb i{display:block;height:100%;border-radius:5px}
.cmr .cmp,.cmr .cmq,.cmr .cms2,.cmh span{text-align:right}
.cmr.win{background:color-mix(in srgb,var(--fg) 9%,transparent);box-shadow:inset 0 0 0 1.5px var(--fg)}
.cmr .cms2{font-weight:800}
.cmmsg{margin:10px 0 2px;font-size:13.5px;min-height:42px;line-height:1.45}
@media(max-width:520px){.cmr,.cmh{grid-template-columns:56px minmax(0,1fr) 50px 40px 28px;gap:4px;font-size:11.5px}.cmh{font-size:9.5px;letter-spacing:0}.cmstage{min-height:230px}.cmctl button{flex:1;padding:9px 6px;font-size:13px}.cmsvg text{font-size:10.5px}.cmsvg .cmv{font-size:10.5px}}
@media (prefers-reduced-motion:reduce){.drop,.fade,.grow,.mv,.slide,.pop{animation-duration:.01s!important;animation-delay:0s!important}.cmseats i{transition:none}}
.cmcv{display:block;width:100%;max-width:560px;margin:0 auto;height:auto;aspect-ratio:420/300}
.hero .hemi{color:var(--fg)}.hero .hemi .hmajt{opacity:1}
@media(min-width:641px) and (max-width:979px){nav.tabs{flex-wrap:nowrap}nav.tabs a,nav.tabs .more{padding:9px 11px;gap:5px;white-space:nowrap}nav.tabs a svg,nav.tabs .more svg{display:none}}
/* Pantallas grandes: menú lateral izquierdo, fijo, en el hueco libre */
@media(min-width:1500px){
  body{padding-top:24px}
  nav.tabs{top:24px;left:calc(50% - 540px - 196px);right:auto;margin:0;width:176px;flex-direction:column;flex-wrap:nowrap;align-items:stretch;border-radius:18px;padding:8px;gap:2px}
  nav.tabs a{padding:10px 12px;justify-content:flex-start;border-radius:12px}
  nav.tabs .more{display:none!important}
  nav.tabs a.x{display:flex}
}
/* barra de situación en el menú */
nav.tabs a.mbar{position:absolute;display:flex!important;flex-direction:row!important;align-items:stretch!important;gap:2px;height:5px!important;padding:0;min-height:0;border:0;border-radius:99px;background:none;pointer-events:auto}
nav.tabs a.mbar i{display:block;height:100%;border-radius:99px;min-width:2px}
nav.tabs a.mbar u{position:absolute;top:-3px;width:11px;height:11px;margin-left:-5.5px;border-radius:50%;background:var(--majority);border:2px solid var(--panel);box-sizing:border-box;text-decoration:none}
@media(min-width:641px){
  nav.tabs{padding-bottom:17px}
  nav.tabs a.mbar{left:22px;right:22px;bottom:6px}
}
@media(max-width:640px){
  nav.tabs{padding-top:12px}
  nav.tabs a.mbar{left:14px;right:14px;top:4px}
}
/* ===== Tu voto ===== */
.tv .tvchips,.tvchips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.tvchips button{font:inherit;font-size:14px;font-weight:600;padding:9px 14px;min-height:40px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--fg);cursor:pointer}
.tvchips button[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.tvans,.tvbox,.tvcnt{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:14px 16px;font-size:15px;line-height:1.55}
.tvans p,.tvbox p,.tvcnt>p{margin:0 0 10px;max-width:66ch}
.tvgo{display:flex;flex-wrap:wrap;gap:8px}.tvgo a{border:1px solid var(--fg);border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px;text-decoration:none;color:var(--fg);background:var(--panel)}
.tvgo a:hover{background:var(--fg);color:var(--bg)}
.tvsteps{list-style:none;margin:12px 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.tvsteps button{width:100%;display:flex;gap:8px;align-items:center;text-align:left;font:inherit;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--muted);cursor:pointer;min-height:52px}
.tvsteps .n{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--line);font-size:12px;font-weight:800}
.tvsteps b{font-size:13px;line-height:1.25}
.tvsteps li.on button{border-color:var(--fg);color:var(--fg)}.tvsteps li.on .n{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.tvsteps li.done .n{border-color:var(--good);color:var(--good)}
.tvnav{display:flex;gap:8px;margin-top:10px}
.tvnav button{font:inherit;font-weight:700;font-size:14px;padding:9px 16px;min-height:40px;border-radius:999px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);cursor:pointer}
.tvnav button:disabled{opacity:.35;cursor:default}
.tvrow{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}.tvrow>b{font-size:13px;color:var(--muted)}
.tvsl{display:grid;gap:10px;margin:12px 0}
.tvsl label{display:grid;grid-template-columns:minmax(96px,128px) 1fr 54px;gap:10px;align-items:center;font-size:14px}
.tvsl label span{display:flex;align-items:center;gap:7px;font-weight:600}.tvsl label i{width:12px;height:12px;border-radius:3px;background:var(--c);flex:none}
.tvsl em{font-style:normal;font-family:var(--mono);font-size:12.5px;text-align:right}
.tvsl input[type=range]{width:100%;accent-color:var(--c);min-width:0;height:28px}
.tvck{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin:8px 0}.tvck input{margin-top:3px;width:18px;height:18px;flex:none}
.tvh3{font-size:16px;margin:16px 0 8px}
.tvsq{display:flex;flex-wrap:wrap;gap:5px;min-height:30px}.tvsq span{width:24px;height:24px;border-radius:5px;animation:tvpop .25s ease-out}
@keyframes tvpop{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.tvsq span{animation:none}}
.tvleg{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:14px}.tvleg i{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--c);margin-right:6px}
.tvtw{overflow-x:auto;margin-top:12px}.tvdh{border-collapse:collapse;font-family:var(--mono);font-size:12.5px;width:100%;min-width:320px}
.tvdh th,.tvdh td{border:1px solid var(--line);padding:5px 7px;text-align:center}.tvdh th[style]{text-align:left;font-family:inherit;border-left:4px solid var(--c);white-space:nowrap}
.tvdh td.w{background:var(--fg);color:var(--bg);font-weight:700}
.tvmsg{margin:12px 0 4px;font-size:15px;line-height:1.5;max-width:68ch}.tvlearn{margin:4px 0 0;font-size:14px;color:var(--muted);line-height:1.5;max-width:68ch}
.tvyn{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tvyn li{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);border-left-width:5px;border-radius:10px;padding:10px 12px;background:var(--panel);font-size:14px}
.tvyn li.y{border-left-color:var(--good)}.tvyn li.n{border-left-color:var(--bad)}.tvyn li.y b{color:var(--good)}.tvyn li.n b{color:var(--bad)}
.tvbar{height:6px;border-radius:99px;background:var(--line);overflow:hidden;margin:12px 0}.tvbar i{display:block;height:100%;background:var(--fg);transition:width .3s}
.tvbox.big small{font-family:var(--mono);font-size:12px;color:var(--muted)}.tvbox.big h3{margin:4px 0 6px;font-size:20px}
.tvchk{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tvchk label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);font-size:14.5px;cursor:pointer}.tvchk input{width:18px;height:18px;margin-top:2px;flex:none}
.tvchk input:checked+span{text-decoration:line-through;color:var(--muted)}.tvok{font-weight:700;color:var(--good);padding:6px 2px}
.tvparts{display:grid;gap:8px}
.tvpt{border:1px solid var(--line);border-left:5px solid var(--c);border-radius:10px;background:var(--panel)}
.tvpn{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:baseline;padding:11px 14px;font-size:14px;cursor:pointer;list-style:none}
.tvpn::-webkit-details-marker{display:none}.tvpn i{display:none}.tvpn b{font-size:15px;grid-row:1}
.tvpn>span{grid-column:1/-1;color:var(--muted);line-height:1.45;font-weight:400}.tvpn .na{font-style:italic}
details.tvpt>summary::after{content:"Ver completo ▾";grid-column:1/-1;font-size:12px;font-weight:700;color:var(--fg)}details.tvpt[open]>summary::after{content:"Cerrar ▴"}
.tvpb{padding:0 14px 14px;font-size:14.5px;line-height:1.55}.tvpb .o{margin-top:8px;font-size:12.5px;color:var(--muted)}.tvpb .ms{font-size:12.5px;margin-top:4px}.tvpb .ms a{margin-right:10px}
.tvfaq{display:grid;gap:8px}.tvfaq details{border:1px solid var(--line);border-radius:10px;background:var(--bg)}.tvfaq summary{cursor:pointer;padding:13px 14px;font-weight:700;font-size:15px;min-height:44px}
.tvfaq p{margin:0;padding:0 14px 14px;font-size:14.5px;line-height:1.55;max-width:66ch}
@media(max-width:640px){
  .tvsteps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tvyn{grid-template-columns:1fr}
  .tvsl label{grid-template-columns:1fr 54px;grid-template-areas:"a c" "b b"}.tvsl label span{grid-area:a}.tvsl label em{grid-area:c}.tvsl label input{grid-area:b}
}
/* titulares de portada: 5, a todo el alto del cuadro en escritorio */
@media(min-width:980px){.hlast:not([hidden]){bottom:48px}.hlast ol{flex:1;grid-auto-rows:1fr;min-height:0}.hlast .nitem{display:flex;flex-direction:column;justify-content:center}}
@media(min-width:1100px){.hlast:not([hidden]){bottom:48px}}
@media(max-width:979px){.hlast li:nth-child(n+4){display:none}}
/* Tu voto: día de voto compacto y historial de promesas */
.tvdia{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.tvdia li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.45}
.tvdia .n{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--fg);font-size:11.5px;font-weight:800;margin-top:1px}
.tvdia b{font-weight:800}.tvdia span:not(.n){color:var(--muted)}
.tvchk{margin-top:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.tvchk label{padding:8px 10px;font-size:14px}.tvok{grid-column:1/-1}
@media(max-width:640px){.tvchk{grid-template-columns:1fr}}
.tvsum{margin:8px 0 12px;overflow-x:auto}
.tvst{border-collapse:collapse;width:100%;font-size:13.5px;min-width:360px}
.tvst th,.tvst td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:center}
.tvst thead th{font-size:11.5px;color:var(--muted);font-weight:700}
.tvst tbody th{text-align:left;border-left:4px solid var(--c);white-space:nowrap}
.tvst td.nog{text-align:left;color:var(--muted);font-size:12.5px}
.tvdet>summary{list-style:none}.tvdet>summary::-webkit-details-marker{display:none}
.tvdet>summary::after{content:"Ver completo ▾";grid-column:1/-1;font-size:12px;font-weight:700;color:var(--fg)}.tvdet[open]>summary::after{content:"Cerrar ▴"}
.tvpt{border-left:5px solid var(--c)}
.tvhist{border-top:1px dashed var(--line)}.tvhist>summary{cursor:pointer;padding:9px 14px;font-size:13px;font-weight:700;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.tvhist>summary em{font-style:normal;font-family:var(--mono);font-weight:600;color:var(--muted)}
.tvhist ul{list-style:none;margin:0;padding:0 14px 12px;display:grid;gap:10px}
.tvhist li{display:grid;grid-template-columns:24px 1fr;gap:8px;font-size:13.5px;line-height:1.5}
.tvhist .st{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:12px;color:#fff;background:var(--muted)}
.tvhist li.g .st{background:var(--good)}.tvhist li.m .st{background:var(--mid)}.tvhist li.b .st{background:var(--bad)}
.tvhist .ul{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--fg);color:var(--bg);border-radius:99px;padding:1px 7px;margin-left:4px;white-space:nowrap}
.tvhist .pp,.tvhist .hh{margin-top:2px;color:var(--muted)}.tvhist .hh{color:var(--fg)}.tvhist .ms{font-size:12px;margin-top:3px}.tvhist .ms a{margin-right:10px}
.tvf{align-items:center}.tvf>b{font-size:13px;color:var(--muted);margin-right:4px}
.tvf button.pc i{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--c);margin-right:7px}
.tvf button.pc[aria-pressed="true"]{background:var(--c);border-color:var(--c);color:#fff}.tvf button.pc[aria-pressed="true"] i{background:#fff}
.tvleg2{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:12.5px;margin:0 0 8px}
.tvleg2 i{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;font-style:normal;font-weight:800;font-size:10.5px;color:#fff;margin-right:5px}
.tvleg2 .g,.tvbr .g{background:var(--good)}.tvleg2 .m,.tvbr .m{background:var(--mid)}.tvleg2 .b,.tvbr .b{background:var(--bad)}
.tvleg2 small{color:var(--muted);margin-left:auto}
.tvsr{display:grid;grid-template-columns:minmax(98px,150px) 1fr;gap:10px;align-items:center;width:100%;padding:6px 8px 6px 10px;margin:0 0 4px;border:1px solid var(--line);border-left:5px solid var(--c);border-radius:10px;background:var(--panel);color:var(--fg);font:inherit;font-size:13.5px;text-align:left;cursor:pointer;transition:opacity .2s,box-shadow .2s}
.tvsr[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--c)}.tvsr.off{opacity:.45}.tvsr:hover{opacity:1}
.tvbr{display:flex;gap:2px;height:26px;border-radius:7px;overflow:hidden;min-width:0}
.tvbr i{display:grid;place-items:center;min-width:34px;color:#fff;font-style:normal;font-weight:800;font-size:12px;transform-origin:left;animation:tvgrow .7s cubic-bezier(.2,.8,.2,1) both}
.tvbr.nog{display:flex;align-items:center;height:auto;min-height:26px;color:var(--muted);font-size:12px;line-height:1.3;background:none}
@keyframes tvgrow{from{transform:scaleX(.05);opacity:0}to{transform:none;opacity:1}}
.cardin{animation:tvpop .35s ease-out both}
@media(prefers-reduced-motion:reduce){.tvbr i,.cardin{animation:none}}
@media(max-width:640px){.tvsr{grid-template-columns:1fr;gap:4px}}
.tvf{align-items:center}.tvf>b{font-size:13px;color:var(--muted);margin-right:2px}
.tvf button i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--c);margin-right:6px}
.tvbal{display:flex;gap:2px;height:26px;min-width:160px}
.tvbal span{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff;border-radius:6px;min-width:36px;padding:0 6px;white-space:nowrap}
.tvbal .g{background:var(--good)}.tvbal .m{background:var(--mid)}.tvbal .b{background:var(--bad)}
.tvst .lg{display:block;font-weight:400;font-size:11px;margin-top:2px}.tvst .lg b{margin-left:6px}
.tvst .lg b.g{color:var(--good)}.tvst .lg b.m{color:var(--mid)}.tvst .lg b.b{color:var(--bad)}
.tvst td{text-align:left}.tvst thead th:nth-child(2){text-align:left}
.tvf button[aria-pressed="true"]{background:var(--c,var(--fg));border-color:var(--c,var(--fg));color:#fff}.tvf button[aria-pressed="true"] i{background:#fff}
.tvf button:first-of-type[aria-pressed="true"]{color:var(--bg)}
.tvst{min-width:0;table-layout:auto}.tvst td,.tvst th{white-space:normal}.tvst tbody th{white-space:nowrap;font-size:13px}
.tvbal{min-width:0}
@media(max-width:640px){.tvst tbody th{font-size:12px;padding-inline:6px}.tvst td .nog{font-size:12px;line-height:1.3;display:block}}
/* Noche electoral: hemiciclo vacío + tarjetas de todos los partidos */
.nhm{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;align-items:center;margin-top:8px}
.nhemi .hemi{color:var(--fg)}.nhemi .hemi circle{transition:fill .8s ease}
.ncards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ncards .hs{padding:8px 10px;border-radius:10px}.ncards .hs span{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);display:block}
.ncards .hs b{display:block;font-family:var(--mono);font-size:26px;line-height:1.15;font-variant-numeric:tabular-nums}
.ncards .hs small{display:block;font-size:11.5px;color:var(--muted)}
.ncards .hs.emp{background:var(--panel)}.ncards .hs.emp b{color:var(--muted)}
@media(max-width:760px){.nhm{grid-template-columns:1fr}.ncards{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Tu voto: bloque de propuestas reducido */
.tvsel{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.tvsel label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:700;color:var(--muted);flex:1 1 130px;min-width:0}
.tvsel select{font:inherit;font-size:15px;font-weight:600;color:var(--fg);padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);min-height:42px;width:100%}
.tvparts{gap:6px}
.tvdet>summary.tvpn{padding:8px 12px;gap:0 10px;grid-template-columns:auto 1fr}
.tvdet>summary.tvpn::after{content:"▾";grid-column:auto;grid-row:1;grid-column:3;font-size:12px}.tvdet[open]>summary.tvpn::after{content:"▴"}
.tvdet>summary.tvpn{grid-template-columns:76px 1fr auto;align-items:center}
.tvdet>summary.tvpn>span{grid-column:2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px}
.tvdet>summary.tvpn>b{font-size:13.5px}
.tvlink{margin:10px 0 0;font-size:13px;color:var(--muted);line-height:1.5}.tvlink a{white-space:nowrap}
/* Guía «ponla en tu móvil» */
.cm4 .cmnav{grid-template-columns:repeat(4,minmax(0,1fr))}
@keyframes cmfout{to{opacity:0;visibility:hidden}}
.fout{animation:cmfout .5s ease both}
@keyframes cmtap{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.7);opacity:0}}
.tapring{transform-box:fill-box;transform-origin:center;animation:cmtap 1.3s ease-out infinite}
.cmsvg .tapdot{transform-box:fill-box;transform-origin:center}
@media(prefers-reduced-motion:reduce){.tapring{animation:none;opacity:.8}}
.cm4 .cmsel button[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.cm4 .cmsel button{font-size:14px;padding:8px 18px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--fg);font-weight:700}

.addhome{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:9px 14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);color:var(--fg);text-decoration:none;font-size:13.5px;line-height:1.25}
.addhome svg{flex:none;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.addhome span{flex:1;min-width:0}
.addhome i{flex:none;font-style:normal;font-weight:700;font-size:12.5px;padding:5px 11px;border-radius:99px;background:var(--fg);color:var(--bg)}
.addhome:hover{border-color:var(--fg)}

.rfbtn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin:-4px 8px -4px 0;padding:0;vertical-align:middle;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--fg);cursor:pointer}
.rfbtn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rfbtn.spin svg{animation:rfspin .8s linear infinite}
@keyframes rfspin{to{transform:rotate(360deg)}}

.kstrip .kd{transition:opacity .2s;animation:ksway 6s ease-in-out infinite}
@keyframes ksway{0%,100%{transform:translate(0,0)}25%{transform:translate(var(--fx,2px),calc(var(--fy,2px)*-1))}50%{transform:translate(calc(var(--fx,2px)*.4),var(--fy,2px))}75%{transform:translate(calc(var(--fx,2px)*-1),calc(var(--fy,2px)*-.3))}}
@media (prefers-reduced-motion:reduce){.kstrip .kd{animation:none}}

/* Entrevistas y debates */
.wild{margin:0;padding:16px;border-radius:14px;background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--fg)}
.wild .wh{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wbadge{font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:99px;background:var(--fg);color:var(--bg)}
.wcd{font:600 13px var(--mono);color:var(--muted)}
.wild h3{margin:8px 0 8px;font-size:20px;line-height:1.25}
.wfmt{margin:0 0 4px;padding-left:18px;line-height:1.5}.wfmt li{margin:3px 0}
.wcards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.ecard{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.ecard h4{margin:0;font-size:15px;line-height:1.25}.ecard .ep{margin:2px 0 8px;font:12px var(--mono);color:var(--muted)}
.ecard dl{margin:0;display:grid;gap:6px}.ecard dt{font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.ecard dd{margin:0;font-size:13.5px;line-height:1.35}
@media(max-width:900px){.wcards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.wcards{grid-template-columns:1fr}.ecard dl{grid-template-columns:110px 1fr;gap:4px 10px}.ecard dt{align-self:center}}
.etent td{vertical-align:top;font-size:13.5px;line-height:1.4}.etent td:last-child a{display:block}

.elist{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.erow{display:grid;grid-template-columns:86px 1fr;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.erow .ef{font:600 13px var(--mono);padding-top:2px}.erow b{font-size:15px;line-height:1.3}
.erow dl{margin:6px 0 0;display:grid;grid-template-columns:64px 1fr;gap:4px 10px}.erow dt{font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-top:2px}.erow dd{margin:0;font-size:13.5px;line-height:1.4}
@media(max-width:520px){.erow{grid-template-columns:1fr;gap:4px}}

/* Sin marco doble: dentro de un bloque .exec, las tarjetas internas van sin recuadro y se separan con una línea fina */
.exec .kcard{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:16px 0 0;margin:18px 0 0}
.exec .kcard:first-child,.exec>.kcard:first-of-type{border-top:0;padding-top:0;margin-top:0}
.exec .kcard.cm{padding:16px 0 0}

/* ===== Comparar dos partidos ===== */
#cpick .rowf{margin:0 0 10px}#cpick button[disabled]{opacity:.35;cursor:not-allowed}
.rowf button[style*="--c"][aria-pressed="true"]{background:var(--c);border-color:var(--c);color:#fff}
.cbox{margin-top:14px}.cbh{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;font-weight:800;font-size:20px;font-family:'Bricolage Grotesque','Public Sans',sans-serif}
.cbh .cvs{font-size:13px;font-weight:500;color:var(--muted);font-family:'Public Sans',sans-serif}
.cb{display:flex;height:38px;border-radius:10px;overflow:hidden;margin-top:12px;gap:2px;background:var(--bg)}
.cb span{display:grid;place-items:center;min-width:26px;color:#fff;font-size:14px;transition:flex .45s ease}.cb b{font-family:var(--mono)}
.cleg{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:13px;color:var(--muted)}.cleg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.cleg b{color:var(--fg);font-family:var(--mono)}
.cnote{font-size:13px;color:var(--muted);margin:10px 0 0}
.cg{margin-top:18px}.cg h3{display:flex;align-items:center;gap:8px;font-size:15px;margin:0 0 6px}.cg h3 i{width:12px;height:12px;border-radius:4px}.cg h3 span{margin-left:auto;font-family:var(--mono);color:var(--muted);font-weight:600}
.cr{border-top:1px solid var(--line)}.crb{display:grid;grid-template-columns:1fr 34px 34px;gap:10px;align-items:center;width:100%;padding:9px 2px;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.crb .cm{font-size:14.5px;line-height:1.35}.crb .cm small{display:block;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.crb .pv{width:30px;height:30px}.cr.on .crb{background:var(--panel)}
.cd{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:6px 2px 14px;font-size:13.5px;line-height:1.5}.cd>div{border-left:3px solid var(--c);padding-left:10px;min-width:0}.cd b{display:block;margin-bottom:3px;color:var(--c)}
.cd .o,.cd .ms{color:var(--muted);font-size:12.5px;margin-top:4px}.cd .ms a{margin-right:8px}
@media (max-width:640px){.cd{grid-template-columns:1fr}}
.cmap{border-collapse:collapse;width:100%;min-width:640px;font-size:13px}.cmap th{font-size:11.5px;padding:6px 4px;text-align:center;color:var(--muted);border-bottom:2px solid var(--c)}.cmap td{padding:5px 4px;border-top:1px solid var(--line);text-align:center}.cmap td:first-child{text-align:left;min-width:220px}
.cmap .th td{background:var(--panel);font-weight:700;text-align:left;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.cmap .hl{background:color-mix(in srgb,var(--fg) 7%,transparent)}.cmap th.hl{color:var(--fg)}
.pv.s{width:22px;height:22px;font-size:12px}
.tl{list-style:none;margin:10px 0 0;padding:0 0 0 14px;border-left:2px solid var(--line)}.tl li{position:relative;padding:0 0 16px 12px}.tl li::before{content:"";position:absolute;left:-21px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--fg)}
.tl time{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--muted)}.tl p{margin:2px 0 0;font-size:14px;line-height:1.5}.tl p a{white-space:nowrap}
.cdt{padding:0 2px 6px;display:grid;gap:6px}.cl{display:grid;grid-template-columns:86px 1fr;gap:8px;font-size:13.5px;line-height:1.45;border-left:3px solid var(--c);padding-left:8px}.cl b{color:var(--c);font-size:12.5px}.cl.none span{color:var(--muted);font-style:italic}
.cdif{font-size:13.5px;line-height:1.45;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:7px 10px}.cdif b{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-right:6px}
.csrc{background:none;border:0;color:var(--muted);font:inherit;font-size:12.5px;text-decoration:underline;cursor:pointer;padding:2px 2px 10px}
@media (max-width:640px){.cl{grid-template-columns:1fr;gap:1px}}
.cs{border-left:3px solid var(--c);padding-left:8px;display:grid;gap:4px}.cs>small{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.cs .cl{border:0;padding:0;grid-template-columns:70px 1fr}
.cd>div{font-size:13.5px}.cd>div>b{display:block}
#cpick .pre button{font-size:12.5px}

.cside{margin-bottom:12px}.cside .rowf{margin:0 0 6px}.clock{margin:0 0 4px;font-size:12.5px;color:var(--muted)}#cpick .rowf[id$=p] button,#cpick .pre button{font-size:12.5px}

.gh{display:grid;gap:10px;padding:0 2px 4px;font-size:10px;font-weight:700;text-align:center;line-height:1.1}

.cdf{display:inline-block;margin:3px 0 0;padding:1px 7px;border-radius:999px;background:var(--midbg);color:var(--mid);font-style:normal;font-size:11px;font-weight:700}

.crb .pv{flex:none}.gh span{overflow:hidden;font-size:9.5px}
@media (max-width:640px){.crb[style*="27px"] .pv{width:26px;height:26px;font-size:12px}}
#cpick .rowf.pre{flex-wrap:wrap;overflow:visible;white-space:normal;gap:8px}#cpick .rowf.pre>b{flex:0 0 100%}#cpick .rowf.pre button{text-align:left;white-space:normal;line-height:1.3}
#cpick .rowf.pre button{flex:0 1 auto;max-width:100%;min-width:0;overflow-wrap:anywhere}

button.cgo{border:0;font:inherit;cursor:pointer;color:#fff;padding:0}button.cgo:hover{filter:brightness(1.08)}button.cgo:focus-visible{outline:2px solid var(--fg);outline-offset:2px}
button.cl2{background:none;color:var(--muted);display:inline-flex;align-items:center;gap:0;padding:2px 0;font-size:13px;text-decoration:underline;text-underline-offset:3px}button.cl2:hover{filter:none;color:var(--fg)}
.cg{scroll-margin-top:70px}.cg.flash h3{animation:cgflash 1.2s ease}@keyframes cgflash{0%,60%{background:var(--midbg)}100%{background:transparent}}
@media (prefers-reduced-motion:reduce){.cg.flash h3{animation:none}}

/* Portada: Hoy en diez segundos */
.hoyh{margin:16px 0 4px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--bg);text-align:left}
.hoyh .hk{margin:0 0 6px;font:700 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hoyh .ht{margin:0 0 12px;font-size:17px;line-height:1.4;font-weight:500}.hoyh .ht b{font-weight:800}
.hoyh .hrs{position:relative;display:grid;gap:10px;margin:0 0 12px}
.hoyh .hr{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center}
.hoyh .hn{grid-column:1/3;font-size:13px;font-weight:700;color:var(--muted)}
.hoyh .hb{position:relative;height:16px;border-radius:8px;background:var(--line);overflow:hidden}.hoyh .hb i{position:absolute;left:0;top:0;bottom:0;border-radius:8px;opacity:.9}
.hoyh .hb u{position:absolute;top:-2px;bottom:-2px;width:0;border-left:2px dashed var(--fg)}
.hoyh .hv{font:800 22px/1 var(--mono);font-variant-numeric:tabular-nums;min-width:2.4em;text-align:right}
.hoyh .hax{position:relative;height:16px;margin:-4px 14px 0 0}.hoyh .hax span{position:absolute;top:0;transform:translateX(-50%);font:700 11px/1 var(--mono);color:var(--muted);white-space:nowrap}
.hoyh .hc,.hoyh .hnw{margin:0 0 8px;font-size:14px;line-height:1.4}.hoyh .hnw{color:var(--muted)}
.hoyh .hl{font-size:14px;font-weight:700}

.tuprov .tpf{display:flex;gap:8px;flex-wrap:wrap}.tuprov input,.tuprov select{flex:1 1 150px;min-width:0;padding:10px 12px;font:inherit;font-size:16px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg)}
.tuprov .tph{margin:12px 0 6px;font-size:16px}.tuprov .pchip small{font-size:11px;font-weight:700;margin-left:2px}.tuprov .pchip small.up{color:var(--fg)}.tuprov .pchip small.dn{color:var(--muted)}

.perr{display:grid;gap:10px;margin:8px 0}.perr .pe{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.perr .pe.hoy{border-color:var(--fg)}
.perr .pet{margin:0 0 6px;font-weight:700;font-size:14px}.perr .pes{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--muted)}.perr .pes b{color:var(--fg);font-family:var(--mono)}

/* Menú móvil: dock flotante. Solo el apartado activo muestra su nombre; el resto, icono. La franja de escaños queda en el borde superior. */
@media(max-width:640px){
  body{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}
  nav.tabs{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;align-items:center;gap:2px;padding:15px 6px 6px;border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--panel) 90%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(10,14,22,.18),0 2px 6px rgba(10,14,22,.08)}
  nav.tabs a:not(.mbar),nav.tabs .more{flex:1 1 0;min-width:0;min-height:44px;flex-direction:row;justify-content:center;gap:0;padding:0;border-radius:16px;transition:flex-grow .25s ease,background .2s ease,color .2s ease}
  nav.tabs a:not(.mbar) span,nav.tabs .more span{display:none;font-size:13px;font-weight:700;letter-spacing:0;white-space:nowrap}
  nav.tabs a:not(.mbar) svg,nav.tabs .more svg{width:23px;height:23px;flex:none}
  nav.tabs a[aria-current="page"],nav.tabs .more[data-on]:not(:hover){background:none}
  nav.tabs a[aria-current="page"]{flex:0 0 auto;gap:7px;padding:0 14px;background:var(--fg);color:var(--bg)}
  nav.tabs a[aria-current="page"] span{display:inline}
  nav.tabs .more[data-on]{color:var(--muted);background:none}
  nav.tabs a.mbar{left:18px;right:18px;top:5px}
}
@media(max-width:640px){
  nav.tabs{background:color-mix(in srgb,var(--panel) 68%,transparent);-webkit-backdrop-filter:blur(22px) saturate(1.5);backdrop-filter:blur(22px) saturate(1.5)}
  nav.tabs a:not(.mbar):not([aria-current="page"]),nav.tabs .more{color:var(--fg)}
  nav.tabs a:not(.mbar) svg,nav.tabs .more svg{stroke-width:2.5;filter:drop-shadow(0 0 .6px var(--panel)) drop-shadow(0 0 3px color-mix(in srgb,var(--panel) 85%,transparent))}
}
@media(max-width:640px){nav.tabs a[aria-current="page"] svg{filter:none}}
/* Dock: transparencia sin color-mix (iOS antiguos lo ignoraban y dejaban el fondo sólido) */
:root{--dock:rgba(255,255,255,.55)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--dock:rgba(23,28,35,.55)}}
:root[data-theme="dark"]{--dock:rgba(23,28,35,.55)}
@media(max-width:640px){nav.tabs{background:var(--dock);-webkit-backdrop-filter:blur(20px) saturate(1.6);backdrop-filter:blur(20px) saturate(1.6)}
  nav.tabs a:not(.mbar) svg,nav.tabs .more svg{filter:drop-shadow(0 0 .6px var(--panel)) drop-shadow(0 0 3px var(--dock))}nav.tabs a[aria-current="page"] svg{filter:none}}
/* Dock: más cristal */
:root{--dock:rgba(255,255,255,.3)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--dock:rgba(23,28,35,.3)}}
:root[data-theme="dark"]{--dock:rgba(23,28,35,.3)}
@media(max-width:640px){nav.tabs{-webkit-backdrop-filter:blur(26px) saturate(1.8);backdrop-filter:blur(26px) saturate(1.8);border-color:color-mix(in srgb,var(--fg) 14%,transparent);border-color:rgba(128,136,150,.35)}
  nav.tabs a:not(.mbar) svg,nav.tabs .more svg{stroke-width:2.6;filter:drop-shadow(0 0 1px var(--panel)) drop-shadow(0 0 4px var(--panel))}nav.tabs a[aria-current="page"] svg{filter:none}}
/* Dock: iconos de trazo normal */
@media(max-width:640px){nav.tabs a:not(.mbar) svg,nav.tabs .more svg{stroke-width:1.9;filter:drop-shadow(0 0 2px var(--panel))}nav.tabs a[aria-current="page"] svg{filter:none}}
/* dock v7: Inicio solo icono, píldora activa más pequeña, Promesas en el dock */
@media(min-width:980px){nav.tabs a.pm{display:none!important}}
@media(max-width:640px){
  nav.tabs a[aria-current="page"]{padding:0 11px;gap:6px;min-height:40px}
  nav.tabs a[aria-current="page"] span{font-size:12px}
  nav.tabs a[href="index.html"][aria-current="page"] span{display:none}
  nav.tabs a[href="index.html"][aria-current="page"]{padding:0 12px}
  nav.tabs a:not(.mbar) svg,nav.tabs .more svg{width:22px;height:22px}
}
/* aviso de nueva dirección */
.newdom{display:flex;width:fit-content;max-width:100%;align-items:center;gap:7px;margin:10px 0 0;padding:3px 10px;border:1px solid var(--line);border-radius:99px;font-size:11.5px;font-weight:500;line-height:1.3;color:var(--muted);background:var(--panel);animation:ndg 1.6s ease-in-out infinite}
.newdom b{font-weight:700;color:var(--fg)}
.newdom i{flex:none;width:7px;height:7px;border-radius:50%;background:#e08a00}
@keyframes ndg{0%,100%{box-shadow:0 0 0 0 rgba(224,138,0,.55);border-color:var(--line)}50%{box-shadow:0 0 0 5px rgba(224,138,0,0);border-color:#e08a00}}
@media(prefers-reduced-motion:reduce){.newdom{animation:none;border-color:#e08a00}}

.hero + .addhome{margin-top:12px}
/* banner del icono: arriba, más discreto */
.addhome{gap:9px;margin:0 0 8px;padding:5px 6px 5px 12px;border-radius:99px;font-size:13px;line-height:1.2}
.addhome svg{width:18px;height:18px}
.addhome i{font-size:12px;padding:4px 10px}
.hero + .addhome{margin-top:0}
.addhome + .hero{margin-top:-12px}
/* Predicción en el menú: el apartado más consultado, con un toque que llama la atención */
@media(max-width:640px){
  nav.tabs a[href="prediccion.html"]:not([aria-current="page"]){position:relative;background:linear-gradient(135deg,rgba(37,99,235,.2),rgba(220,38,38,.2) 55%,rgba(22,163,74,.2))}
  nav.tabs a[href="prediccion.html"]:not([aria-current="page"])::after{content:"";position:absolute;top:5px;right:calc(50% - 20px);width:8px;height:8px;border-radius:50%;background:#e08a00;box-shadow:0 0 0 0 rgba(224,138,0,.7);animation:pdot 1.8s ease-out infinite}
}
@keyframes pdot{0%{box-shadow:0 0 0 0 rgba(224,138,0,.65)}80%,100%{box-shadow:0 0 0 7px rgba(224,138,0,0)}}
@media(prefers-reduced-motion:reduce){nav.tabs a[href="prediccion.html"]::after{animation:none!important}}
@media(min-width:980px){nav.tabs a[href="prediccion.html"]:not([aria-current="page"]){background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(220,38,38,.12) 55%,rgba(22,163,74,.12))}}
.wacta{border-color:#1fa855}
.wacta .go{color:#1a8f48;font-weight:700}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .wacta .go{color:#4cd38a}}
:root[data-theme="dark"] .wacta .go{color:#4cd38a}
.hchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hchips .newdom{margin:0}
.wapill{display:inline-flex;align-items:center;gap:6px;padding:3px 11px 3px 9px;border:1px solid #1fa855;border-radius:99px;font-size:11.5px;font-weight:500;line-height:1.3;color:var(--muted);background:var(--panel);text-decoration:none}
.wapill b{font-weight:700;color:var(--fg)}
.wapill svg{width:14px;height:14px;fill:none;stroke:#1fa855;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.wapill:hover{background:#e7f7ee}
.newdom{text-decoration:none;cursor:pointer}.newdom:hover b{text-decoration:underline}
