@font-face{font-family:"Bricolage Grotesque";src:url("../fonts/bricolage-grotesque-bold.woff") format("woff");font-weight:600 800;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("../fonts/instrument-sans-regular.woff") format("woff");font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("../fonts/instrument-sans-bold.woff") format("woff");font-weight:600 700;font-style:normal;font-display:swap}
:root{--night:#0a0f0d;--night2:#121a17;--lime:#c6f432;--bg:#f5f2ea;--panel:#fffdf8;--ink:#101512;--mut:#5d665f;--line:#dcd8cb;--g:#ece8dc;--up:#0f9d58;--dn:#d92d20;--tag:#3d6a00;--c1:#0f7b4a;--c2:#a39a78;--link:#1d4ed8;--shadow:0 24px 50px -30px rgba(16,21,18,.45)}
:root[data-theme=dark]{--bg:#0b100e;--panel:#141b18;--ink:#eef2ea;--mut:#9ba69d;--line:#26302b;--g:#1a221f;--up:#3ddc84;--dn:#ff6b61;--tag:#c6f432;--c1:#c6f432;--c2:#8aa0ff;--link:#8aa8ff;--shadow:0 24px 50px -30px rgba(0,0,0,.8)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:130px;color-scheme:light}
html[data-theme=dark]{color-scheme:dark}
body{padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg);color:var(--ink);font:400 16px/1.6 "Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select{font-family:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--lime);outline-offset:2px;border-radius:6px;box-shadow:0 0 0 5px rgba(16,21,18,.6)}
:root[data-theme=dark] :focus-visible{box-shadow:none}
.wrap{width:min(1240px,100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--lime);color:var(--night);padding:8px 14px;border-radius:8px;z-index:200;font-weight:700}.skip:focus{left:8px}
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--lime);z-index:120;box-shadow:0 0 8px var(--lime)}
h1,h2,h3{font-family:"Bricolage Grotesque",Georgia,serif;letter-spacing:-.02em}

/* barra superior */
.topbar{background:var(--night);color:#c4cdc6;font-size:13px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:40px;gap:12px;flex-wrap:wrap}
.tb-l{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.tb-r{display:flex;gap:10px;align-items:center}
.mstat:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:#888}
.mstat.on:before{background:#3ddc84;box-shadow:0 0 0 0 rgba(61,220,132,.6);animation:pulse 1.8s infinite}.mstat.off:before{background:#ff6b61}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(61,220,132,0)}100%{box-shadow:0 0 0 0 rgba(61,220,132,0)}}
.tbtn{background:none;border:1px solid transparent;color:inherit;border-radius:999px;min-width:34px;height:30px;padding:0 8px;font-size:15px;transition:background .15s}
.tbtn:hover{background:rgba(255,255,255,.12)}.tbtn.txt{font-size:13px}
.pill{background:var(--lime);color:var(--night)!important;font-weight:700;padding:4px 16px;border-radius:999px;transition:transform .15s}.pill:hover{transform:translateY(-1px)}

/* ticker */
.ticker{background:var(--night2);color:#fff;overflow:hidden;white-space:nowrap;border-bottom:1px solid #26332d;font-size:13px;font-weight:500}
.track{display:inline-flex;gap:44px;padding:9px 0;animation:mq 60s linear infinite}
.ticker:hover .track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.track em{font-style:normal;margin-left:6px;color:#aab6ae}.track b{margin-left:8px}
.u{color:var(--up)}.d{color:var(--dn)}.track .u{color:#3ddc84}.track .d{color:#ff6b61}

/* cabecera */
.mast{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:60;transition:background .3s}
.mrow{display:flex;justify-content:space-between;align-items:center;height:76px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font:700 30px "Bricolage Grotesque",Georgia,serif;letter-spacing:-.03em;background:none;border:0}
.brand img{width:34px}.brand i{font-weight:600;font-style:normal;margin-left:.08em;background:var(--lime);color:var(--night);padding:0 .22em;border-radius:8px}
.search{position:relative;display:flex;border:1.5px solid var(--line);border-radius:999px;background:var(--panel);max-width:340px;flex:1}
.search input{flex:1;min-width:0;border:0;background:none;padding:0 16px;height:42px;font:inherit;font-size:14px;outline:none}
.search button{border:0;background:var(--ink);color:var(--bg);width:46px;font-size:20px;border-radius:0 999px 999px 0}
.sres{position:absolute;top:50px;left:0;right:0;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden;z-index:80}
.sres button{display:block;width:100%;text-align:left;background:none;border:0;padding:10px 16px;font-size:14px;line-height:1.3;border-bottom:1px solid var(--line)}
.sres button:hover,.sres button:focus-visible{background:var(--g)}.sres small{display:block;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--tag);letter-spacing:.05em}.sres p{padding:12px 16px;color:var(--mut);font-size:14px}
.cats{border-top:1px solid var(--line)}
.cats .wrap{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none}
.cats button{flex:none;border:1.5px solid transparent;background:none;padding:7px 16px;border-radius:999px;font-weight:600;font-size:14px;color:var(--mut)}
.cats button:hover{color:var(--ink);background:var(--g)}
.cats button[aria-pressed=true]{background:var(--ink);color:var(--bg)}
.brk{background:var(--lime);color:var(--night);font-size:14px;font-weight:600}
.brk .wrap{display:flex;align-items:center;gap:14px;min-height:40px}
.live{display:flex;align-items:center;gap:8px;text-transform:uppercase;font-size:12px;letter-spacing:.06em;white-space:nowrap}.live i{width:9px;height:9px;border-radius:50%;background:#d92d20;animation:blink 1.2s infinite}
@keyframes blink{50%{opacity:.25}}
#brkt{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#brkt.in{animation:slide .5s}
@keyframes slide{from{opacity:0;transform:translateY(8px)}}
.brk .tbtn{color:var(--night);font-size:22px}.brk .tbtn:hover{background:rgba(0,0,0,.12)}

/* portada */
.top{display:grid;grid-template-columns:1.6fr 1fr 320px;gap:28px;padding:36px 0 56px}
.tag{display:inline-block;font-size:12px;font-weight:700;color:var(--tag);letter-spacing:.05em;text-transform:uppercase}
.tag.lime{background:var(--lime);color:var(--night);padding:3px 12px;border-radius:999px}
.lead{cursor:pointer}
.ph{overflow:hidden;background:var(--g)}
.lead .ph{border-radius:16px;aspect-ratio:16/10}
.lead img,.card img,.sitem img,.dcard img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.lead:hover img,.card:hover img,.dcard:hover img{transform:scale(1.05)}
.lead h1{font-size:clamp(30px,3.6vw,46px);line-height:1.06;margin:14px 0 10px}
.lead p{color:var(--mut);font-size:18px}
.meta{font-size:13px;color:var(--mut);margin-top:10px}
.side{display:grid;gap:20px;align-content:start}
.sitem{display:grid;grid-template-columns:96px 1fr;gap:14px;cursor:pointer;padding-bottom:20px;border-bottom:1px solid var(--line)}
.sitem:last-child{border:0}
.sitem .ph{border-radius:12px;aspect-ratio:1}
.sitem h3{font-size:19px;line-height:1.2;margin-top:2px}
.rail{display:grid;gap:20px;align-content:start}
.box,.panel{border:1px solid var(--line);border-radius:18px;padding:20px;background:var(--panel);transition:background .3s,border-color .3s}
.box h3{font:700 18px "Instrument Sans",sans-serif;margin-bottom:12px}
.top5{list-style:none;padding:0;counter-reset:n;display:grid;gap:12px}
.top5 li{counter-increment:n;display:grid;grid-template-columns:30px 1fr;gap:8px;cursor:pointer;font-weight:600;line-height:1.3;font-size:15px}
.top5 li:before{content:counter(n);font:700 26px "Bricolage Grotesque",serif;color:var(--tag);line-height:1}
.top5 li:hover{text-decoration:underline;text-decoration-color:var(--lime);text-underline-offset:4px;text-decoration-thickness:2px}
.mini{background:var(--night);color:#fff;border-color:var(--night)}.mini p{color:#b5c0b8;font-size:14px}
.mini-f{display:grid;gap:8px;margin-top:12px}
.mini-f input,.form input,.form select,.panel input[type=number],.panel select{height:46px;border:1.5px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-size:16px;background:var(--panel);color:var(--ink);width:100%}
.mini-f input{background:#1a2420;border-color:#2c3a34;color:#fff}
.err{border-color:var(--dn)!important}
.mini .msg{color:var(--lime)}.mini .msg.bad{color:#ff8c82}

/* títulos de sección */
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:3px solid var(--ink);padding-top:14px;margin-bottom:26px}
.sec-h h2{font-size:clamp(26px,3vw,34px)}.sec-h span{color:var(--mut);font-size:14px}

/* mercados */
.mk-sec{padding:56px 0;background:var(--g);transition:background .3s}
.mgrid{display:grid;grid-template-columns:1.7fr 1fr;gap:20px}
.viz3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}
.viz2{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin-top:20px}
.panel h3{font:700 17px "Instrument Sans",sans-serif;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.panel h3 small{font-size:12px;font-weight:500;color:var(--mut)}
.hint{font-size:12.5px;color:var(--mut);margin-top:10px}
.chips{display:flex;gap:6px;flex-wrap:wrap}.chips.sm{gap:4px}
.chips button,.chipx{border:1.5px solid var(--line);background:var(--panel);border-radius:999px;padding:5px 13px;font-size:13px;font-weight:600;color:var(--mut);display:inline-flex;align-items:center;gap:6px}
.chips.sm button{padding:3px 10px;font-size:12px}
.chips button i{width:9px;height:9px;border-radius:50%}
.chips button:hover,.chipx:hover{color:var(--ink);border-color:var(--ink)}
.chips button[aria-selected=true],.chips button[aria-pressed=true],.chipx[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.ph-h{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
#idxTabs{overflow-x:auto;flex-wrap:nowrap;max-width:100%;scrollbar-width:none;padding-bottom:2px}#idxTabs button{flex:none}
.bigval{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.bigval b{font:700 clamp(30px,4vw,44px) "Bricolage Grotesque",serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.bigval span{font-weight:700;font-size:16px}
.star{border:0;background:none;font-size:20px;color:var(--mut);padding:0 4px;line-height:1}
.star[aria-pressed=true]{color:#ffb800}.star:hover{transform:scale(1.2)}.star.big{font-size:28px;margin-left:auto}
.chart{position:relative}
.chart svg{width:100%;height:auto;display:block;touch-action:pan-y}
.gl{stroke:var(--line);stroke-width:1}.gt{fill:var(--mut);font-size:11.5px;font-family:"Instrument Sans",sans-serif}
.xh{stroke:var(--mut);stroke-width:1;stroke-dasharray:4 4}
.tip{position:absolute;top:0;transform:translateX(-50%);background:var(--ink);color:var(--bg);border-radius:10px;padding:7px 11px;font-size:12.5px;pointer-events:none;white-space:nowrap;display:grid;gap:2px;z-index:5;box-shadow:var(--shadow)}
.tip[hidden]{display:none}.tip b{font-size:11px;opacity:.7}.tip i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}
#mk{width:100%;border-collapse:collapse;font-size:14px}
#mk td{padding:8px 4px;border-top:1px solid var(--line);vertical-align:middle}
#mk tr[data-k]{cursor:pointer}#mk tr[data-k]:hover,#mk tr.sel{background:var(--g)}
#mk .nm{font-weight:600}#mk .vl{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}#mk .ch{text-align:right;width:74px;font-weight:700;font-variant-numeric:tabular-nums}
.spark{width:70px;height:24px;display:block}
.sp{width:76px}
#mk .empty{padding:20px 0}
.chipx{margin-left:auto;font-size:12px;padding:3px 11px}

/* barras, mapa, medidor, donut */
.bars{display:grid;gap:9px}
.br{display:grid;grid-template-columns:86px 1fr 62px;gap:8px;align-items:center;font-size:13px}
.br b{text-align:right;font-variant-numeric:tabular-nums}
.tr{display:grid;grid-template-columns:1fr 1fr;height:14px;background:var(--g);border-radius:7px;overflow:hidden}
.h{display:flex}.h.l{justify-content:flex-end;border-right:1px solid var(--mut)}
.h i{display:block;height:100%;width:0;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.h i.up{background:var(--up);border-radius:0 7px 7px 0}.h i.dn{background:var(--dn);border-radius:7px 0 0 7px}
.heat{display:flex;flex-wrap:wrap;gap:4px}
.tile{flex-basis:70px;min-height:68px;border:2px solid transparent;border-radius:10px;padding:8px;text-align:left;color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;font-size:12px;transition:transform .15s}
:root[data-theme=dark] .tile{color:#fff}
.tile b{font-size:12.5px;line-height:1.15}.tile span{font-weight:700;font-variant-numeric:tabular-nums}
.tile:hover{transform:scale(1.04)}.tile.on{border-color:var(--ink)}
.gauge svg{width:100%;max-width:300px;margin:0 auto;display:block}
.needle{transition:transform 1.1s cubic-bezier(.3,1.4,.5,1)}
.gv{font:700 26px "Bricolage Grotesque",serif;fill:var(--ink)}
.gcap{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:14px}
.btn.ghost{background:transparent;border-color:var(--line)}
.dwrap{display:flex;gap:22px;align-items:center;flex-wrap:wrap;justify-content:center}
.donut{width:200px;flex:none}.donut svg{width:100%}
.seg{cursor:pointer;transition:opacity .2s,stroke-width .2s;outline:none}.seg:hover,.seg:focus{stroke-width:36}.seg.dim{opacity:.3}
.dv{font:700 26px "Bricolage Grotesque",serif;fill:var(--ink)}.dl{font-size:11px;fill:var(--mut);font-family:"Instrument Sans",sans-serif}
.legend{list-style:none;padding:0;display:grid;gap:4px;flex:1;min-width:150px}
.legend li{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:10px;cursor:pointer;font-size:14px}
.legend li:hover,.legend li.on{background:var(--g)}.legend i{width:12px;height:12px;border-radius:4px}.legend b{margin-left:auto}

/* noticias */
.latest{padding:64px 0 40px}
.sorter{display:flex;justify-content:flex-end;margin:-8px 0 18px}.sorter .chipx{margin:0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}
.card{cursor:pointer;display:flex;flex-direction:column;gap:10px}
.card .ph{border-radius:14px;aspect-ratio:16/10}
.card h3{font-size:23px;line-height:1.15}.card p{color:var(--mut);font-size:15px}
.card:hover h3,.sitem:hover h3,.lead:hover h1,.dcard:hover h3,.opc:hover h3{text-decoration:underline;text-decoration-color:var(--lime);text-underline-offset:4px;text-decoration-thickness:3px}
.empty{padding:20px 0;color:var(--mut);text-align:center}
.more{text-align:center;margin-top:40px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 28px;border-radius:999px;border:2px solid var(--ink);background:var(--panel);color:var(--ink);font-weight:700;font-size:15px;transition:transform .15s,background .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px -10px rgba(0,0,0,.5)}
.btn.dark{background:var(--ink);color:var(--bg)}
.btn.lime{background:var(--lime);border-color:var(--lime);color:var(--night)}
.btn.sm{height:38px;padding:0 18px;font-size:14px}.btn[aria-pressed=true]:not(.ghost){background:var(--lime);border-color:var(--lime);color:var(--night)}
.btn.ghost-d{background:transparent;color:#fff;border-color:#3a4a42;margin-top:16px}
#savedBtn b{background:var(--lime);color:var(--night);border-radius:999px;padding:0 8px;margin-left:6px;font-size:12px}

/* herramientas */
.tools{padding:64px 0;background:var(--g);transition:background .3s}
.tgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px;align-items:start}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:14px}
.two label{font-size:13px;font-weight:600;display:grid;gap:4px}
.cres{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.cres div{background:var(--g);border-radius:12px;padding:10px 12px}.cres small{display:block;color:var(--mut);font-size:12px}.cres b{font:700 20px "Bricolage Grotesque",serif;font-variant-numeric:tabular-nums}
#cDemo{margin-top:12px}
.swap{align-self:end}
.fres{background:var(--night);color:#fff;border-radius:14px;padding:16px 18px;margin:6px 0 12px}.fres b{display:block;font:700 28px "Bricolage Grotesque",serif;color:var(--lime)}.fres small{color:#aab6ae}
.cal ul{list-style:none;padding:0}
#cal{list-style:none;padding:0;display:grid;gap:8px}
#cal li{display:grid;grid-template-columns:62px 1fr auto 34px;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:14px}
.cd{font-weight:700;line-height:1.2}.cd small{display:block;font-weight:500;color:var(--mut)}
.imp{display:flex;gap:2px}.imp i{width:6px;height:14px;border-radius:2px;background:var(--line)}
.imp.i1 i:nth-child(1),.imp.i2 i:nth-child(-n+2),.imp.i3 i{background:#ffb800}.imp.i3 i{background:var(--dn)}
.bell{background:none;border:0;font-size:18px;border-radius:8px;height:32px}.bell:hover{background:var(--g)}

/* análisis, opinión */
.deep{background:var(--g);padding:64px 0;transition:background .3s}
.tools+.deep{background:var(--bg)}
.deepgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.dcard{display:grid;grid-template-columns:1.1fr 1fr;background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden;cursor:pointer;min-height:280px}
.dcard img{height:100%}
.dcard>div:last-child{padding:26px;display:flex;flex-direction:column;gap:10px;justify-content:center}
.dcard h3{font-size:26px;line-height:1.12}.dcard p{color:var(--mut);font-size:15px}
.op{padding:64px 0 56px}
.opgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.opc{cursor:pointer;border-top:1px solid var(--line);padding-top:20px}
.opc .av{width:52px;height:52px;border-radius:50%;background:var(--lime);color:var(--night);display:grid;place-items:center;font:700 20px "Bricolage Grotesque",serif;margin-bottom:12px}
.opc h3{font-size:24px;line-height:1.15;margin:4px 0 8px}.opc p{color:var(--mut)}

/* pódcast */
.pod{background:var(--night);color:#fff;padding:80px 0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.pod h2,.sub h2{font-size:clamp(30px,4vw,48px);line-height:1.06}
.lead.dk{color:#b8c4bb;margin-top:16px;font-size:18px;cursor:auto}
.sub .lead.dk{color:var(--mut)}
.podimg{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:16/10}
.podimg img{width:100%;height:100%;object-fit:cover}
.play{position:absolute;inset:auto auto 20px 20px;width:64px;height:64px;border-radius:50%;border:0;background:var(--lime);color:var(--night);font-size:22px;transition:transform .15s}.play:hover{transform:scale(1.1)}
.np{margin-top:26px;background:#16211c;border-radius:16px;padding:18px 20px}
.np b{font-size:15px}.bar{height:8px;background:#2b3b34;border-radius:4px;margin:12px 0 8px;overflow:hidden;cursor:pointer}.bar i{display:block;height:100%;width:0;background:var(--lime)}
.np small{color:#9aaba1}
.npr{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.npb{display:flex;gap:4px}

/* suscripción */
.sub{padding:96px 0;background:linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--lime) 22%,var(--bg)))}
.ticks{list-style:none;padding:0;margin-top:24px;display:grid;gap:10px;font-weight:600}
.ticks li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--lime);color:var(--night);font-size:13px;margin-right:12px}
.form{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:32px;display:grid;gap:8px;box-shadow:var(--shadow)}
.form.flat{border:0;padding:12px 0 0;box-shadow:none}
.form label{font-size:14px;font-weight:600}
.form input,.form select{margin-bottom:6px}
.form input:focus,.form select:focus{border-color:var(--ink);outline:none}
fieldset{border:0;display:grid;gap:6px;margin:4px 0 8px;min-width:0}legend{font-size:14px;font-weight:600;margin-bottom:6px}
.plans{grid-template-columns:repeat(3,1fr);gap:8px}.plans legend{grid-column:1/-1}
.plan{cursor:pointer}.plan input{position:absolute;opacity:0;width:0;height:0}
.plan span{display:block;border:2px solid var(--line);border-radius:14px;padding:10px 12px;height:100%;transition:border-color .15s,background .15s}
.plan b{display:block}.plan small{font-weight:500;color:var(--mut);font-size:12px;line-height:1.3;display:block}
.plan:hover span{border-color:var(--mut)}
.plan input:checked+span{border-color:var(--ink);background:color-mix(in srgb,var(--lime) 35%,var(--panel))}
.plan input:focus-visible+span{outline:3px solid var(--lime);outline-offset:2px}
.pwrow{position:relative}.pwrow input{padding-right:84px}.pwrow .tbtn{position:absolute;right:6px;top:8px;color:var(--ink);border-color:var(--line)}.pwrow .tbtn:hover{background:var(--g)}
.chk{display:flex!important;align-items:center;gap:10px;font-weight:500!important;cursor:pointer}
.chk input{width:18px;height:18px;accent-color:var(--ink);margin:0;flex:none}
.form .btn{margin-top:10px;width:100%}
.msg{min-height:1.4em;font-size:14px;font-weight:600}.msg.ok{color:var(--up)}.msg.bad{color:var(--dn)}
.sub .chk a,.privlink a{text-decoration:underline}

/* pie */
footer{background:var(--night);color:#aab6ae;padding:64px 0 36px;font-size:15px}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.fgrid h4{color:#fff;margin-bottom:12px;font-size:15px}.fgrid a,.flink{display:block;padding:3px 0;background:none;border:0;color:inherit;font:inherit;text-align:left}.fgrid a:hover,.flink:hover{color:#fff;text-decoration:underline}
footer .brand{color:#fff}
.fine{margin-top:36px;padding-top:22px;border-top:1px solid #26332d;font-size:12.5px;max-width:80em}
footer .fine a{color:#fff;text-decoration:underline}

/* flotantes */
.subbar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:90;background:var(--night);color:#fff;border-radius:999px;padding:8px 10px 8px 22px;display:flex;align-items:center;gap:14px;box-shadow:0 20px 50px -10px rgba(0,0,0,.6);width:min(680px,100% - 24px);animation:up .5s}
.subbar[hidden]{display:none}.subbar span{font-weight:600;font-size:14px;white-space:nowrap}
.subbar form{display:flex;gap:6px;flex:1;min-width:0}.subbar input{flex:1;min-width:0;height:38px;border:0;border-radius:999px;padding:0 14px;background:#1d2a24;color:#fff;font-size:14px}
@keyframes up{from{transform:translate(-50%,30px);opacity:0}}
.totop{position:fixed;right:16px;bottom:84px;z-index:80;width:46px;height:46px;border-radius:50%;border:0;background:var(--ink);color:var(--bg);font-size:20px;box-shadow:var(--shadow)}.totop[hidden]{display:none}
.toast{position:fixed;left:50%;top:20px;transform:translateX(-50%);z-index:300;background:var(--ink);color:var(--bg);padding:11px 20px;border-radius:999px;font-size:14px;font-weight:600;box-shadow:var(--shadow);max-width:calc(100% - 24px);text-align:center}
.toast[hidden]{display:none}.toast.in{animation:drop .35s}@keyframes drop{from{transform:translate(-50%,-14px);opacity:0}}
.cookie{position:fixed;left:16px;bottom:16px;z-index:150;width:min(440px,100% - 32px);background:var(--panel);border:1.5px solid var(--ink);border-radius:20px;padding:20px;box-shadow:0 30px 70px -20px rgba(0,0,0,.55);animation:up2 .5s}
.cookie[hidden]{display:none}@keyframes up2{from{transform:translateY(30px);opacity:0}}
.cookie h3{font-size:20px;margin-bottom:6px}.cookie p{font-size:14px;color:var(--mut)}.cookie a{text-decoration:underline;color:var(--ink)}
.ck-b{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}

/* diálogos */
dialog{border:0;border-radius:22px;padding:0;width:min(780px,100% - 24px);max-height:92vh;overflow:auto;background:var(--panel);color:var(--ink);box-shadow:0 40px 100px rgba(0,0,0,.5)}
dialog::backdrop{background:rgba(5,9,8,.74);backdrop-filter:blur(4px)}
dialog article{position:relative}
dialog img#di{width:100%;aspect-ratio:16/8;object-fit:cover}
#ckd,#logd,#svd{width:min(560px,100% - 24px)}
.x{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(10,15,13,.85);color:#fff;font-size:16px;z-index:3}
#ckd .x,#logd .x,#svd .x{background:var(--g);color:var(--ink)}
.dprog{position:sticky;top:0;height:4px;width:0;background:var(--lime);z-index:4;margin-bottom:-4px}
.db{padding:28px 32px 32px;position:relative}
.db h2{font-size:clamp(26px,4vw,40px);line-height:1.1;margin:8px 0;padding-right:40px}
#dbody p{margin-top:16px;font-size:18px;line-height:1.7}#dbody.big p{font-size:21px}
#dbody p.demo{font-size:13px;color:var(--mut)}
.acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.rel h4{margin:28px 0 10px;font-size:15px}
.relb{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:10px 0;font-weight:600;line-height:1.3}
.relb img{width:72px;height:50px;object-fit:cover;border-radius:8px}.relb:hover span{text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:2px}
.ckrow{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line)}.ckrow small{display:block;color:var(--mut);font-size:13px;line-height:1.4}
.sw{position:relative;flex:none;width:48px;height:28px}.sw input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2}
.sw i{position:absolute;inset:0;background:var(--line);border-radius:999px;transition:background .2s}.sw i:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.4)}
.sw input:checked+i{background:var(--up)}.sw input:checked+i:after{transform:translateX(20px)}.sw input:disabled+i{opacity:.55}
.sw input:focus-visible+i{outline:3px solid var(--lime);outline-offset:2px}
.svlist{list-style:none;padding:0;margin-top:14px}
.svlist li{display:grid;grid-template-columns:1fr 36px;gap:8px;align-items:center;border-top:1px solid var(--line)}
.svo{display:grid;grid-template-columns:64px 1fr;gap:12px;text-align:left;background:none;border:0;padding:10px 0;font-weight:600;line-height:1.3;align-items:center}.svo img{width:64px;height:44px;object-fit:cover;border-radius:8px}.svo small{display:block;font-size:11px;text-transform:uppercase;color:var(--tag)}
.svx{width:34px;height:34px;border-radius:50%;border:0;background:var(--g)}
.svlist .empty{display:block;padding:20px 0;grid-template-columns:1fr}

/* páginas legales */
.lhead{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.lhead .wrap{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:12px;flex-wrap:wrap}
.lhead nav{display:flex;gap:8px;align-items:center}
.lhead nav a{padding:8px 14px;border-radius:999px;font-weight:600;font-size:14px}
.lhead nav a:hover{background:var(--g)}
.lhead nav a.cta{background:var(--ink);color:var(--bg)}
.lp{padding:48px 0 72px}.lp .wrap{max-width:820px}
.lp h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.05;margin-bottom:.3em}
.lp h2{font-size:1.45rem;margin:1.8em 0 .5em;line-height:1.2}
.lp p,.lp li{max-width:70ch}.lp ul{padding-left:1.3em;margin:0 0 1em}.lp li{margin-bottom:.4em}.lp p{margin:0 0 1em}
.lp a{color:var(--link);text-decoration:underline}.lp .upd{color:var(--mut);font-size:.95rem;margin-bottom:1.5em}
.lp .note{background:var(--panel);border-left:4px solid var(--lime);padding:14px 16px;border-radius:6px;margin:0 0 1.5em;box-shadow:0 0 0 1px var(--line)}
.lp table{border-collapse:collapse;width:100%;margin:0 0 1.2em;background:var(--panel)}
.lp th,.lp td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.lp th{width:34%;font-weight:600}
.lp .tbl{overflow-x:auto}
mark.ph{background:var(--lime);color:var(--night);padding:0 4px;border-radius:3px}
.flinks{display:flex;gap:6px 18px;flex-wrap:wrap;margin:0 0 14px}.flinks a{color:#fff;font-weight:600}

/* adaptable */
@media(max-width:1100px){.top{grid-template-columns:1fr 1fr}.rail{grid-column:1/-1;grid-template-columns:1fr 1fr}.mgrid,.tgrid{grid-template-columns:1fr}.viz3{grid-template-columns:1fr 1fr}.viz2{grid-template-columns:1fr}}
@media(max-width:800px){.top{grid-template-columns:1fr}.rail{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.deepgrid,.opgrid,.grid2,.viz3{grid-template-columns:1fr}.dcard{grid-template-columns:1fr}.dcard .ph{aspect-ratio:16/10}.fgrid{grid-template-columns:1fr 1fr}.search{display:none}.mrow{height:64px}.brand{font-size:26px}.sub{padding:64px 0}.plans{grid-template-columns:1fr}.subbar span{display:none}.subbar{padding-left:10px}}
@media(max-width:520px){.grid{grid-template-columns:1fr}.db{padding:22px}.form{padding:22px}.two{grid-template-columns:1fr}.cres{grid-template-columns:1fr}.cookie{left:8px;bottom:8px;width:calc(100% - 16px)}.sp{display:none}.tb-l #date{display:none}#cal li{grid-template-columns:56px 1fr 34px}.imp{display:none}.cookie .btn{flex:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.track,.live i,.mstat:before{animation:none}.lead img,.card img,.dcard img,.btn,.play,.needle,.h i{transition:none}.cookie,.subbar,.toast{animation:none}}
.mgrid>*,.viz3>*,.viz2>*,.tgrid>*,.top>*,.grid2>*{min-width:0}
.sv-m{display:none}.tbtn{font-size:16px}
@media(max-width:800px){.sv-t{display:none}.sv-m{display:inline}#savedBtn{padding:0 12px;flex:none}.brand{font-size:24px}}
