:root{--diag-surface:#161616;--diag-surface-2:#1c1c1c;--diag-blue:#8fb8dc;--diag-good:#39ff14;--diag-info:#8fb8dc;--diag-warning:#ffc799;--diag-bad:#ff8080}
.diagnostics-main{padding-bottom:70px}
.diag-head-meta{display:flex;align-items:center;gap:10px;color:var(--mut);font-size:12px;font-variant-numeric:tabular-nums}.diag-head-meta button,.diag-toolbar button,.diag-filters button{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px;padding:5px 9px;font:inherit;cursor:pointer}.diag-head-meta button:hover,.diag-toolbar button:hover,.diag-filters button:hover{border-color:var(--accent);color:var(--accent)}
.diag-status-bar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);background:var(--panel);margin-bottom:10px}.diag-status-cell{min-width:0;padding:9px 10px;border-right:1px solid var(--line)}.diag-status-cell:last-child{border-right:0}.diag-label{display:block;color:var(--mut);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.diag-status-cell strong{display:block;margin-top:4px;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.diag-status-cell small{display:block;margin-top:2px;color:var(--mut);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-healthy,.good-text{color:var(--diag-good)}.status-delayed,.status-stale,.status-warning,.warn{color:var(--diag-warning)}.status-disconnected,.status-error,.bad-text{color:var(--diag-bad)}.status-unknown,.unavailable{color:var(--mut)}
.diag-toolbar,.diag-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:10px}.range-group{display:flex;gap:3px}.range-group button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:#24201d}.diag-toolbar label,.diag-filters label{font-size:12px;color:var(--mut)}.diag-toolbar input,.diag-toolbar select,.diag-filters input,.diag-filters select{min-height:31px;padding:4px 7px;border:1px solid var(--line);border-radius:3px;background:var(--panel);color:var(--ink);font:inherit;font-size:12px}.custom-range{display:flex;align-items:center;gap:4px}.live-toggle{margin-left:auto;display:flex;align-items:center;gap:5px}.diag-muted{color:var(--mut);font-size:12px;font-variant-numeric:tabular-nums}.diag-toolbar .diag-muted{margin-left:auto}
.diag-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:12px}.diag-metric{min-width:0;padding:9px 10px;background:var(--panel)}.diag-metric span,.diag-metric small{display:block;color:var(--mut);font-size:11px}.diag-metric strong{display:block;margin:2px 0;font-size:20px;line-height:1.1;font-variant-numeric:tabular-nums}.diag-metric.good strong{color:var(--diag-good)}.diag-metric.warn strong{color:var(--diag-warning)}.diag-metric.bad strong{color:var(--diag-bad)}.diag-metric.unavailable strong{color:var(--mut)}
.diag-section{border:1px solid var(--line);background:var(--panel);margin-bottom:12px}.diag-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 10px;border-bottom:1px solid var(--line)}.diag-section h2{font-size:14px;line-height:1.2;margin:0;font-weight:650}.timeline-section{padding-bottom:8px}.audio-timeline{position:relative;height:40px;margin:10px;background:#101010;border:1px solid var(--line);overflow:hidden}.timeline-unknown-fill{position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(160,160,160,.06) 8px 9px);pointer-events:none}.timeline-segment{position:absolute;top:0;height:100%;border:0;border-right:1px solid rgba(0,0,0,.5);cursor:pointer;z-index:1}.timeline-segment:hover{filter:brightness(1.35)}.timeline-recognised_music{background:rgba(57,255,20,.62)}.timeline-unidentified_music{background:rgba(255,199,153,.8)}.timeline-capture_outage{background:rgba(255,128,128,.75)}.timeline-unknown{background:rgba(143,184,220,.7)}.timeline-empty{display:grid;place-items:center;height:100%;color:var(--mut);font-size:12px}.timeline-legend{display:flex;gap:12px;flex-wrap:wrap;padding:0 10px;font-size:11px;color:var(--mut)}.timeline-legend span::before{content:"";display:inline-block;width:8px;height:8px;margin-right:4px;background:currentColor}.legend-recognised{color:var(--diag-good)}.legend-unidentified{color:var(--diag-warning)}.legend-outage{color:var(--diag-bad)}.legend-unknown{color:var(--diag-info)}.legend-unavailable{color:var(--mut)}
.diag-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:12px}.diag-grid .diag-section{min-width:0}.provider-section .table-wrap{max-height:270px;overflow:auto}.provider-section table{font-size:12px}.provider-section th,.provider-section td{padding:6px 8px;white-space:nowrap}.availability{font-size:11px;color:var(--mut)}.availability.configured{color:var(--diag-good)}.capability-list{padding:8px 10px}.capability{display:grid;grid-template-columns:10px 82px 1fr;align-items:baseline;gap:6px;padding:5px 0;border-bottom:1px solid rgba(80,80,80,.5);font-size:12px}.capability:last-child{border-bottom:0}.cap-dot{width:7px;height:7px;border-radius:50%;background:var(--mut)}.capability.available .cap-dot{background:var(--diag-good)}.capability.available strong{color:var(--diag-good)}.capability.unavailable strong{color:var(--mut)}.capability>span:last-child{color:var(--mut)}
.activity-section{margin-top:12px}.activity-section>.diag-section-head{align-items:center}.diag-filters{padding:8px 10px 0;margin:0}.diag-filters input{flex:1 1 260px;min-width:180px}.activity-table-wrap{max-height:none;overflow-x:auto}.activity-table{min-width:980px;font-size:12px}.activity-table thead th{position:sticky;top:0;z-index:2;padding:8px;background:var(--bg);box-shadow:0 2px 4px rgba(0,0,0,.28)}.activity-table td{padding:6px 8px;vertical-align:top}.activity-table tbody tr{cursor:pointer}.activity-table tbody tr:hover td{background:rgba(255,199,153,.08)}.activity-table .event-time{white-space:nowrap;color:var(--hacker-secondary);font-variant-numeric:tabular-nums}.event-type{display:inline-block;padding:2px 5px;border:1px solid var(--line);border-radius:3px;color:var(--info,var(--diag-info));font-size:11px}.severity-warning .event-type{color:var(--diag-warning);border-color:rgba(255,199,153,.42)}.severity-error .event-type{color:var(--diag-bad);border-color:rgba(255,128,128,.45)}.event-detail{min-width:330px;color:var(--ink)}.result-warning{color:var(--diag-warning)}.result-error{color:var(--diag-bad)}.result-info{color:var(--diag-info)}.provenance-historical,.provenance-inferred{color:var(--mut)}.provenance-observed{color:var(--diag-good)}
.rescan-backlog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--line);background:var(--diag-surface-2)}.rescan-backlog>div{min-width:0;padding:8px 10px}.rescan-backlog>div+div{border-left:1px solid var(--line)}.rescan-label,.rescan-backlog small{display:block;color:var(--mut);font-size:12px;line-height:1.35}.rescan-backlog strong{display:block;margin:2px 0;font-size:16px;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--diag-info)}.rescan-backlog.has-review strong:last-of-type{color:var(--diag-warning)}.rescan-backlog.unavailable strong{color:var(--mut)}
.blindspots{padding:8px 10px;color:var(--mut);font-size:12px}.blindspots p{margin:3px 0}.diag-detail-panel{position:fixed;right:0;top:0;bottom:0;width:min(590px,100%);z-index:20;display:none;overflow:auto;padding:18px 20px 30px;background:var(--panel);border-left:1px solid var(--line);box-shadow:-16px 0 40px rgba(0,0,0,.45)}.diag-detail-panel.open{display:block}.diag-detail-panel>button{position:absolute;right:15px;top:13px;border:1px solid var(--line);background:none;color:var(--ink);border-radius:3px;font-size:19px;line-height:1;padding:3px 8px;cursor:pointer}.diag-detail-panel h2{margin:3px 40px 12px 0;font-size:20px}.diag-detail-panel h3{margin:18px 0 7px;color:var(--mut);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.detail-fields div{border:1px solid var(--line);padding:6px 8px;min-width:0}.detail-fields b,.detail-fields span{display:block}.detail-fields b{font-size:11px;color:var(--mut)}.detail-fields span{margin-top:2px;font-size:12px;overflow-wrap:anywhere}.diag-detail-panel pre{max-height:420px;overflow:auto;padding:10px;background:#101010;border:1px solid var(--line);color:var(--diag-info);font:12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.detail-boundary{color:var(--mut);font-size:12px}.diag-panel-backdrop{position:fixed;inset:0;z-index:19;display:none;background:rgba(8,10,12,.75)}.diag-panel-backdrop.open{display:block}
@media(max-width:1100px){.diag-status-bar{grid-template-columns:repeat(4,minmax(0,1fr))}.diag-status-cell:nth-child(4){border-right:0}.diag-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.diag-grid{grid-template-columns:1fr}}
@media(max-width:760px){.diag-head-meta{width:100%;justify-content:space-between}.diag-status-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.diag-status-cell:nth-child(odd){border-right:1px solid var(--line)}.diag-status-cell:nth-child(even){border-right:0}.diag-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.range-group{width:100%;overflow-x:auto}.range-group button{white-space:nowrap}.live-toggle{margin-left:0}.diag-toolbar .diag-muted{width:100%;margin-left:0}.detail-fields{grid-template-columns:1fr}.rescan-backlog{grid-template-columns:1fr}.rescan-backlog>div+div{border-left:0;border-top:1px solid var(--line)}}
.timeline-possible_music{background:rgba(96,170,255,.62)}.timeline-speech{background:rgba(255,214,82,.78)}.timeline-advertisement{background:rgba(255,168,82,.82)}.timeline-jingle{background:rgba(208,126,255,.78)}.timeline-silence{background:rgba(170,170,170,.7)}.timeline-clipping{background:rgba(255,92,92,.85)}.legend-possible-music{color:#60aaff}.legend-speech{color:#ffd652}.legend-advertisement{color:#ffa852}.legend-jingle{color:#d07eff}.legend-silence{color:#b8b8b8}.legend-clipping{color:#ff5c5c}
.rescan-backlog.has-review>div:last-child strong{color:var(--diag-warning)}
.rescan-backlog.has-review>div:first-child strong{color:var(--diag-info)}
.detections-section{margin-top:12px}
.detections-table-wrap{overflow-x:auto}
.detections-table{min-width:620px;font-size:12px}
.detections-table thead th{position:sticky;top:0;z-index:2;padding:8px;background:var(--bg);box-shadow:0 2px 4px rgba(0,0,0,.28)}
.detections-table td{padding:6px 8px;vertical-align:top}
.detections-table tbody tr{cursor:pointer}
.detections-table tbody tr:hover td{background:rgba(255,199,153,.08)}
.diag-clip{border:1px solid var(--line);background:none;color:var(--accent);border-radius:3px;padding:3px 8px;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}
.diag-clip:hover{border-color:var(--accent);color:var(--accent)}
.diag-clip.playing{border-color:var(--accent);color:var(--ink);background:rgba(255,199,153,.12)}
