/* ── news.css — news feed module styles ──────────────────────────────── */

/* Source badge */
.src-badge {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  font-size: .6rem;
  font-weight: 800;
  text-transform: uppercase;
  padding: .18rem .5rem;
  border-radius: 9999px;
  color: white;
  flex-shrink: 0;
}
.src-kaohoon  { background: #e91e63; }
.src-hoonsmart{ background: #ea580c; }
.src-mitihoon { background: #2563eb; }
.src-thunhoon { background: #16a34a; }
.src-iaa      { background: #0057bb; }
.src-set      { background: #b45309; }
.src-fin      { background: #7c3aed; }
.src-oppday   { background: #0891b2; }

/* Source tab */
.src-tab {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  padding: .35rem .875rem;
  border-radius: 9999px;
  font-size: .75rem;
  font-weight: 700;
  border: 1.5px solid transparent;
  background: #f1f5f9;
  color: #64748b;
  cursor: pointer;
  transition: all .18s;
  white-space: nowrap;
}
.src-tab:hover { background: #e2e8f0; color: #334155; }
.src-tab.active { color: white; border-color: transparent; }
.src-tab.all.active       { background: #334155; }
.src-tab.kaohoon.active   { background: #e91e63; }
.src-tab.hoonsmart.active { background: #ea580c; }
.src-tab.mitihoon.active  { background: #2563eb; }
.src-tab.thunhoon.active  { background: #16a34a; }
.src-tab.iaa.active       { background: #0057bb; }
.src-tab.set.active       { background: #b45309; }
.src-tab.fin.active       { background: #7c3aed; }
.src-tab.oppday.active    { background: #0891b2; }
.dark .src-tab            { background: #1e293b; color: #94a3b8; }
.dark .src-tab:hover      { background: #334155; }

/* News card */
.news-card {
  background: white;
  border: 1.5px solid #f1f5f9;
  border-radius: 1rem;
  padding: 1rem 1.125rem;
  transition: border-color .18s, box-shadow .18s;
}
.news-card:hover { border-color: #bfdbfe; box-shadow: 0 4px 20px rgba(37,99,235,.07); }
.dark .news-card       { background: #1e293b; border-color: #334155; }
.dark .news-card:hover { border-color: #3b82f6; }

/* Mini stat card */
.mini-stat {
  border-radius: .5rem;
  border: 1px solid #e2e8f0;
  padding: .25rem .5rem;
  text-align: center;
  background: white;
  cursor: pointer;
  transition: box-shadow .15s;
  min-width: 52px;
}
.mini-stat:hover { box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.dark .mini-stat { background: #0f172a; border-color: #334155; }

/* Stock ticker pill */
.stock-pill {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  font-size: .75rem;
  font-weight: 800;
  color: #1d4ed8;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: .375rem;
  padding: .15rem .55rem;
  text-decoration: none;
  transition: background .15s;
}
.stock-pill:hover { background: #dbeafe; }
.dark .stock-pill { color: #93c5fd; background: #1e3a5f; border-color: #3b82f6; }

/* Search input */
.search-input {
  background: white;
  border: 1.5px solid #e2e8f0;
  border-radius: .75rem;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 600;
  color: #374151;
  width: 100%;
  transition: border-color .18s;
  outline: none;
}
.search-input:focus { border-color: #2563eb; }
.dark .search-input { background: #1e293b; border-color: #334155; color: #e2e8f0; }

/* Dropdown trigger button */
.pi-btn { display:inline-flex; align-items:center; gap:.375rem; padding:.4rem .875rem; border-radius:.5rem; font-size:.8125rem; font-weight:700; cursor:pointer; border:none; transition:opacity .15s; }
.pi-btn:hover { opacity:.85; }
.pi-btn-ghost { background:#f1f5f9; color:#374151; }
.dark .pi-btn-ghost { background:#1e293b; color:#cbd5e1; }

/* Dropdown panel */
.dropdown-menu {
  position: absolute;
  left: 0; top: calc(100% + 6px);
  min-width: 170px;
  background: white;
  border-radius: .75rem;
  box-shadow: 0 10px 40px rgba(0,0,0,.13);
  border: 1px solid #f1f5f9;
  z-index: 9999;
  padding: .375rem;
}
.dark .dropdown-menu { background: #1e293b; border-color: #334155; }
.dropdown-item {
  display: flex; align-items: center; gap: .625rem;
  padding: .5rem .75rem; border-radius: .5rem;
  font-size: .8125rem; font-weight: 600; color: #374151;
  cursor: pointer; transition: background .15s; text-decoration: none;
  user-select: none;
}
.dropdown-item:hover { background: #f8fafc; }
.dropdown-item.active { color: #2563eb; font-weight: 700; }
.dark .dropdown-item { color: #e2e8f0; }
.dark .dropdown-item:hover { background: #334155; }
.dark .dropdown-item.active { color: #93c5fd; }

/* Toggle chip */
.toggle-chip {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  padding: .4rem .85rem;
  border-radius: 9999px;
  font-size: .75rem;
  font-weight: 700;
  border: 1.5px solid #e2e8f0;
  background: white;
  color: #64748b;
  cursor: pointer;
  user-select: none;
  transition: all .15s;
}
.toggle-chip.on { background: #2563eb; border-color: #2563eb; color: white; }
.dark .toggle-chip    { background: #1e293b; border-color: #334155; color: #94a3b8; }
.dark .toggle-chip.on { background: #2563eb; border-color: #2563eb; color: white; }
