#ct-stats { --ov-calls:#367cab;--ov-signups:#16836c; }
.ov-toolbar,.ov-custom,.ov-heading,.ov-health,.ov-roster-counts,.ov-pagination { display:flex;align-items:center;gap:16px;flex-wrap:wrap; }
.ov-toolbar { align-items:end;justify-content:space-between;margin-bottom:22px; }
.ov-toolbar label,.ov-queue-label { display:grid;gap:6px;font-size:12px;font-weight:650; }
.ov-toolbar select,.ov-toolbar input,.ov-queue-label select { min-height:40px;max-width:100%;min-width:0; }
.ov-custom { align-items:end;flex:1; }.ov-custom[hidden] { display:none; }
#ov-status,.ov-range { font-size:12px;color:var(--ct-muted); }.ov-range { line-height:1.6;margin:10px 0; }
.ov-range span { display:inline-block; }.ov-metrics { gap:22px; }.ov-metrics small { line-height:1.6; }
.ov-metrics>div:first-child strong { color:var(--ink); }.ov-metrics>div:nth-child(3) strong { color:var(--ov-signups); }
.ov-health { gap:10px 24px;font-size:12px;padding:15px 0;color:var(--ct-muted); }.ov-health strong { color:var(--ink);font-variant-numeric:tabular-nums; }
.ov-trend { margin:20px 0 30px; }.ov-heading { justify-content:space-between; }.ov-heading h3,.ov-splits h3 { font-size:16px;margin:0;letter-spacing:0; }
.ov-legend { display:flex;gap:16px;font-size:11px;flex-wrap:wrap; }.ov-legend span::before { content:'';display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:2px;background:var(--ov-calls); }.ov-legend .ov-key-signups::before { background:var(--ov-signups); }
.ov-chart { display:flex;gap:14px;overflow-x:auto;padding:28px 2px 8px;margin:0;scrollbar-width:thin; }
.ov-bucket { flex:1 0 62px;text-align:center;min-width:0;max-width:170px; }.ov-bucket>span { display:block;font-size:10px;line-height:1.4;margin-top:10px;color:var(--ct-muted); }
.ov-bars { height:116px;display:flex;gap:5px;justify-content:center;align-items:end;border-bottom:1px solid var(--line); }
.ov-series { height:100%;width:23px;display:flex;flex-direction:column;justify-content:end;align-items:center;position:relative; }
.ov-series b { font-size:10px;font-weight:600;line-height:16px;flex-shrink:0; }.ov-series i { display:block;width:100%;min-height:1px;flex-shrink:0;border-radius:3px 3px 0 0;background:var(--ov-calls); }.ov-signups i { background:var(--ov-signups); }
.ov-note { color:var(--ct-muted);font-size:12px;line-height:1.65;margin:10px 0; }.ov-caution { padding:8px 0 20px; }
.ov-splits { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px; }.ov-splits>section { min-width:0; }.ov-splits h4 { font-size:13px;margin:20px 0 8px; }
.ov-table-scroll { overflow-x:auto;scrollbar-width:thin; }.ov-table { border-collapse:collapse;width:100%;font-size:12px;font-variant-numeric:tabular-nums; }
.ov-table th,.ov-table td { padding:12px 8px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap; }.ov-table thead th { color:var(--ct-muted);font-size:11px;font-weight:500; }
.ov-table th:first-child { text-align:left;padding-left:0;white-space:normal;min-width:94px; }.ov-table th:last-child,.ov-table td:last-child { padding-right:0; }
.ov-table tbody th { font-weight:650; }.ov-table small { display:block;color:var(--ct-muted);font-size:10px;font-weight:400;margin-top:4px; }
.ov-details { border-top:1px solid var(--line);padding:12px 0; }.ov-details>summary { display:flex;align-items:center;gap:12px;flex-wrap:wrap;cursor:pointer;font-size:13px;font-weight:650;padding:8px 0;list-style:none; }
.ov-details>summary::-webkit-details-marker { display:none; }.ov-details>summary::before { content:'+';font-size:18px;font-weight:400;width:12px;flex-shrink:0; }.ov-details[open]>summary::before { content:'−'; }.ov-details>summary>span { margin-left:auto;color:var(--ct-muted);font-size:11px;font-weight:400; }
.ov-roster-counts { align-items:start;padding:16px 0;font-size:12px; }.ov-roster-counts span { flex:1;min-width:110px;line-height:1.6; }.ov-roster-counts strong { display:block;font-size:22px; }
.ov-list { list-style:none;padding:0;margin:0;font-size:13px; }.ov-list li { display:flex;gap:16px;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line); }
.ov-queue-label { max-width:320px;margin:16px 0; }.ov-queue { margin:0;padding:0;list-style:none; }.ov-queue li { display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px; }.ov-queue li>div { display:grid;gap:5px;min-width:0;overflow-wrap:anywhere; }.ov-queue span { color:var(--ct-muted); }.ov-queue button { flex-shrink:0;font-size:11px;min-height:40px;padding:8px 12px; }
.ov-pagination { justify-content:flex-end;font-size:12px;margin:14px 0; }.ov-pagination button { width:38px;height:38px;padding:0; }.ov-empty { color:var(--ct-muted);font-size:13px;padding:25px 0; }
.ov-definitions { font-size:12px;line-height:1.7;max-width:900px; }.ov-definitions dt { font-weight:650;margin-top:14px; }.ov-definitions dd { margin:4px 0;color:var(--ct-muted); }
.ov-error { display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 0;font-size:13px; }
#ov-body[aria-busy="true"] { opacity:.6;pointer-events:none; }
#ct-stats :focus-visible { outline:2px solid var(--ov-calls);outline-offset:4px; }
[data-theme="sombre"] #ct-stats { --ov-calls:#72b9e7;--ov-signups:#52cbb0; }
@media(max-width:1100px) { .ov-splits { grid-template-columns:1fr;gap:26px; } }
@media(max-width:600px) {
 .ov-toolbar { gap:12px; }.ov-custom { flex-basis:100%;gap:10px; }.ov-custom label { flex:1;min-width:0; }.ov-custom input { width:100%; }.ov-custom button { width:100%; }
 .ov-metrics { gap:20px 14px;padding:20px 0; }.ov-metrics span { font-size:11px;line-height:1.5; }.ov-metrics strong { font-size:27px; }.ov-metrics small { font-size:10px; }
 .ov-heading { gap:12px; }.ov-health { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;font-size:11px;line-height:1.5; }
 .ov-chart { gap:10px; }.ov-bucket { flex-basis:55px; }.ov-bars { height:96px; }.ov-details>summary { gap:8px; }.ov-details>summary>span { margin-left:20px;width:100%; }
 .ov-table { font-size:11px; }.ov-table th,.ov-table td { padding:11px 5px; }.ov-table thead th { font-size:10px; }.ov-table th:first-child { min-width:78px; }
 .ov-queue li { gap:8px; }.ov-queue button { padding:8px;font-size:10px; }.ov-roster-counts { gap:18px; }
}
