/* Shared source pill styles for Newstro pages (index.php, deck.php, sources.php)
   Keep visual parity across pages. Page-specific card variants remain inline per page. */

/* General pill scaffolding (most pills assume rounded, bold, small text) */
.pill-base{ display:inline-flex; align-items:center; border-radius:9999px; padding:2px 6px; font-size:11px; font-weight:700; }
.pill-generic{ background:#f3f4f6; color:#111; border:1px solid #e5e7eb; }
.dark .pill-generic{ background:#27272a; color:#f4f4f5; border-color:#3f3f46; }

/* X (Twitter) pill */
.source-x{ background:#ffffff !important; color:#111111 !important; border:1px solid #e5e7eb !important; border-radius:9999px !important; padding:1px 6px !important; display:inline-flex !important; align-items:center !important; gap:6px !important; font-weight:800 !important; }
.dark .source-x{ background:#0b0b0b !important; border-color:#27272a !important; color:#f4f4f5 !important; }
.source-x .x-box{ width:16px; height:16px; border-radius:3px; background:#000; display:inline-flex; align-items:center; justify-content:center; }
.source-x .x-box img{ width:11px; height:11px; display:block; }
.source-x .x-handle{ font-weight:900 !important; letter-spacing:.01em; }

/* Reddit pill */
.source-reddit{ background:#ffffff !important; color:#111111 !important; border:1px solid #e5e7eb !important; border-radius:9999px !important; padding:1px 6px !important; display:inline-flex !important; align-items:center !important; gap:6px !important; font-weight:800 !important; }
.dark .source-reddit{ background:#0b0b0b !important; border-color:#27272a !important; color:#f4f4f5 !important; }
.source-reddit .rdt-logo{ width:16px; height:16px; border-radius:50%; background:#FF4500; display:inline-flex; align-items:center; justify-content:center; }
.source-reddit .rdt-logo img{ width:11px; height:11px; display:block; }
.source-reddit .rdt-name{ font-weight:900 !important; letter-spacing:.01em; }
.source-reddit .rdt-subreddit{ opacity:0.85; }

/* CTV News pill */
.source-ctvnews{ background:#ffffff !important; color:#111111 !important; border:1px solid #e5e7eb !important; border-radius:6px !important; padding:1px 6px !important; display:inline-flex !important; align-items:center !important; gap:4px !important; font-weight:900 !important; }
.dark .source-ctvnews{ background:#0b0b0b !important; border-color:#27272a !important; color:#f4f4f5 !important; }
.source-ctvnews .ctv-mark{ display:inline-flex; align-items:center; gap:2px; }
.source-ctvnews .ctv-mark .c{ width:16px; height:16px; border-radius:50%; background:#E11931; color:#ffffff; display:inline-flex; align-items:center; justify-content:center; font-size:10px; line-height:1; font-weight:900; }
.source-ctvnews .ctv-mark .t{ width:16px; height:16px; border-radius:3px; background:#0A5BD9; color:#ffffff; display:inline-flex; align-items:center; justify-content:center; font-size:10px; line-height:1; font-weight:900; }
.source-ctvnews .ctv-mark .v{ width:16px; height:16px; background:#1BAA5A; color:#ffffff; display:inline-flex; align-items:center; justify-content:center; font-size:9px; line-height:1; font-weight:900; clip-path: polygon(50% 100%, 0% 0%, 100% 0%); }
.source-ctvnews .ctv-news-word{ font-weight:900 !important; letter-spacing:.02em !important; }

/* Sky News pill */
.source-skynews{ background:#ffffff !important; color:#111111 !important; border:1px solid #e5e7eb !important; border-radius:6px !important; padding:1px 6px !important; display:inline-flex !important; align-items:center !important; gap:4px !important; font-weight:900 !important; }
.source-skynews .sky-word{ color:#111111 !important; font-weight:800 !important; }
.source-skynews .news-word{ background:#C30000 !important; color:#ffffff !important; padding:1px 5px !important; border-radius:4px !important; font-weight:900 !important; }

/* Newstro brand pill (logo-only) */
.source-newstro{ background:transparent !important; color:inherit !important; border:0 !important; padding:0 !important; }
.source-newstro .newstro-logo{ width:120px !important; height:auto !important; display:block !important; }

/* White House (seal + text) */
.source-whitehouse{ background:#ffffff !important; color:#111111 !important; border:1px solid #e5e7eb !important; border-radius:6px !important; padding:1px 6px !important; }
.dark .source-whitehouse{ background:#0b0b0b !important; border-color:#27272a !important; color:#f4f4f5 !important; }
.wh-seal{ display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; border-radius:50%; background:#0b3d91; color:#fff; margin-right:4px; }
.wh-name{ font-weight:900 !important; letter-spacing:.02em; }

/* Express (crest + word) */
.source-express{ background:#ffffff !important; color:#111111 !important; border:1px solid #111111 !important; border-radius:9999px !important; padding:2px 8px !important; text-transform:uppercase; letter-spacing:.04em; font-weight:900 !important; font-size:11px !important; display:inline-flex; align-items:center; gap:6px; }
.source-express .express-crest{ position:relative; display:inline-block; width:12px; height:12px; background:#C00000; border-radius:2px; box-shadow: inset 0 0 0 1px rgba(0,0,0,0.25);} 

/* Major source pills (unified) */
.source-fox{ background: linear-gradient(135deg, #0C2340, #0A1B33) !important; color:#fff !important; border-color:#0C2340 !important; border-left:4px solid #C8102E !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:800 !important; }
.source-nypost{ background: linear-gradient(135deg, #D0021B, #A40010) !important; color:#fff !important; border-color:#A40010 !important; border-left:4px solid #000 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.03em; font-weight:900 !important; text-shadow:0 1px 0 #000; }
.source-wapo{ background: linear-gradient(135deg, #0A0A0A, #1F1F1F) !important; color:#fff !important; border-color:#1F1F1F !important; border-left:4px solid #ffffff !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.04em; font-weight:900 !important; }
.source-reuters{ background: linear-gradient(135deg, #FF6A00, #FF8C1A) !important; color:#fff !important; border-color:#CC5500 !important; border-left:4px solid #CC5500 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:800 !important; }
.source-cnn{ background: linear-gradient(135deg, #CC0000, #990000) !important; color:#fff !important; border-color:#990000 !important; border-left:4px solid #ffffff !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:900 !important; }
.source-axios{ background: linear-gradient(135deg, #000000, #111827) !important; color:#fff !important; border-color:#0b1220 !important; border-left:4px solid #00B2FF !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.03em; font-weight:800 !important; }
.source-thehill{ background: linear-gradient(135deg, #1E40AF, #1E3A8A) !important; color:#fff !important; border-color:#1E3A8A !important; border-left:4px solid #ffffff !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.03em; font-weight:900 !important; }
.source-memo{ background: linear-gradient(135deg, #2563EB, #1D4ED8) !important; color:#fff !important; border-color:#1D4ED8 !important; border-left:4px solid #F59E0B !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:800 !important; }
.source-drudge{ background:#000 !important; color:#fff !important; border-color:#000 !important; text-transform:uppercase; letter-spacing:.06em; font-weight:900 !important; border-radius:0 !important; }
.source-politico{ background:#fff !important; color:#E4002B !important; border:1px solid #E4002B !important; border-left:4px solid #E4002B !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:900 !important; }
.dark .source-politico{ background:#0b0b0b !important; color:#ff6b81 !important; border-color:#7a0016 !important; border-left-color:#7a0016 !important; }
.source-nyt{ background:#fff !important; color:#000 !important; border:1px solid #000 !important; border-left:4px solid #000 !important; padding-left:10px !important; text-transform:none !important; letter-spacing:normal !important; font-weight:800 !important; font-family: Georgia, "Times New Roman", Times, serif !important; }
.dark .source-nyt{ background:#0b0b0b !important; color:#f4f4f5 !important; border-color:#e5e7eb !important; border-left-color:#e5e7eb !important; }
.source-wsj{ background:#ffffff !important; color:#111111 !important; border:1px solid #111111 !important; border-left:4px solid #111111 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.06em; font-weight:900 !important; font-family: Georgia, "Times New Roman", Times, serif !important; border-radius:0 !important; }
.source-vox{ background:#FFD500 !important; color:#111 !important; border-color:#E6B800 !important; border-left:4px solid #111 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:900 !important; }
.dark .source-vox{ background:#1a1a00 !important; color:#f4f4f5 !important; border-color:#FFD500 !important; border-left-color:#FFD500 !important; }
.source-yahoo{ background: linear-gradient(135deg, #6001D2, #3B0078) !important; color:#ffffff !important; border-color:#3B0078 !important; border-left:4px solid #A855F7 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.04em; font-weight:900 !important; border-radius:6px !important; }
.source-verge{ background: linear-gradient(135deg, #FF0050, #FFB300) !important; color:#ffffff !important; border-color:#7a1a00 !important; border-left:4px solid #111111 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.02em; font-weight:900 !important; }
.source-cnet{ background:#ffffff !important; color:#E32B2B !important; border:1px solid #E32B2B !important; border-left:4px solid #E32B2B !important; padding-left:10px !important; text-transform:none !important; letter-spacing:.01em !important; font-weight:900 !important; border-radius:9999px !important; }
.dark .source-cnet{ background:#0b0b0b !important; color:#fca5a5 !important; border-color:#7a0a0a !important; border-left-color:#7a0a0a !important; }
.source-wired{ background:transparent !important; color:#111111 !important; border:none !important; padding:0 !important; display:inline-flex !important; align-items:center !important; gap:2px !important; }
.dark .source-wired{ color:#f4f4f5 !important; }
.source-wired .wired-box{ display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; background:#000000; color:#ffffff; font-weight:900; font-family:'Inter', ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; border-radius:2px; line-height:1; font-size:11px; border:1px solid #000; }
.source-wired .wired-box.inv{ background:#ffffff; color:#000000; border-color:#000000; }
.source-beast{ background:#E11931 !important; color:#fff !important; border-color:#E11931 !important; border-left:4px solid #E11931 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.06em; font-weight:900 !important; }

/* NBC News */
.source-nbcnews{ background-image: linear-gradient(90deg, #E01E2D 0, #E01E2D 4px, #F6A800 4px, #F6A800 8px, #6CC04A 8px, #6CC04A 12px, #1C88C7 12px, #1C88C7 16px, #68217A 16px, #68217A 20px, #0A1B2E 20px, #091423 100%) !important; color:#ffffff !important; border-color:#0A1B2E !important; padding-left:14px !important; text-transform:uppercase; letter-spacing:.03em; font-weight:900 !important; }

/* National Pulse */
.source-nationalpulse{ background: linear-gradient(135deg, #FAEBDD, #FDF7F2) !important; color:#8B3A2E !important; border-color:#E7D8C8 !important; border-left:4px solid #C4512D !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.03em; font-weight:900 !important; }

/* CBS News */
.source-cbs{ background:#ffffff !important; color:#111111 !important; border:1px solid #000000 !important; border-left:4px solid #000000 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.03em; font-weight:900 !important; border-radius:6px !important; }

/* TMZ */
.source-tmz{ background:#000 !important; color:#FF0400 !important; border-color:#FF0400 !important; border-style:solid !important; border-width:2px !important; border-left-width:6px !important; border-radius:0 !important; padding-left:10px !important; text-transform:uppercase; letter-spacing:.04em; font-weight:900 !important; }

/* BBC label variant (chip) */
.source-bbc{ background:#9E1515 !important; color:#ffffff !important; border:1px solid #ffffff !important; border-radius:2px !important; text-transform:uppercase; letter-spacing:.04em; font-weight:900 !important; }
