/* ══ RECOVERY QUEUE ═══════════════════════════════════════════════════════════
   Daily work queue — overdue units sorted by urgency
   ══════════════════════════════════════════════════════════════════════════ */

/* Search input in header */
.rq-search {
  height: 34px;
  padding: 0 12px 0 32px;
  border: 1.5px solid var(--line, #E5E7EB);
  border-radius: 8px;
  font-size: 13px;
  background: var(--surface, #fff) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") 10px center no-repeat;
  color: var(--text, #0F172A);
  width: 240px;
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.rq-search:focus {
  border-color: #2563EB;
  box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}

/* ── Bucket tabs ──────────────────────────────────────────────────────────── */
.rq-tabs {
  display: flex;
  gap: 4px;
  padding: 0 0 4px;
  overflow-x: auto;
}
.rq-tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border: 1.5px solid var(--line, #E5E7EB);
  border-radius: 8px;
  font-size: 12px;
  font-weight: 500;
  color: var(--t2, #6B7280);
  background: var(--surface, #fff);
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.rq-tab:hover { border-color: #2563EB; color: #2563EB; }
.rq-tab.on {
  background: #2563EB;
  border-color: #2563EB;
  color: #fff;
  font-weight: 600;
}
.rq-tab-bdg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 99px;
  font-size: 10px;
  font-weight: 700;
  background: rgba(0,0,0,0.08);
  color: inherit;
}
.rq-tab.on .rq-tab-bdg { background: rgba(255,255,255,0.22); color: #fff; }
.rq-tab-bdg.red   { background: rgba(220,38,38,0.12); color: #B91C1C; }
.rq-tab-bdg.amber { background: rgba(217,119,6,0.12);  color: #92400E; }
.rq-tab.on .rq-tab-bdg.red,
.rq-tab.on .rq-tab-bdg.amber { background: rgba(255,255,255,0.22); color: #fff; }

/* ── Table card ───────────────────────────────────────────────────────────── */
.rq-card {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #E5E7EB);
  border-radius: 12px;
  overflow: hidden;
}

.rq-tbl {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.rq-tbl thead th {
  background: #F8FAFC;
  padding: 10px 14px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  color: #374151;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  border-bottom: 2px solid #E2E8F0;
  white-space: nowrap;
}

.rq-tbl tbody tr {
  border-bottom: 1px solid var(--line, #F1F5F9);
  cursor: pointer;
  transition: background 0.12s;
}
.rq-tbl tbody tr:last-child { border-bottom: none; }
.rq-tbl tbody tr:hover { background: #EFF6FF !important; }

.rq-tbl tbody td {
  padding: 11px 14px;
  vertical-align: middle;
}

/* Row severity tints */
.rq-row-critical { background: #FFF5F5 !important; }
.rq-row-warn     { background: #FFFBEB !important; }

/* ── Cell styles ──────────────────────────────────────────────────────────── */
.rq-unit-chip {
  display: inline-block;
  padding: 2px 8px;
  background: #F1F5F9;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  color: #374151;
  white-space: nowrap;
}

.rq-muted { color: var(--t2, #6B7280); font-size: 12px; }

.rq-amt {
  font-weight: 700;
  font-size: 13px;
  color: var(--text, #0F172A);
  font-variant-numeric: tabular-nums;
}
.rq-amt-critical { color: #B91C1C !important; }

.rq-days {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 700;
  background: #F1F5F9;
  color: #374151;
}
.rq-days.red    { background: #FEE2E2; color: #B91C1C; }
.rq-days.amber  { background: #FEF3C7; color: #92400E; }
.rq-days.yellow { background: #FEF9C3; color: #854D0E; }

/* ── Action buttons ───────────────────────────────────────────────────────── */
.rq-acts {
  display: flex;
  gap: 4px;
  align-items: center;
}
.rq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 1.5px solid var(--line, #E5E7EB);
  border-radius: 7px;
  background: var(--surface, #fff);
  color: var(--t2, #6B7280);
  cursor: pointer;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
  flex-shrink: 0;
}
.rq-btn:hover         { border-color: #2563EB; color: #2563EB; background: #EFF6FF; }
.rq-btn.green:hover   { border-color: #16A34A; color: #16A34A; background: #F0FDF4; }
.rq-btn.blue:hover    { border-color: #7C3AED; color: #7C3AED; background: #F5F3FF; }
.rq-btn.ghost:hover   { border-color: #64748B; color: #0F172A; background: #F8FAFC; }

/* ── Empty state ──────────────────────────────────────────────────────────── */
.rq-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 56px 24px;
  gap: 10px;
  text-align: center;
}
.rq-empty-title {
  font-size: 15px;
  font-weight: 600;
  color: var(--text, #0F172A);
}
.rq-empty-sub {
  font-size: 13px;
  color: var(--t3, #9CA3AF);
}

/* ── Pagination ───────────────────────────────────────────────────────────── */
.rq-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 4px 4px;
  gap: 12px;
  flex-wrap: wrap;
}
.rq-pager-info {
  font-size: 12px;
  color: var(--t2, #6B7280);
}
.rq-pager-btns {
  display: flex;
  gap: 4px;
}
.rq-pg-btn {
  height: 32px;
  min-width: 32px;
  padding: 0 10px;
  border: 1.5px solid var(--line, #E5E7EB);
  border-radius: 7px;
  font-size: 12px;
  font-weight: 500;
  background: var(--surface, #fff);
  color: var(--t2, #6B7280);
  cursor: pointer;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.rq-pg-btn:hover:not(:disabled) { border-color: #2563EB; color: #2563EB; }
.rq-pg-btn.on { background: #2563EB; border-color: #2563EB; color: #fff; font-weight: 700; }
.rq-pg-btn:disabled { opacity: 0.35; cursor: default; }

/* ── Dark mode ────────────────────────────────────────────────────────────── */
[data-theme="dark"] .rq-search           { background-color: var(--surface-2, #1e2230); }
[data-theme="dark"] .rq-tab              { background: var(--surface, #14182a); }
[data-theme="dark"] .rq-card            { background: var(--surface, #14182a); }
[data-theme="dark"] .rq-tbl thead th    { background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.55); border-bottom-color: rgba(255,255,255,0.08); }
[data-theme="dark"] .rq-tbl tbody tr:hover { background: rgba(37,99,235,0.08) !important; }
[data-theme="dark"] .rq-row-critical    { background: rgba(220,38,38,0.07) !important; }
[data-theme="dark"] .rq-row-warn        { background: rgba(217,119,6,0.07)  !important; }
[data-theme="dark"] .rq-unit-chip       { background: rgba(255,255,255,0.07); border-color: rgba(255,255,255,0.10); color: rgba(255,255,255,0.85); }
[data-theme="dark"] .rq-days            { background: rgba(255,255,255,0.07); color: rgba(255,255,255,0.70); }
[data-theme="dark"] .rq-days.red        { background: rgba(220,38,38,0.18);  color: #FCA5A5; }
[data-theme="dark"] .rq-days.amber      { background: rgba(217,119,6,0.18);  color: #FCD34D; }
[data-theme="dark"] .rq-days.yellow     { background: rgba(202,138,4,0.18);  color: #FDE68A; }
[data-theme="dark"] .rq-btn             { background: var(--surface, #14182a); }
[data-theme="dark"] .rq-pg-btn          { background: var(--surface, #14182a); }
