/* ==========================================================
   components/status.css — 데이터 원천 상태 (components/status.js)
   .src-list > .src-row(원천 한 줄) · .schip(수집 완료/지연/공개 전 배지)
   ========================================================== */

.src-list { display: grid; gap: 8px; }
.src-row {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px;
  padding: 13px 14px; border-radius: var(--r-md); background: #fff; border: 1px solid var(--line);
}
.src-row.is-warn { border-color: var(--warn-line); background: #FFFCF6; }
.src-row.is-mute { border-style: dashed; }
.src-main { display: grid; min-width: 0; gap: 1px; }
.src-main b { font-size: 15px; font-weight: 800; letter-spacing: -.02em; }
.src-name { font-size: 12.5px; color: var(--ink-3); }
.src-side { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.src-basis { font-size: 12.5px; font-weight: 700; color: var(--ink-2); font-variant-numeric: tabular-nums; }
.src-note { flex-basis: 100%; font-size: 12.5px; color: var(--warn-deep); }
.src-row.is-mute .src-note { color: var(--ink-3); }

.src-list.is-compact { gap: 0; }
.src-list.is-compact .src-row { padding: 10px 2px; border: 0; border-bottom: 1px solid var(--line-2); border-radius: 0; background: none; }
.src-list.is-compact .src-row:last-child { border-bottom: 0; }
.src-list.is-compact .src-main b { font-size: 14px; }

.schip {
  display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 9px 0 7px;
  border-radius: 999px; font-size: 12px; font-weight: 800; white-space: nowrap;
}
.schip .ico { width: 13px; height: 13px; }
.schip.ok { background: var(--ok-soft); color: var(--ok-deep); }
.schip.warn { background: var(--warn-soft); color: var(--warn-deep); }
.schip.mute { background: var(--surface-2); color: var(--ink-3); box-shadow: inset 0 0 0 1px var(--line); }
.schip.err { background: var(--exp-soft); color: var(--exp-deep); }
