/* Quartz */
.qz-stat { border: 1px solid #e1e5eb; border-radius: 12px; padding: .8rem 1rem; background: #fff; font-size: .85rem; color: #495057; }
.qz-stat-num { font-size: 1.8rem; font-weight: 700; color: #1f2937; line-height: 1.1; }
.qz-stat-bad .qz-stat-num { color: #e03131; }
.qz-jobs .qz-job-row td { border-top: 2px solid #e9ecef; }
.qz-jobs .qz-trigger-row td { border-top: 0; background: #fbfcfd; }
.qz-presets { display: flex; flex-wrap: wrap; gap: .25rem; margin-top: .3rem; }
.qz-presets button { font-size: .72rem; border: 1px solid #dee2e6; background: #fff; border-radius: 999px; padding: .05rem .5rem; color: #495057; }
.qz-presets button:hover { border-color: #0b7285; color: #0b7285; }
.qz-error { white-space: pre-wrap; font-size: .75rem; max-height: 280px; overflow: auto; background: #fff5f5; color: #a61e1e; padding: .5rem; border-radius: 6px; }
