.admin-analytics { padding: 8px 0 24px; color: #22242a; }
.analytics-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; }
.analytics-toolbar h2 { margin: 0; font-size: 26px; }
.analytics-toolbar p, .analytics-note { color: #697080; font-size: 14px; }
.analytics-controls { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.analytics-controls label { display: flex; align-items: center; gap: 8px; }
.admin-analytics select, .admin-analytics input { min-height: 42px; padding: 9px 12px; border: 1px solid #ccd2d8; border-radius: 6px; background: white; color: inherit; font: inherit; }
.admin-analytics a { color: #176ab6; text-underline-offset: 3px; font-size: 14px; }
#analyticsStatus { min-height: 24px; margin: 20px 0; color: #697080; }
#analyticsStatus[data-error="true"] { color: #b03434; }
.analytics-totals { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding: 24px 0; margin: 0 0 28px; border-block: 1px solid #e2e6ea; }
.analytics-totals dt { font-size: 14px; color: #626971; }
.analytics-totals dd { margin: 8px 0 0; font-size: 36px; font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.admin-analytics h3 { font-size: 18px; margin: 0 0 18px; }
.analytics-chart { display: flex; align-items: end; justify-content: space-between; gap: 3px; height: 160px; border-bottom: 1px solid #cbd2d8; background: repeating-linear-gradient(to top, transparent 0 39px, #edf0f3 39px 40px); }
.analytics-chart > span { flex: 1; min-width: 0; max-width: 100px; height: calc(var(--value) * 100%); background: #2183bd; border-radius: 3px 3px 0 0; }
.analytics-chart > span:nth-child(even) { background: #268b7c; }
.analytics-chart-dates { display: flex; justify-content: space-between; margin: 8px 0 24px; font-size: 12px; color: #697080; }
.analytics-table-wrap { max-height: 300px; overflow: auto; }
.analytics-table-wrap table { width: 100%; border-collapse: collapse; font-size: 14px; font-variant-numeric: tabular-nums; }
.analytics-table-wrap th, .analytics-table-wrap td { padding: 10px 12px; text-align: right; border-bottom: 1px solid #e5e8eb; white-space: nowrap; }
.analytics-table-wrap th { position: sticky; top: 0; background: #f3f5f7; font-weight: 500; }
.analytics-table-wrap th:first-child, .analytics-table-wrap td:first-child { text-align: left; }
.admin-analytics [hidden] { display: none !important; }
@media (max-width: 600px) {
  .analytics-toolbar h2 { font-size: 22px; }
  .analytics-controls { gap: 12px; }
  .analytics-totals { gap: 20px 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .analytics-totals dt { font-size: 12px; min-height: 34px; }
  .analytics-totals dd { font-size: 26px; }
  .analytics-table-wrap th, .analytics-table-wrap td { padding: 9px 8px; }
}
