/* Chips and ticker badges are UI, not prose — exclude them from text selection
   so a reader who copies an article pastes clean text (matches Perplexity). */
.news-cite,.news-ticker{-webkit-user-select:none;-moz-user-select:none;user-select:none}
.news-cite{--news-accent:var(--wp--preset--color--palette-color-3, var(--theme-palette-color-3, #888));display:inline-flex;align-items:center;gap:5px;padding:1px 8px;margin:0 2px;border-radius:6px;background:color-mix(in srgb, var(--news-accent) 16%, transparent);font-size:.78em;line-height:1.6;color:var(--news-accent);cursor:pointer;vertical-align:1px;white-space:nowrap}
.news-cite:hover{background:color-mix(in srgb, var(--news-accent) 26%, transparent)}
.news-cite:focus-visible{outline:2px solid var(--news-accent);outline-offset:1px}
.news-cite .more{color:color-mix(in srgb, var(--news-accent) 65%, transparent)}

.news-pop{--news-bg:var(--theme-palette-color-7, #232325);--news-text:var(--theme-palette-color-4, #f3f3f3);--news-muted:var(--theme-palette-color-3, #9a9a9a);--news-line:color-mix(in srgb, var(--news-text) 13%, transparent);position:absolute;z-index:9999;width:330px;max-width:calc(100vw - 24px);background:var(--news-bg);border:1px solid var(--news-line);border-radius:14px;box-shadow:0 14px 44px rgba(0,0,0,.32);padding:0;font-size:14px;color:var(--news-text);overflow:hidden}
.news-pop__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-bottom:1px solid var(--news-line)}
.news-pop__nav{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--news-muted);white-space:nowrap}
.news-pop__nav button{border:none;background:none;cursor:pointer;color:var(--news-muted);font-size:18px;line-height:1;padding:0}
.news-pop__nav button:hover{color:var(--news-text)}
.news-pop__count{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--news-muted);white-space:nowrap}
.news-pop__stack{display:inline-flex}
.news-pop__stack img{width:19px;height:19px;border-radius:50%;border:2px solid var(--news-bg);margin-left:-7px;background:color-mix(in srgb, var(--news-muted) 35%, transparent);object-fit:cover}
.news-pop__stack img:first-child{margin-left:0}
.news-pop__src{display:block;padding:12px 14px 14px;text-decoration:none;color:inherit}
.news-pop__site{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--news-muted);margin-bottom:7px}
.news-pop__site img{width:16px;height:16px;border-radius:4px}
.news-pop__title{font-size:15px;font-weight:600;line-height:1.35;color:var(--news-text)}
.news-pop__src:hover .news-pop__title{color:var(--wp--preset--color--palette-color-1, var(--theme-palette-color-1, #4aa3ff))}
.news-pop__exc{font-size:13px;color:var(--news-muted);line-height:1.5;margin-top:7px}

.news-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:10000;opacity:0;pointer-events:none;transition:opacity .2s}
.news-backdrop.open{opacity:1;pointer-events:auto}
.news-drawer{--news-bg:var(--theme-palette-color-7, #232325);--news-text:var(--theme-palette-color-4, #f3f3f3);--news-muted:var(--theme-palette-color-3, #9a9a9a);--news-line:color-mix(in srgb, var(--news-text) 12%, transparent);position:fixed;left:0;right:0;bottom:0;z-index:10001;background:var(--news-bg);color:var(--news-text);border-radius:16px 16px 0 0;max-height:78vh;overflow:auto;transform:translateY(100%);transition:transform .28s cubic-bezier(.32,.72,0,1);padding-bottom:max(16px,env(safe-area-inset-bottom))}
.news-drawer.open{transform:none}

.news-src{display:flex;gap:10px;padding:12px 16px;text-decoration:none;color:inherit}
.news-src+.news-src{border-top:1px solid var(--news-line)}
.news-src img{width:20px;height:20px;border-radius:5px;flex:none}
.news-src__site{font-size:12px;color:var(--news-muted);margin-bottom:2px}
.news-src__title{font-size:14px;font-weight:600;line-height:1.35;margin-bottom:3px;color:var(--news-text)}
.news-src:hover .news-src__title{color:var(--wp--preset--color--palette-color-1, var(--theme-palette-color-1, #4aa3ff))}
.news-src__exc{font-size:13px;color:var(--news-muted);line-height:1.45}

/* Summary / Report toggle */
.news-modes__tabs{display:inline-flex;gap:2px;background:#f1f0ee;border-radius:999px;padding:3px;margin:0 0 18px}
.news-modes__tab{border:none;background:none;font:inherit;font-size:14px;padding:6px 18px;border-radius:999px;cursor:pointer;color:#666;line-height:1.3}
.news-modes__tab:hover{color:#222}
.news-modes__tab.is-active{background:#fff;color:#111;box-shadow:0 1px 2px rgba(0,0,0,.1);font-weight:500}
.news-modes[data-mode="summary"] .news-mode--report{display:none}
.news-modes[data-mode="report"] .news-mode--summary{display:none}
.news-mode--summary ul{margin:0;padding-left:1.15em}
.news-mode--summary li{margin:.5em 0;line-height:1.6}

/* Live stock-ticker badge */
.news-ticker{display:inline-flex;align-items:center;margin:0 2px;border-radius:6px;font-size:.8em;font-weight:600;line-height:1.6;vertical-align:1px;white-space:nowrap;transition:background .3s ease,color .3s ease}
.news-ticker__link{display:inline-flex;align-items:center;gap:3px;padding:0 6px;color:inherit;text-decoration:none}
/* loading skeleton while the quote is fetched */
.news-ticker.is-loading{background:color-mix(in srgb, currentColor 13%, transparent);animation:news-pulse 1.15s ease-in-out infinite}
.news-ticker.is-loading .news-ticker__link{visibility:hidden}
.news-ticker.is-up .news-ticker__link,.news-ticker.is-down .news-ticker__link{animation:news-fade .4s ease}
@keyframes news-pulse{0%,100%{opacity:.5}50%{opacity:.9}}
@keyframes news-fade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.news-ticker.is-loading{animation:none}.news-ticker .news-ticker__link{animation:none}}
/* plain fallback first, for engines without relative-color syntax */
.news-ticker.is-up{color:#0f7a42;background:#e6f6ec}
.news-ticker.is-down{color:#c5302a;background:#fdeced}
/* number = palette color (positive=12, negative=11); background = the same color at 10% */
.news-ticker.is-up{--news-fin:var(--finance-positive-color, var(--theme-palette-color-12, #0f7a42));color:var(--news-fin);background:rgb(from var(--news-fin) r g b / .1)}
.news-ticker.is-down{--news-fin:var(--finance-negative-color, var(--theme-palette-color-11, #c5302a));color:var(--news-fin);background:rgb(from var(--news-fin) r g b / .1)}
.news-ticker.is-up:hover{background:rgb(from var(--news-fin) r g b / .2)}
.news-ticker.is-down:hover{background:rgb(from var(--news-fin) r g b / .2)}
.news-ticker__arrow{font-size:.95em;line-height:1}
