.sr-news-toolbar { display:flex; align-items:center; gap:10px; padding:9px 12px; border-bottom:1px solid var(--border); }
.sr-news-toolbar small { color:var(--muted); font-size:10px; }
#view-strategies #sr-news-open { font-size:11px; }
#sr-news-open span { color:var(--accent); padding-left:3px; }
.sr-news-context { display:flex; flex-wrap:wrap; align-items:center; gap:0; padding:8px 12px 0; }
#view-strategies .sr-news-context button { min-height:24px; font-size:10px; border-radius:5px 0 0 5px; padding:3px 6px; margin-bottom:4px; }
#view-strategies .sr-news-context .sn-chip-remove { border-left:0; border-radius:0 5px 5px 0; margin-right:5px; padding-left:3px; }
#view-strategies .sr-news-context .sn-suggestion { border-radius:5px; margin-right:5px; color:var(--muted); }
.sr-text a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.sn-dialog { box-sizing:border-box; padding:0; width:min(960px,calc(100vw - 40px)); max-width:none; max-height:calc(100dvh - 48px); margin:auto; border:1px solid var(--border-2); border-radius:14px; background:var(--panel); color:var(--txt); box-shadow:0 24px 100px #0009; font-family:var(--ui); }
.sn-dialog::backdrop { background:#000a; backdrop-filter:blur(5px); }
.sn-head { display:flex; align-items:center; gap:18px; padding:20px 22px; border-bottom:1px solid var(--border); }
#view-strategies .sn-head h2 { margin:0 0 5px; font-size:20px; font-weight:600; letter-spacing:-.4px; text-transform:none; color:var(--txt); }
.sn-head p { margin:0; font-size:12px; color:var(--muted); }
.sn-free { margin-left:auto; color:var(--muted); font-size:11px; }
.sn-layout { display:grid; grid-template-columns:290px minmax(0,1fr); height:min(620px,calc(100dvh - 210px)); min-height:260px; }
.sn-directory { display:flex; flex-direction:column; min-height:0; padding:16px 10px 10px; border-right:1px solid var(--border); }
.sn-search { display:flex; align-items:center; margin:0 4px; padding:0 8px; color:var(--muted); border:1px solid var(--border-2); border-radius:7px; }
#view-strategies .sn-search input { border:0; background:transparent; min-width:0; width:100%; }
.sn-filters { display:flex; gap:7px; padding:10px 4px; }
#view-strategies .sn-filters select { min-width:0; flex:1; font-size:11px; }
.sn-list { overflow:auto; scrollbar-width:thin; }
#view-strategies button.sn-source { width:100%; display:flex; gap:10px; text-align:left; padding:11px 9px; white-space:normal; border-color:transparent; margin-bottom:3px; }
#view-strategies button.sn-source.selected { border-color:var(--border-2); background:var(--hover); color:var(--txt); }
.sn-monogram { display:flex; align-items:center; justify-content:center; flex:none; height:34px; width:34px; border:1px solid var(--border-2); border-radius:8px; color:var(--txt-2); font-size:11px; font-weight:600; }
.sn-logo { width:34px; height:34px; box-sizing:border-box; object-fit:contain; flex:none; background:#fff; padding:4px; border-radius:6px; }
.sr-news-context .sn-logo { width:15px; height:15px; padding:1px; border-radius:3px; }
.sn-source-heading > .sn-logo { display:block; width:46px; height:46px; margin-bottom:14px; padding:5px; }
.sn-source-name { flex:1; min-width:0; display:grid; gap:5px; }
.sn-source-name strong { font-size:12px; font-weight:550; }
.sn-source-name small { color:var(--muted); font-size:10px; }
.sn-in-context { color:var(--accent); font-size:9px; }
.sn-connected { color:var(--muted); }
.sn-preview { overflow:auto; scrollbar-width:thin; padding:24px 26px; min-width:0; }
.sn-source-heading > span { font-size:11px; color:var(--muted); }
.sn-source-heading h3 { font-size:25px; line-height:1.2; font-weight:600; letter-spacing:-.6px; margin:10px 0; }
.sn-source-heading p { font-size:13px; line-height:1.6; color:var(--txt-2); margin:0 0 10px; max-width:52ch; }
.sn-source-heading a { font-size:11px; color:var(--muted); text-decoration:none; }
.sn-actions { display:flex; align-items:center; gap:12px; min-height:34px; margin:22px 0; }
.sn-actions small { color:var(--muted); font-size:10px; }
.sn-context-switch { display:flex; align-items:center; gap:8px; font-size:12px; flex:1; }
.sn-articles-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:20px; border-top:1px solid var(--border); }
.sn-articles-head h4 { margin:0; font-size:12px; font-weight:550; }
#view-strategies .sn-articles-head button { font-size:10px; min-height:25px; }
.sn-fetched { color:var(--muted); font-size:10px; display:block; margin-top:8px; }
.sn-articles article { padding:17px 0; border-bottom:1px solid var(--border); }
.sn-articles time { display:block; font-size:10px; color:var(--muted); margin-bottom:7px; }
.sn-articles article a { display:block; color:var(--txt); font-size:13px; font-weight:550; line-height:1.6; text-decoration:none; overflow-wrap:anywhere; }
.sn-articles article a:hover { color:var(--accent); }
.sn-articles article p { margin:6px 0 0; color:var(--txt-2); font-size:12px; line-height:1.65; overflow-wrap:anywhere; }
.sn-empty { display:flex; align-items:center; gap:9px; padding:18px 6px; color:var(--muted); font-size:12px; }
.sn-feed-error { padding:24px 0; font-size:12px; }
.sn-feed-error strong { color:var(--down); font-weight:500; }
.sn-feed-error p { color:var(--muted); line-height:1.6; }
.sn-foot { display:flex; justify-content:space-between; gap:10px; border-top:1px solid var(--border); padding:13px 22px; font-size:10px; color:var(--muted); }
.sn-notice:empty { display:none; }
.sn-notice { padding:0 22px 12px; font-size:11px; line-height:1.5; color:var(--txt-2); }
@media(max-width:680px){
 .sn-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); }
 .sn-head { padding:15px; gap:10px; }.sn-head h2 {font-size:18px}.sn-free {font-size:9px;max-width:85px;line-height:1.5}
 .sn-layout { grid-template-columns:1fr; height:calc(100dvh - 195px); overflow:auto; display:block; }
 .sn-directory { height:220px; padding:10px; border-right:0; border-bottom:1px solid var(--border); }
 .sn-list { display:grid; grid-template-columns:1fr 1fr; align-content:start; }
 #view-strategies button.sn-source { gap:7px; padding:8px 6px; }.sn-monogram { width:25px;height:29px;font-size:9px; }.sn-source-name strong {font-size:11px}
 .sn-preview { padding:20px 16px; overflow:visible; }.sn-source-heading h3 {font-size:22px}.sn-foot {padding:11px 15px;font-size:9px}.sn-actions {flex-wrap:wrap}
}
