.analytics-kpis .stat { border-top-color:var(--accent); }
.analytics-kpis .stat strong { font-variant-numeric:tabular-nums; }
.analytics-kpis .stat { gap:10px; }
.analytics-change { border-top:1px solid var(--line); padding-top:12px; margin-top:auto; font-size:12px; color:var(--muted); }
.analytics-missing { color:#855518; }
.analytics-table-value { font-size:24px; font-variant-numeric:tabular-nums; }
.analytics-no-chart { display:flex; min-height:150px; flex-direction:column; justify-content:center; padding:22px; margin:20px 0; background:var(--paper); border:1px dashed var(--line); border-radius:8px; }
.analytics-no-chart strong { font-size:14px; }.analytics-no-chart p { margin:8px 0 0; color:var(--muted);font-size:13px; }
.analytics-chart { height:160px; display:flex; align-items:end; gap:3px; padding:16px 0 0; border-bottom:1px solid var(--line); margin-top:20px; overflow-x:auto; }
.analytics-bar-slot { flex:1 0 5px; height:100%; display:flex; align-items:end; justify-content:center; }
.analytics-bar { display:block; width:100%; background:var(--accent); min-height:2px; border-radius:3px 3px 0 0; }
.analytics-gap { color:#8c9ba5; font-size:18px; }
.analytics-daily { max-height:300px; overflow:auto; }.analytics-daily td { padding:7px 10px; }
.analytics-trend > small { margin-top:14px; }
.analytics-sources { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:18px; }
.analytics-source { border:1px solid var(--line); border-radius:8px; padding:20px; display:flex; flex-direction:column; }
.analytics-source h3 { margin:0; font-size:16px; }.analytics-source p { margin:14px 0; font-size:13px; }
.analytics-source .actions { margin:auto 0 0; padding-top:18px; font-size:13px; }
.analytics-source .badge { font-size:11px; }.analytics-source .section-head { align-items:start; }
.analytics-kpis .stat small { overflow-wrap:anywhere; }
@media(max-width:700px) { .analytics-sources { grid-template-columns:1fr; }.analytics-kpis { grid-template-columns:1fr 1fr; }.analytics-kpis .stat { padding:14px; }.analytics-chart { gap:2px; } }
