/* ============================================================
   STICKERBOOK ADMIN - SCHEDULED JOBS (admin-jobs.js)
   Builds on admin-theme.css (rp-*) and reuses the Services page's
   layout pieces (rn-*, admin-renewals.css).
   ============================================================ */

/* Top strip */
.jb-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: var(--sb-surface); border: 1px solid var(--sb-border); border-radius: 12px; margin-bottom: 16px; overflow: hidden; max-width: 960px; }
.jb-strip > div { padding: 12px 16px; border-left: 1px solid var(--sb-border); min-width: 0; }
.jb-strip > div:first-child { border-left: none; }
.jb-strip b { display: block; font-size: 20px; font-weight: 700; color: var(--sb-text); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.jb-strip .rn-cs { overflow: hidden; text-overflow: ellipsis; }
.jb-strip > div.jb-bad { background: var(--sb-red-soft); box-shadow: inset 3px 0 0 var(--sb-red); }
.jb-strip > div.jb-bad b { color: #B91C1C; }

/* Table */
.jb-c-when { width: 230px; } .jb-c-st { width: 190px; }
.jb-when { display: block; color: var(--sb-text); font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.jb-table .rp-sub { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.jb-table .rp-pill + .rp-sub { margin-top: 4px; }
.rp-table tbody tr.jb-row-bad td { background: #FFF7F7; }
.rp-table tbody tr.jb-row-bad:hover td { background: #FFF1F1; }
.rp-item.jb-row-bad { background: #FFF7F7; border-color: rgba(220,38,38,0.3); }

/* Color edge and pills */
.jb-e-ok i { background: #14B8A6; }
.jb-e-failed i, .jb-e-missed i { background: var(--sb-red); }
.jb-e-off i { background: #D97706; }
.jb-e-new i, .jb-e-running i, .jb-e-waiting i { background: #D4D4D8; }
.jb-s-ok { background: rgba(15,118,110,0.1); color: #0F766E; }
.jb-s-bad { background: var(--sb-red-soft); color: var(--sb-red); }
.jb-s-warn { background: var(--sb-amber-soft); color: var(--sb-amber); }
.jb-s-wait { background: var(--sb-surface-2); color: var(--sb-muted); }

/* Panel */
.jb-msg { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; max-height: 160px; overflow-y: auto; }
.jb-code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }
.jb-runs { border: 1px solid var(--sb-border); border-radius: 10px; overflow: hidden; }
.jb-run { display: flex; justify-content: space-between; gap: 10px; padding: 8px 12px; border-top: 1px solid var(--sb-border); font-size: 12px; color: var(--sb-text-2); }
.jb-run:first-child { border-top: none; }
.jb-run b { font-weight: 600; color: var(--sb-muted); white-space: nowrap; }
.jb-run b.jb-ok { color: #0F766E; }
.jb-run b.jb-bad { color: var(--sb-red); }

@media (max-width: 768px) {
  .jb-strip { grid-template-columns: 1fr 1fr; }
  .jb-strip > div:nth-child(odd) { border-left: none; }
  .jb-strip > div:nth-child(n+3) { border-top: 1px solid var(--sb-border); }
  .jb-strip b { font-size: 17px; }
  .rn-item .rn-grow span + span { margin-top: 1px; }
}
