.report-filter { margin-bottom: 14px; }
.report-actions { display: flex; gap: 8px; }
.report-filter-grid { display: grid; grid-template-columns: repeat(4, 1fr) auto; gap: 12px; align-items: end; padding: 18px; }
.report-filter-grid label { color: var(--muted); font-size: 10px; }
.report-filter-grid input, .report-filter-grid select { display: block; width: 100%; margin-top: 6px; padding: 11px; color: #fff; background: #07182d; border: 1px solid var(--line); border-radius: 8px; }
.report-filter-grid button, .report-actions button { border: 0; border-radius: 8px; padding: 11px 15px; cursor: pointer; font-weight: 700; color: #04101e; background: linear-gradient(90deg, var(--blue), var(--blue2)); }
.report-metrics { grid-template-columns: repeat(auto-fit, minmax(175px, 1fr)); }
.report-metrics article{position:relative;overflow:hidden;border-top:3px solid var(--metric-color,#16bceb);box-shadow:inset 0 18px 35px color-mix(in srgb,var(--metric-color,#16bceb) 10%,transparent)}
.report-metrics article:after{content:"";position:absolute;right:-20px;bottom:-28px;width:90px;height:90px;border-radius:50%;background:var(--metric-color,#16bceb);opacity:.08}.report-metrics small{display:block;color:#7e96af;font-size:9px;margin-top:4px}
.report-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 14px; }
.chart-panel { min-height:350px; border-top:3px solid var(--chart-color,#16bceb); background:radial-gradient(circle at 20% 0%,color-mix(in srgb,var(--chart-color,#16bceb) 13%,transparent),transparent 48%),#0b2744; }
.chart-panel canvas { display: block; width: 100%; height: 280px; padding: 12px; }
.chart-kind { color:#d8efff; background:color-mix(in srgb,var(--chart-color,#16bceb) 26%,#102d49); border:1px solid var(--chart-color,#16bceb); border-radius:20px; padding:6px 10px; font-size:8px; }
.dynamic-module-charts { grid-template-columns:repeat(auto-fit,minmax(360px,1fr)); margin-top:14px; }
.report-detail { margin-top: 14px; }
.report-table-wrap { overflow: auto; }
.report-detail table { width: 100%; border-collapse: collapse; min-width: 800px; }
.report-detail th, .report-detail td { padding: 11px 14px; border-bottom: 1px solid var(--line); text-align: left; font-size: 9px; }
.report-detail th { color: var(--muted); background: #07182d; position: sticky; top: 0; }
@media (max-width: 900px) {
  .report-filter-grid { grid-template-columns: 1fr 1fr; }
  .report-metrics { grid-template-columns: 1fr 1fr; }
  .report-grid { grid-template-columns: 1fr; }
}
@media print {
  aside, header, .report-filter, #notice { display: none !important; }
  .shell { display: block; }
  .view { display: none !important; }
  #reportsView { display: block !important; padding: 0; color: #111; }
  body, .panel, .metrics article { background: #fff !important; color: #111 !important; border-color: #bbb !important; }
}
