
:root{
  --ink:#111417;--muted:#6b7178;--line:#e2e2e0;--line2:#c9c9c6;--red:#c00000;
  --brand-1:#241a9c;--brand-2:#3f2be6;--brand-3:#ec1414;
  --bg:#ffffff;--wash:#f6f5f2;--card:#ffffff;
  --serif:'Source Serif 4',Georgia,'Times New Roman',serif;
  --sans:'Libre Franklin',system-ui,-apple-system,Helvetica,Arial,sans-serif;}
html[data-tema=oscuro]{--ink:#e9eaec;--muted:#9aa1a9;--line:#2a2d31;--line2:#3a3d42;
  --bg:#0f1113;--wash:#17191c;--card:#141619;--red:#ff5a4d;
  --brand-1:#5b4fe6;--brand-2:#7c6bff;--brand-3:#ff5a4d;}
html{font-size:var(--fs,17px)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--serif);line-height:1.5}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.progress{position:fixed;top:0;left:0;height:3px;background:var(--red);width:0;z-index:99}
header.site{border-bottom:2px solid var(--ink);background:var(--bg)}
.strip{border-bottom:1px solid var(--line);font-family:var(--sans);font-size:12px;color:var(--muted);
  display:flex;justify-content:space-between;align-items:center;padding:6px 0;gap:10px}
.tools{display:flex;gap:6px;align-items:center}
.tools button,.tools a.tb{font-family:var(--sans);font-size:12px;color:var(--muted);background:none;
  border:1px solid var(--line);border-radius:4px;padding:3px 8px;cursor:pointer}
.tools button:hover,.tools a.tb:hover{color:var(--red);border-color:var(--red)}
.masthead{text-align:center;padding:15px 0 9px}
.brand{display:inline-flex;align-items:center;gap:13px}
.brand .mark{width:48px;height:48px;flex:none;display:block}
.brand .mark circle{transform-box:fill-box;transform-origin:center}
.brand .mark .r1{stroke:var(--brand-1);animation:girar 14s linear infinite}
.brand .mark .r2{stroke:var(--brand-2);animation:girar 9s linear infinite reverse}
.brand .mark .r3{stroke:var(--brand-3);animation:girar 6s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.brand .mark .r1,.brand .mark .r2,.brand .mark .r3{animation:none}}
.brand:hover .mark .r1{animation-duration:7s}
.brand:hover .mark .r2{animation-duration:4.5s}
.brand:hover .mark .r3{animation-duration:3s}
.brand .wm{font-family:var(--sans);font-weight:800;font-size:40px;letter-spacing:-1px;line-height:1;color:var(--brand-3)}
.masthead .sub{font-family:var(--sans);font-size:12px;letter-spacing:.5px;color:var(--muted);text-transform:uppercase;margin-top:2px}
nav.main{border-top:1px solid var(--line);border-bottom:1px solid var(--ink)}
nav.main .wrap{display:flex;flex-wrap:wrap;justify-content:center}
nav.main a{font-family:var(--sans);font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--ink);padding:10px 11px}
nav.main a:hover,nav.main a.active{color:var(--red)}
.kicker{font-family:var(--sans);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--red)}
.meta{font-family:var(--sans);font-size:12px;color:var(--muted)}
.lead-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:0;margin:24px 0 8px;border-bottom:1px solid var(--ink);padding-bottom:24px}
.lead-main{padding-right:30px;border-right:1px solid var(--line)}
.lead-main .thumb{aspect-ratio:16/9;overflow:hidden;background:var(--wash);margin-bottom:14px}
.lead-main h1{font-size:42px;line-height:1.08;font-weight:800;margin:.18em 0 .12em;letter-spacing:-.5px}
.lead-main h1 a:hover{color:var(--red)}
.lead-main .dek{font-size:19px;color:var(--muted);line-height:1.42;margin:.2em 0 .5em}
.whatsnews{padding-left:26px}
.whatsnews h4{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid var(--ink);padding-bottom:6px;margin:0 0 4px}
.wn-item{padding:12px 0;border-bottom:1px solid var(--line)}
.wn-item .t{font-size:17px;font-weight:700;line-height:1.22}
.wn-item .t a:hover{color:var(--red)}
.wn-list{max-height:380px;overflow-y:auto;overflow-x:hidden;padding-right:10px;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}
.wn-list::-webkit-scrollbar{width:8px}
.wn-list::-webkit-scrollbar-thumb{background:var(--line2);border-radius:4px}
.wn-list::-webkit-scrollbar-track{background:var(--wash);border-radius:4px}
.wn-list .wn-item:first-child{padding-top:2px}
.wn-list .wn-item:last-child{border-bottom:0}
.section-head{display:flex;align-items:baseline;gap:12px;border-bottom:2px solid var(--ink);margin:28px 0 16px;padding-bottom:6px;flex-wrap:wrap}
.section-head h2{font-family:var(--sans);font-size:15px;text-transform:uppercase;letter-spacing:1px;margin:0}
.section-head .d{font-family:var(--sans);font-size:12px;color:var(--muted)}
.paispick{font-family:var(--sans);font-size:12px;color:var(--muted);margin-left:auto;display:flex;align-items:center;gap:6px}
.paispick select{font-family:var(--sans);font-size:12px;color:var(--ink);background:var(--wash);border:1px solid var(--line);border-radius:4px;padding:4px 6px;cursor:pointer}
.claves-dia{margin:16px 0 6px;padding:14px 18px 16px;background:var(--wash);border:1px solid var(--line);border-radius:6px}
.claves-dia .section-head{margin:0 0 8px;border-bottom-width:1px;align-items:center}
.cd-intro{font-family:var(--serif);font-size:15px;color:var(--ink);margin:0 0 10px}
.cd-list{margin:0;padding-left:22px}
.cd-list li{margin:5px 0;font-family:var(--sans);font-size:14px}
.cd-list a{color:var(--ink);text-decoration:none}
.cd-list a:hover{color:var(--red)}
.cd-list .kicker{margin-right:6px}
.cd-audio{margin-left:auto}
.cd-audio audio{width:260px;max-width:48vw;height:32px;vertical-align:middle}
.cd-listen{font-family:var(--sans);font-size:12.5px;color:var(--ink);background:var(--wash);border:1px solid var(--line);border-radius:4px;padding:6px 12px;cursor:pointer}
.cd-listen:hover{color:var(--red);border-color:var(--red)}
.tool .toolrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}
.tool input,.tool select{font-family:var(--sans);font-size:14px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:6px 8px}
.tool input{width:96px}
.toolout{font-family:var(--sans);font-size:15px;font-weight:600;color:var(--ink);margin:4px 0 2px}
.art-chart{margin:22px 0;padding:12px 14px}
.art-chart canvas{max-height:220px}
.faq{margin:24px 0;border-top:1px solid var(--line);padding-top:14px}
.faq h4{font-family:var(--sans);font-size:13px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}
.faq details{border-bottom:1px solid var(--line);padding:9px 0}
.faq summary{font-family:var(--serif);font-size:16px;font-weight:600;cursor:pointer;color:var(--ink)}
.faq details p{font-family:var(--serif);font-size:15px;color:var(--ink);margin:8px 0 2px}
.react{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:22px 0 6px;font-family:var(--sans)}
.react-q{font-size:13px;color:var(--muted);margin-right:2px}
.react button,.poll-opts button{font-family:var(--sans);font-size:13px;color:var(--ink);background:var(--wash);border:1px solid var(--line);border-radius:20px;padding:6px 12px;cursor:pointer}
.react button:hover,.poll-opts button:hover{border-color:var(--red)}
.react button.on,.poll-opts button.on{background:var(--red);color:#fff;border-color:var(--red)}
.poll-opts button:disabled{cursor:default;opacity:.85}
.poll{margin:14px 0 6px;padding:14px 16px;background:var(--wash);border:1px solid var(--line);border-radius:6px}
.poll h4{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 6px}
.poll-q{font-family:var(--serif);font-size:16px;font-weight:600;margin:0 0 10px}
.poll-opts{display:flex;gap:8px;flex-wrap:wrap}
.poll-thanks{font-family:var(--sans);font-size:12.5px;color:var(--red);margin:10px 0 0}
.ask-hero{margin:14px 0 2px}
.ask-row{display:flex;gap:8px}
.ask-q{flex:1;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--bg);border:1px solid var(--ink);border-radius:6px;padding:12px 14px}
.ask-q:focus{outline:none;border-color:var(--red)}
.ask-go{font-family:var(--sans);font-size:14px;font-weight:600;color:#fff;background:var(--red);border:1px solid var(--red);border-radius:6px;padding:0 20px;cursor:pointer}
.ask-go:hover{opacity:.9}
.ask-chips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 0}
.ask-chip{font-family:var(--sans);font-size:12.5px;color:var(--muted);background:var(--wash);border:1px solid var(--line);border-radius:20px;padding:5px 11px;cursor:pointer}
.ask-chip:hover{color:var(--red);border-color:var(--red)}
.ask-out:not(:empty){margin:14px 0 4px;padding:14px 16px;background:var(--wash);border:1px solid var(--line);border-radius:6px}
.ask-loading{font-family:var(--sans);font-size:13px;color:var(--muted);margin:0}
.ask-ans p{font-family:var(--serif);font-size:16px;line-height:1.55;margin:0 0 10px}
.ask-ans ul{margin:0 0 10px;padding-left:20px}
.ask-ans li{font-family:var(--serif);font-size:15px;line-height:1.5;margin:4px 0}
.ask-src,.ask-rel{margin:12px 0 0;border-top:1px solid var(--line);padding-top:10px}
.ask-src h4,.ask-rel h4{font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 7px}
.ask-src a{display:block;font-family:var(--sans);font-size:13px;color:var(--ink);text-decoration:none;margin:5px 0}
.ask-src a:hover{color:var(--red)}
.ask-dom{color:var(--red);font-weight:600}
.ask-card{display:block;font-family:var(--sans);font-size:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding:7px 0}
.ask-card:last-child{border-bottom:0}
.ask-card:hover{color:var(--red)}
.ask-card .kicker{display:block;margin-bottom:2px}
.ask-note{margin:12px 0 0}
.langwrap{position:relative;display:inline-block}
.langmenu{position:absolute;right:0;top:100%;margin-top:4px;background:var(--bg);border:1px solid var(--ink);border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.15);z-index:50;min-width:130px;overflow:hidden}
.langmenu[hidden]{display:none}
.langmenu a{display:block;font-family:var(--sans);font-size:13px;color:var(--ink);text-decoration:none;padding:8px 14px}
.langmenu a:hover{background:var(--wash);color:var(--red)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media(max-width:820px){.lead-grid{grid-template-columns:1fr}.lead-main{border-right:0;padding-right:0}.whatsnews{padding-left:0;margin-top:20px}.grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.grid{grid-template-columns:1fr}.brand .wm{font-size:30px}.brand .mark{width:40px;height:40px}}
.card{background:var(--card)}
.card .thumb{aspect-ratio:16/9;overflow:hidden;background:var(--wash);margin-bottom:11px}
.card h3{font-size:21px;line-height:1.18;font-weight:700;margin:.25em 0 .2em}
.card:hover h3{color:var(--red)}
.card .dek{font-size:15.5px;color:var(--muted);line-height:1.4;margin:.1em 0 .4em}
.card.placeholder{opacity:.7}
.card.placeholder .badge{font-family:var(--sans);font-size:11px;color:var(--muted)}
article.post{max-width:720px;margin:24px auto 0}
article.post h1{font-size:40px;line-height:1.1;font-weight:800;letter-spacing:-.5px;margin:.15em 0 .2em}
article.post .dek{font-size:21px;color:var(--muted);line-height:1.4;margin:.1em 0 .6em}
.byline{font-family:var(--sans);font-size:13px;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 0;margin:14px 0 18px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.byline .acts{display:flex;gap:6px}
.byline button{font-family:var(--sans);font-size:12px;color:var(--ink);background:var(--wash);border:1px solid var(--line);border-radius:4px;padding:5px 10px;cursor:pointer}
.byline button:hover{color:var(--red);border-color:var(--red)}
.trust{font-family:var(--sans);font-size:12px;color:var(--muted);margin:-6px 0 18px}
.trust a{color:var(--muted);text-decoration:underline}
.trust a:hover{color:var(--red)}
figure.hero{margin:0 0 20px}
figure.hero .thumb{aspect-ratio:16/9;overflow:hidden;background:var(--wash)}
figure.hero figcaption{font-family:var(--sans);font-size:12px;color:var(--muted);padding-top:7px;border-bottom:1px solid var(--line);padding-bottom:12px}
.claves{background:var(--wash);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:6px;padding:14px 18px;margin:0 0 22px}
.claves h4{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.8px;margin:0 0 8px}
.claves ul{margin:0;padding-left:18px}
.claves li{font-size:16px;margin:5px 0;line-height:1.4}
article.post p{font-size:18.5px;line-height:1.62;margin:1.05em 0}
.tag{display:inline-block;font-family:var(--sans);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--ink);border:1px solid var(--line2);padding:4px 10px;border-radius:2px;margin:4px 5px 0 0}
.tag:hover{border-color:var(--red);color:var(--red)}
.note{background:var(--wash);border-left:3px solid var(--red);padding:12px 16px;font-family:var(--sans);font-size:12.5px;color:var(--muted);margin-top:24px;line-height:1.5}
.related{margin:30px 0}
.arch-day{font-family:var(--sans);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;border-bottom:2px solid var(--ink);padding-bottom:6px;margin:28px 0 16px}
footer.site{border-top:2px solid var(--ink);margin-top:48px;padding:26px 0;font-family:var(--sans);font-size:12.5px;color:var(--muted)}
footer.site a{color:var(--muted);text-decoration:underline}
footer.site strong{color:var(--ink)}
.brand-foot{gap:10px;margin-bottom:4px}
.brand-foot .mark{width:30px;height:30px}
.brand-foot .wm{font-size:23px}
footer.site .foot-tag{margin-bottom:10px}
.searchbox{width:100%;font-family:var(--sans);font-size:18px;padding:14px 16px;border:2px solid var(--ink);border-radius:6px;background:var(--card);color:var(--ink)}
.ans{background:var(--wash);border:1px solid var(--line);border-radius:8px;padding:18px 20px;margin:16px 0;font-size:18px;line-height:1.5}
.ad{background:var(--wash);border:1px dashed var(--line2);border-radius:6px;text-align:center;color:var(--muted);
  font-family:var(--sans);font-size:12px;padding:18px;margin:22px 0}
.chip{display:inline-block;font-family:var(--sans);font-size:12px;font-weight:600;border:1px solid var(--line2);border-radius:20px;padding:5px 12px;margin:3px 4px 0 0;cursor:pointer;color:var(--ink)}
.chip.on{background:var(--red);color:#fff;border-color:var(--red)}
.tl{border-left:2px solid var(--line);margin-left:8px;padding-left:18px}
.tl .it{position:relative;padding:12px 0;border-bottom:1px solid var(--line)}
.tl .it::before{content:"";position:absolute;left:-25px;top:18px;width:10px;height:10px;background:var(--red);border-radius:50%}
.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:700px){.dgrid{grid-template-columns:1fr}}
.dcard{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px}
table.rates{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:14px}
table.rates th,table.rates td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line)}
/* ticker de mercados */
.ticker{display:flex;align-items:stretch;background:#111417;color:#fff;border-bottom:2px solid var(--red);font-family:var(--sans);font-size:13px;overflow:hidden}
.ticker-lbl{display:flex;align-items:center;background:var(--red);color:#fff;font-weight:700;font-size:11px;letter-spacing:1px;padding:0 12px;white-space:nowrap;z-index:2}
.ticker-vp{overflow:hidden;flex:1}
.ticker-track{display:inline-flex;gap:34px;padding:7px 0;white-space:nowrap;animation:tkmove 60s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes tkmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tk{display:inline-flex;gap:7px;align-items:baseline;color:#fff}
.tk b{font-weight:700}
.tk .up{color:#39d98a}.tk .down{color:#ff6b6b}.tk .flat{color:#aab}
/* cuadro de clima */
.wx{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin:0 0 18px}
.wx-top{display:flex;align-items:center;gap:12px}
.wx-emoji{font-size:42px;line-height:1}
.wx-temp{font-size:32px;font-weight:800;line-height:1.1}
.wx-place{font-family:var(--sans);font-size:12.5px;color:var(--muted)}
.wx-cond{font-family:var(--sans);font-size:13px;color:var(--ink)}
.wx-fc{display:flex;gap:8px;margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.wx-day{flex:1;text-align:center;font-family:var(--sans);font-size:12px;color:var(--muted)}
.wx-day .e{font-size:20px;margin:2px 0}
.wx-day .mm{color:var(--ink);font-weight:700}
