.ppt-monitor { max-width:1600px; margin:auto; }
.ppt-heading { display:flex; align-items:center; justify-content:space-between; margin:0 0 22px; gap:16px; }
.ppt-heading h3 { font-size:25px; margin:6px 0 8px; }
.ppt-eyebrow { color:#4f6ef7; font-size:12px; font-weight:700; letter-spacing:1px; }
.ppt-readonly { background:#e9eefc; color:#3651b9; padding:7px 12px; border-radius:20px; white-space:nowrap; font-size:12px; }
.ppt-filters { display:flex; flex-wrap:wrap; gap:12px; align-items:end; padding:18px; border:1px solid #e4e7ec; border-radius:14px; background:white; }
.ppt-filters label,.ppt-compare-controls label { display:flex; flex-direction:column; gap:6px; color:#475467; font-size:12px; }
.ppt-filters input,.ppt-filters select,.ppt-compare-controls select { padding:9px; border:1px solid #d0d5dd; border-radius:8px; background:white; color:#202124; min-width:0; max-width:100%; }
.ppt-filters input[name=project] { width:100px; }
.ppt-search { flex:1; min-width:220px; }
.ppt-status { min-height:38px; padding:12px 0; color:#667085; font-size:12px; }
.ppt-metrics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.ppt-metric { background:#fff; border:1px solid #e4e7ec; border-radius:12px; padding:18px 14px; display:flex; flex-direction:column; gap:10px; }
.ppt-metric:first-child { background:#172554; color:white; border-color:#172554; }
.ppt-metric span { font-size:12px; }
.ppt-metric strong { font-size:28px; letter-spacing:-.5px; }
.ppt-metric small { font-size:11px; opacity:.72; }
.ppt-note { font-size:12px; color:#667085; line-height:1.8; margin:12px 0 18px; }
.ppt-panels { display:grid; grid-template-columns:1fr 1.15fr; gap:18px; align-items:start; }
.ppt-monitor .card { padding:20px; margin-bottom:18px; min-width:0; }
.ppt-monitor h3 { margin-bottom:10px; }
.ppt-monitor .muted { font-size:12px; line-height:1.7; }
.ppt-scroll { overflow:auto; max-height:500px; }
.ppt-monitor table { width:100%; border-collapse:collapse; margin-top:14px; }
.ppt-monitor th,.ppt-monitor td { text-align:left; padding:12px 10px; border-bottom:1px solid #edf0f3; font-size:12px; vertical-align:top; }
.ppt-monitor th { color:#667085; background:#f9fafb; white-space:nowrap; }
.ppt-code { display:block; margin-top:6px; color:#667085; font-size:11px; overflow-wrap:anywhere; }
.ppt-badge { display:inline-block; padding:4px 8px; border-radius:6px; background:#f2f4f7; white-space:nowrap; font-size:12px; }
.ppt-badge.direct,.ppt-badge.repaired { color:#067647; background:#ecfdf3; }
.ppt-badge.draft { color:#175cd3; background:#eff8ff; }
.ppt-badge.failed { color:#b42318; background:#fef3f2; }
.ppt-badge.fallback,.ppt-badge.pending { color:#93370d; background:#fffaeb; }
.ppt-empty { padding:30px!important; text-align:center!important; color:#667085; }
.ppt-compare-controls { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.ppt-compare-controls label { flex:1; min-width:150px; }
.ppt-dialog { margin:auto; width:min(1000px,94vw); max-height:90vh; border:0; border-radius:16px; padding:0; box-shadow:0 20px 80px #0004; }
.ppt-dialog::backdrop { background:#10182899; }
.ppt-dialog-head { position:sticky; top:0; z-index:1; display:flex; justify-content:space-between; align-items:center; background:white; padding:16px 24px; border-bottom:1px solid #e4e7ec; }
.ppt-detail { padding:24px; line-height:1.7; overflow-wrap:anywhere; }
.ppt-detail h4 { margin:20px 0 12px; }
.ppt-task-id { color:#667085; font:12px monospace; margin-bottom:12px; }
.ppt-timeline { list-style:none; padding-left:14px; }
.ppt-timeline li { border-left:2px solid #e4e7ec; padding:0 0 18px 18px; font-size:12px; }
.ppt-timeline strong { display:block; font-size:14px; }
.ppt-raw details { border:1px solid #e4e7ec; border-radius:8px; margin:8px 0; }
.ppt-raw summary { cursor:pointer; padding:12px; font-weight:600; }
.ppt-raw pre { margin:0; padding:14px; max-height:420px; overflow:auto; background:#f8fafc; font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:1200px) { .ppt-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); } .ppt-panels { grid-template-columns:1fr; } }
@media(max-width:640px) { .ppt-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .ppt-heading h3 { font-size:20px; } .ppt-filters label { flex:1; min-width:130px; } .ppt-detail { padding:16px; } }
