/* Calm reading surfaces; asset accents stay local to their subject. */
:root{--bg:#101b2b;--panel:#17263a;--panel2:#1b2d43;--panel3:#253a50;--line:#30445b;--text:#e8eef5;--muted:#a5b6c8;--muted2:#8398ae;--accent:#345f84;--accent2:#9ac9ec;--red:#f18a92;--redbg:rgba(207,79,94,.12);--gold:#e5bd70;--btc:#f0a25a;--shadow:0 12px 35px rgba(0,0,0,.22)}
.light-mode{--bg:#f6f5f0;--panel:#fffefa;--panel2:#eff4f7;--panel3:#e5edf2;--line:#d9e2e9;--text:#20364d;--muted:#52697c;--muted2:#718597;--accent:#193d5d;--accent2:#245c88;--red:#b63343;--redbg:#fcebed;--gold:#91681e;--btc:#ad5316;--shadow:0 12px 35px rgba(25,51,75,.11)}
body{background:var(--bg)}
.sidebar,.topbar,.light-mode .sidebar,.light-mode .topbar{background:var(--panel)}
.nav-item,.light-mode .nav-item{color:var(--muted)}
.nav-item.active,.light-mode .nav-item.active{color:var(--accent2);background:var(--panel3);box-shadow:inset 2px 0 var(--accent2)}
.button:hover{background:#2d577b;transform:none}
.button-outline,.button-quiet,.light-mode .button-outline,.light-mode .button-quiet{color:var(--text);border-color:var(--line);background:var(--panel2)}
.button-outline:hover,.button-quiet:hover,.light-mode .button-outline:hover,.light-mode .button-quiet:hover{color:var(--text);background:var(--panel3);border-color:var(--muted2)}
.global-search,.select,.input,.week-strip,.week-date,.filter-chip,.light-mode .global-search,.light-mode .select,.light-mode .input,.light-mode .week-strip,.light-mode .week-date,.light-mode .filter-chip{background:var(--panel2);border-color:var(--line);color:var(--text)}
.global-search input::placeholder{color:var(--muted)}
.icon-button,.light-mode .icon-button{color:var(--muted)}
.news-item,.light-mode .news-item,.dialog,.light-mode .dialog,.stat-card,.light-mode .stat-card,.event-card,.light-mode .event-card,.broker-card,.light-mode .broker-card{background:var(--panel);border-color:var(--line)}
.news-item:hover{border-color:var(--muted2)}
.news-title{font-size:13px;line-height:1.6;font-weight:650;color:var(--text)}
.news-item .news-body,.light-mode .news-summary{color:var(--text);opacity:.9;line-height:1.8}
.news-time,.light-mode .news-time,.list-row-sub{color:var(--muted)}
.news-item.important{border-left:3px solid var(--red)}
.news-item.important .news-title,.light-mode .news-item.important .news-title,.event-card.high .event-title,.light-mode .event-card.high .event-title{color:var(--red)}
.filter-chip.active,.light-mode .filter-chip.active{background:var(--panel3);border-color:var(--accent2);color:var(--accent2)}
.filter-chip.red-active,.light-mode .filter-chip.red-active{background:var(--redbg);border-color:var(--red);color:var(--red)}
.feed-kind-filters{margin-bottom:7px}.feed-asset-filters{padding-bottom:13px;margin-bottom:13px;border-bottom:1px solid var(--line)}
.asset-chip{border-radius:20px;font-size:11px;padding:6px 11px;min-height:34px}
.asset-chip.asset-gold,.light-mode .asset-chip.asset-gold{color:var(--gold)}
.asset-chip.asset-btc,.light-mode .asset-chip.asset-btc{color:var(--btc)}
.asset-chip.asset-gold.active,.light-mode .asset-chip.asset-gold.active{border-color:var(--gold);background:rgba(170,128,52,.1)}
.asset-chip.asset-btc.active,.light-mode .asset-chip.asset-btc.active{border-color:var(--btc);background:rgba(203,111,43,.1)}
.search-scope-note{color:var(--muted);font-size:11px;line-height:1.6;margin:0 0 12px}
.new-feed-notice{position:fixed;z-index:20;top:78px;right:32px;pointer-events:none}.new-feed-notice .button{pointer-events:auto;min-height:42px;background:var(--accent);color:white;box-shadow:var(--shadow);border-color:var(--accent2);font-size:12px;border-radius:22px}.new-feed-notice .button[hidden]{display:none}
.news-release-grid .release-actual,.light-mode .news-release-grid .release-actual{color:var(--accent2)}
.calendar-upcoming-card.is-next{border-color:var(--red)}.calendar-upcoming-card.is-next .calendar-upcoming-time{background:var(--redbg);color:var(--red)}
.calendar-preview-values dd,.light-mode .event-values b{color:var(--text)}
.pill,.light-mode .pill{background:var(--panel3);color:var(--muted)}
.pill-red,.light-mode .pill-red{background:var(--redbg);color:var(--red)}
.pill-yellow,.light-mode .pill-yellow{background:rgba(170,128,52,.1);color:var(--gold)}
.dialog p,.light-mode .dialog p{color:var(--muted)}.source-line,.light-mode .source-line{background:var(--panel2)}
.etf-dashboard .etf-kpi-primary{background:var(--panel);border-top-color:var(--etf-accent)}
.gold-etf.etf-dashboard,.light-mode .gold-etf.etf-dashboard{--etf-accent:var(--gold)}
.btc-etf.etf-dashboard,.light-mode .btc-etf.etf-dashboard{--etf-accent:var(--btc)}
.etf-dashboard .etf-news-count{color:var(--text)}
.footer-note{color:var(--muted)}
@media(max-width:860px){.new-feed-notice{top:72px;right:15px}}
@media(max-width:600px){
 #pageContent:has(> .grid-2 .news-feed) .feed-asset-filters{display:flex;flex-wrap:wrap;gap:5px;padding-bottom:9px;margin-bottom:10px!important}
 #pageContent:has(> .grid-2 .news-feed) .feed-asset-filters .filter-chip{width:auto;flex:1 0 auto;min-height:36px;padding:5px 8px;font-size:10px;border-radius:18px}
 .feed-kind-filters{margin-bottom:6px}.new-feed-notice{top:61px;left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 20px)}.new-feed-notice .button{font-size:11px;min-height:40px;padding:8px 14px}
 #pageContent:has(> .grid-2 .news-feed) .news-item .news-body{font-size:13px;line-height:1.8}
}
/* Keep the new tools compact so the first news remains above the fold. */
@media(max-width:600px){
 #pageContent:has(> .grid-2 .news-feed) .feed-asset-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:5px;padding-bottom:7px;margin-bottom:8px!important}
 #pageContent:has(> .grid-2 .news-feed) .feed-asset-filters::-webkit-scrollbar{display:none}
 #pageContent:has(> .grid-2 .news-feed) .feed-asset-filters .filter-chip{flex:0 0 auto;min-height:32px;padding:4px 9px}
}

/* Give the high-impact calendar filter its own clear red selection state. */
.calendar-browser .calendar-impact-filters .filter-chip[data-mode="red"]{background:var(--redbg);border-color:var(--red);color:var(--red);font-weight:750}
.calendar-browser .calendar-impact-filters .filter-chip[data-mode="red"]::before{content:"";display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:currentColor;vertical-align:1px}
.calendar-browser .calendar-impact-filters .filter-chip[data-mode="red"]:hover{box-shadow:0 0 0 2px var(--redbg)}
.calendar-browser .calendar-impact-filters .filter-chip[data-mode="red"].active{background:#bf2c43;border-color:#bf2c43;color:#fff;box-shadow:0 2px 7px rgba(145,30,50,.18)}
.calendar-browser .calendar-impact-filters .filter-chip[data-mode="red"].active:hover{background:#a92339;border-color:#a92339}
.calendar-browser .calendar-impact-filters .filter-chip[data-mode="red"]:focus-visible{outline:2px solid var(--red);outline-offset:3px}
/* News importance toggle. */
#pageContent .feed-kind-filters{display:flex;gap:8px}
#pageContent .feed-kind-filters .feed-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 14px;font-weight:700}
#pageContent .feed-kind-filters [data-feed-toggle="important"]{color:var(--red);border-color:var(--red);background:var(--redbg)}
#pageContent .feed-kind-filters [data-feed-toggle="important"].red-active{background:#bf2c43;border-color:#bf2c43;color:#fff}
#pageContent .feed-kind-filters [data-feed-toggle="important"].red-active:hover{background:#a92339;border-color:#a92339}
.feed-toggle-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
#pageContent .feed-kind-filters .feed-toggle[aria-pressed="true"]::after{content:"✓";font-size:11px;margin-left:2px}
#pageContent .feed-kind-filters .feed-toggle:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:600px){
 #pageContent:has(> .grid-2 .news-feed) .feed-kind-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 #pageContent:has(> .grid-2 .news-feed) .feed-kind-filters .feed-toggle{width:100%;min-height:44px;padding:7px 12px}
}
.vm-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
