/* The News Link Up hub (News page) — built on the site's own tokens */
.nl-intro{max-width:68ch}
.nl-hub{margin:1.4rem 0 2.2rem}
.nl-status{display:flex;align-items:center;gap:.55rem;color:var(--mut);font-size:.85rem;font-weight:600;margin:0 0 .9rem;font-variant-numeric:tabular-nums}
.nl-status i{flex:none;width:.55rem;height:.55rem;border-radius:50%;background:var(--up);box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 22%,transparent)}
.nl-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1rem;padding:.6rem 0;border-bottom:1px solid var(--line)}
.nl-chips{display:flex;gap:.4rem;flex:1 1 420px;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:.1rem 0}
.nl-chips::-webkit-scrollbar{display:none}
.nl-chip{flex:none;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--fg)}
.nl-chip[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.nl-chip[aria-pressed="true"] b{color:var(--bg);opacity:.75}
.nl-chip:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.nl-search{margin:0;flex:0 1 240px}
.nl-search input{padding:.6rem .85rem;box-shadow:none}
.nl-leadwrap h2,.nl-beat-head h2{margin:0}
.nl-leadwrap{margin:1.4rem 0 .4rem}
.nl-leadwrap>h2{margin:0 0 .8rem}
.nl-lead{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.nl-lead .nl-story{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.05rem 1.15rem;box-shadow:var(--shadow);min-width:0}
.nl-lead .nl-story:first-child{grid-column:span 2;grid-row:span 2;padding:1.4rem 1.5rem;border-top:4px solid var(--red)}
.nl-lead .nl-story:first-child h3{font-family:"Playfair Display",Georgia,serif;font-size:1.65rem;line-height:1.2;letter-spacing:-.01em}
.nl-lead .nl-story:first-child .nl-sum{font-size:1.02rem}
.nl-story{display:flex;flex-direction:column;gap:.35rem}
.nl-story .lvl{align-self:flex-start}
.nl-story h3{margin:0;font-size:1.05rem;line-height:1.35;text-wrap:balance}
.nl-story h3 a{color:var(--fg);text-decoration:none}
.nl-story h3 a:hover,.nl-story h3 a:focus-visible{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.nl-sum{margin:0;color:var(--mut);font-size:.94rem;line-height:1.55}
.nl-by{margin:auto 0 0;padding-top:.2rem;font-size:.8rem;color:var(--mut)}
.nl-by b{color:var(--fg);font-weight:700}
.nl-beats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.6rem}
.nl-beats.one{grid-template-columns:minmax(0,820px)}
.nl-beat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.1rem 1.25rem .4rem;box-shadow:var(--shadow);min-width:0}
.nl-beat-head{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;padding-bottom:.6rem;border-bottom:2px solid var(--red)}
.nl-beat-head h2{font-size:1.3rem}
.nl-beat .nl-story{padding:.85rem 0;border-bottom:1px solid var(--line)}
.nl-beat .nl-story:last-child{border-bottom:0}
.nl-nfa{margin:.6rem 0 0;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.nl-hub mark{background:color-mix(in srgb,var(--red) 18%,transparent);color:inherit;border-radius:2px}
@media(max-width:900px){.nl-lead{grid-template-columns:repeat(2,1fr)}.nl-beats{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){
.nl-search{flex:1 1 100%;order:-1}
.nl-lead{grid-template-columns:1fr}
.nl-lead .nl-story:first-child{grid-column:auto;grid-row:auto}
.nl-lead .nl-story:first-child h3{font-size:1.35rem}
.nl-beat{padding:1rem 1rem .3rem}
}
/* Beat picker: scrollable strip with arrows + dropdown; mobile-first tweaks */
.nl-pick{flex:none;margin:0}
.nl-pick select{font:inherit;font-size:.9rem;font-weight:600;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.6rem .8rem;max-width:200px;min-height:44px}
.nl-strip{display:flex;align-items:center;gap:.3rem;flex:1 1 420px;min-width:0}
.nl-strip .nl-chips{flex:1 1 auto;scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x;cursor:grab}
.nl-arr{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);font:700 1.3rem/1 inherit;cursor:pointer;padding:0}
.nl-arr:hover{border-color:var(--fg)}
.nl-chip{min-height:40px;padding:.5rem .9rem}
@media(max-width:640px){
.nl-hub{margin:1rem 0 1.6rem}
.nl-status{font-size:.8rem;align-items:flex-start}
.nl-status i{margin-top:.35rem}
.nl-bar{gap:.6rem}
.nl-pick{flex:1 1 100%;order:0}
.nl-pick select{width:100%;max-width:none;font-size:16px;min-height:48px}
.nl-search{order:-1}
.nl-search input{font-size:16px;min-height:48px}
.nl-strip{flex:1 1 100%}
.nl-lead{gap:.8rem}
.nl-story h3{font-size:1.05rem}
.nl-beat-head h2{font-size:1.15rem}
.nl-beat-head{flex-wrap:wrap}
.nl-hub .nl-sum{font-size:.95rem}
.nl-by{font-size:.78rem}
}
/* BEYOND START */
.bc{margin:2rem 0 1.4rem;max-width:820px}
.bc h2{margin:0 0 .3rem}
.bc-card{display:block;margin-top:.8rem;text-decoration:none;color:inherit}
/* BEYOND END */

/* LOCAL NEWS START */
.ln{margin:1.6rem 0 2.2rem}
.ln-head h2{margin:0;font-size:1.7rem}
.ln-sub{margin:.2rem 0 .7rem;color:var(--mut);font-weight:600}
.ln-know{background:var(--soft);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:14px;padding:1rem 1.25rem;margin:.8rem 0 1.2rem}
.ln-know h3{margin:0 0 .4rem}
.ln-know ul{margin:.3rem 0 .6rem;padding-left:1.2rem}
.ln-know li{margin:.35rem 0}
.ln-beats{margin-top:1rem}
.ln-beats .nl-beat.wide{grid-column:1/-1}
.ln-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.6rem}
.ln-pair .nl-story{border-bottom:0}
.ln-src-label{margin:1.1rem 0 .4rem;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ln-links{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 .6rem}
.ln-links .tchip{text-decoration:none}
@media(max-width:900px){.ln-beats .nl-beat.wide{grid-column:auto}}
@media(max-width:640px){.ln-pair{grid-template-columns:1fr}.ln-pair .nl-story{border-bottom:1px solid var(--line)}.ln-pair .nl-story:last-child{border-bottom:0}.ln-head h2{font-size:1.45rem}}
/* LOCAL NEWS END */

/* NEWS MENU START */
.nmenu .lm-grid{max-width:46rem}
#nwbeats:empty{display:none}
.nj{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .5rem;margin:.9rem 0 1.2rem}
.nj-l{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-right:.2rem}
.lh{margin:2.2rem 0 .6rem}
#local-news,#ln-guide,#ln-crypto,#ln-business,#ln-caribbean,#live-headlines,#beyond-crypto{scroll-margin-top:5.5rem}
/* NEWS MENU END */

/* CALENDAR START */
:root{--cal-econ:#2b6cb0;--cal-crypto:#b7791f;--cal-local:#14804a}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--cal-econ:#63b3ed;--cal-crypto:#ecc94b;--cal-local:#3ddc84}}
:root[data-theme="dark"]{--cal-econ:#63b3ed;--cal-crypto:#ecc94b;--cal-local:#3ddc84}
.c-econ{--cc:var(--cal-econ)}.c-crypto{--cc:var(--cal-crypto)}.c-local{--cc:var(--cal-local)}
.cal{margin:2rem 0 2.4rem;scroll-margin-top:5.5rem}
.cal-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem 1rem;margin:.8rem 0}
.cal-nav{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.cal-title{margin:0;min-width:9.5rem;text-align:center;font-size:1.3rem}
.cal .chipb[disabled]{opacity:.4;cursor:default}
.cal-filters{display:flex;flex-wrap:wrap;gap:.4rem}
.cal-filters .nl-chip{display:inline-flex;align-items:center;gap:.4rem}
.cal-dot{display:inline-block;flex:none;width:.6rem;height:.6rem;border-radius:50%;background:var(--cc,var(--mut));font-style:normal}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.cal-dow{background:var(--soft);padding:.45rem .3rem;text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.cal-cell{background:var(--card);min-height:6.2rem;padding:.35rem .4rem;display:flex;flex-direction:column;gap:.25rem;min-width:0;text-align:left;font:inherit;color:inherit;border:0;border-radius:0;margin:0}
.cal-cell.pad{background:var(--soft)}
.cal-cell.has{cursor:pointer}
.cal-cell.has:hover{background:var(--soft)}
.cal-cell:focus-visible,.cal-row:focus-visible,.cal .chipb:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.cal-cell.sel{background:var(--soft);box-shadow:inset 0 0 0 2px var(--red)}
.cal-n{font-size:.85rem;font-weight:700;line-height:1.5;min-width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;align-self:flex-start;font-variant-numeric:tabular-nums}
.cal-cell.today .cal-n{background:var(--red);color:var(--btnfg,#fff)}
.cal-cell.past .cal-evs{opacity:.6}
.cal-evs{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.cal-chip{display:flex;align-items:center;gap:.3rem;min-width:0;font-size:.72rem;line-height:1.25;border-left:3px solid var(--cc);padding:.12rem .3rem;border-radius:4px;background:color-mix(in srgb,var(--cc) 14%,transparent)}
.cal-chip .cal-dot{display:none}
.cal-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.cal-more{font-size:.7rem;font-weight:700;color:var(--mut)}
.cal-detail{margin:1.2rem 0 .4rem;scroll-margin-top:5.5rem}
.cal-day-h{margin:0 0 .6rem;font-size:1.1rem}
.cal-card{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--cc);border-radius:12px;padding:.85rem 1rem;margin:0 0 .7rem;box-shadow:var(--shadow)}
.cal-card-top{display:flex;flex-wrap:wrap;gap:.3rem .8rem;align-items:center;margin-bottom:.2rem}
.cal-tag{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cc)}
.cal-time{font-size:.82rem;color:var(--mut);font-weight:600}
.cal-card h4{margin:.1rem 0 .3rem;font-size:1.05rem;line-height:1.35}
.cal-card p{margin:.25rem 0}
.cal-range{font-size:.85rem;color:var(--mut);font-weight:600}
.cal-text{color:var(--mut);font-size:.94rem;line-height:1.55}
.cal-src{font-size:.82rem}
.cal-ag-h{margin:1.6rem 0 .5rem;font-size:1.05rem}
.cal-agenda{list-style:none;margin:0;padding:0;display:grid;gap:.15rem;max-width:820px}
.cal-row{display:flex;gap:.9rem;align-items:flex-start;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:0;border-bottom:1px solid var(--line);padding:.55rem .4rem;cursor:pointer;border-radius:8px}
.cal-row:hover,.cal-row.sel{background:var(--soft)}
.cal-rd{flex:none;min-width:4.2rem;font-weight:800;font-variant-numeric:tabular-nums}
.cal-rn{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.cal-rt{display:flex;align-items:center;gap:.45rem;font-size:.92rem}
@media(max-width:640px){
.cal-bar{flex-direction:column;align-items:stretch}
.cal-nav{justify-content:space-between}
.cal-title{order:-1;flex:1 1 100%;font-size:1.2rem}
.cal-dow{padding:.35rem 0;font-size:.62rem;letter-spacing:.02em}
.cal-cell{min-height:3.6rem;align-items:center;padding:.25rem .1rem}
.cal-n{align-self:center;font-size:.82rem}
.cal-evs{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.2rem}
.cal-chip{border:0;background:none;padding:0}
.cal-chip .cal-dot{display:block}
.cal-t,.cal-more{display:none}
}
/* CALENDAR END */
