/* ── oppday.css — OPPDAY feed module styles ──────────────────────────── */

/* Type badge */
.type-badge {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  font-size: .7rem;
  font-weight: 800;
  padding: .2rem .6rem;
  border-radius: .375rem;
  text-transform: uppercase;
}
.type-qa  { background: #eff6ff; color: #2563eb; border: 1px solid #bfdbfe; }
.type-pdf { background: #f5f3ff; color: #7c3aed; border: 1px solid #ddd6fe; }
.dark .type-qa  { background: #1e3a5f; color: #93c5fd; border-color: #3b82f6; }
.dark .type-pdf { background: #2e1a5e; color: #c4b5fd; border-color: #8b5cf6; }

/* OPPDAY card */
.opd-card {
  background: white;
  border: 1.5px solid #f1f5f9;
  border-radius: 1.125rem;
  padding: 1.125rem 1.25rem;
  transition: border-color .18s, box-shadow .18s;
  position: relative;
  overflow: hidden;
}
.opd-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  border-radius: 9px 0 0 9px;
}
.opd-card.qa::before  { background: #2563eb; }
.opd-card.pdf::before { background: #7c3aed; }
.opd-card:hover { border-color: #e0e7ff; box-shadow: 0 4px 20px rgba(99,102,241,.08); }
.dark .opd-card       { background: #1e293b; border-color: #334155; }
.dark .opd-card:hover { border-color: #6366f1; }

/* Mini stat */
.mini-stat {
  border-radius: .5rem;
  border: 1px solid #e2e8f0;
  padding: .3rem .6rem;
  text-align: center;
  background: white;
  min-width: 56px;
  transition: box-shadow .15s;
  cursor: pointer;
}
.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: .875rem;
  font-weight: 900;
  color: #1d4ed8;
  background: #eff6ff;
  border: 1.5px solid #bfdbfe;
  border-radius: .5rem;
  padding: .2rem .65rem;
  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; }

/* Filter chips */
.filter-chip {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  padding: .35rem .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;
}
.filter-chip:hover { border-color: #94a3b8; color: #334155; }
.filter-chip.all.active { background: #334155; border-color: #334155; color: white; }
.filter-chip.qa.active  { background: #2563eb; border-color: #2563eb; color: white; }
.filter-chip.pdf.active { background: #7c3aed; border-color: #7c3aed; color: white; }
.dark .filter-chip       { background: #1e293b; border-color: #334155; color: #94a3b8; }
.dark .filter-chip:hover { border-color: #64748b; }

/* Score color helpers */
.score-hi  { color: #16a34a; }
.score-mid { color: #0891b2; }
.score-lo  { color: #dc2626; }

/* Pagination */
.page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .4rem .9rem;
  border-radius: .625rem;
  font-size: .75rem;
  font-weight: 700;
  border: 1.5px solid #e2e8f0;
  background: white;
  color: #64748b;
  cursor: pointer;
  transition: all .15s;
}
.page-btn:hover:not(:disabled) { background: #f1f5f9; color: #334155; border-color: #94a3b8; }
.page-btn.active  { background: #2563eb; border-color: #2563eb; color: white; }
.page-btn:disabled { cursor: not-allowed; }
.dark .page-btn { background: #1e293b; border-color: #334155; color: #94a3b8; }
.dark .page-btn:hover:not(:disabled) { background: #334155; color: #e2e8f0; }
.dark .page-btn.active { background: #2563eb; border-color: #2563eb; color: white; }
