.reports { display:grid; gap:18px; min-width:0; }
.reports__header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; }
.reports__header > div:first-child > span,
.reports__card header span { color:var(--accent); font-size:11px; font-weight:750; letter-spacing:.1em; }
.reports__header h1 { margin:5px 0 3px; color:var(--text); font-size:28px; letter-spacing:-.035em; }
.reports__header p { margin:0; color:var(--text-muted); font-size:13px; }
.reports__periodos { display:flex; gap:5px; padding:4px; border:1px solid var(--border); border-radius:12px; background:var(--panel-bg-hover); }
.reports__periodos button { min-height:34px; padding:0 12px; border:0; border-radius:8px; background:transparent; color:var(--text-muted); font:inherit; font-size:12px; font-weight:650; cursor:pointer; box-shadow:none; }
.reports__periodos button:hover { color:var(--text); background:var(--panel-bg); box-shadow:none; }
.reports__periodos button.is-active { background:var(--panel-bg); color:var(--accent); box-shadow:0 1px 3px rgba(15,23,42,.09); }
.reports__status { min-height:18px; color:var(--text-muted); font-size:12px; }
.reports__status:empty { display:none; }
.reports__status.is-error { padding:11px 13px; border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius:10px; background:var(--accent-soft); color:var(--accent); }
.reports__kpis { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.reports__kpi { min-width:0; padding:15px; border:1px solid var(--border); border-radius:14px; background:var(--panel-bg); }
.reports__kpi span { display:block; color:var(--text-muted); font-size:11px; font-weight:650; }
.reports__kpi strong { display:block; margin-top:7px; overflow:hidden; color:var(--text); font-size:22px; letter-spacing:-.03em; text-overflow:ellipsis; }
.reports__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.reports__card { min-width:0; padding:17px; border:1px solid var(--border); border-radius:15px; background:var(--panel-bg); }
.reports__card--wide { grid-column:1 / -1; }
.reports__card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:16px; padding-bottom:12px; border-bottom:1px solid var(--border); }
.reports__card h2 { margin:3px 0 0; color:var(--text); font-size:16px; }
.reports__card header small { color:var(--text-muted); font-size:11px; }
.reports__bars { display:grid; gap:10px; }
.reports__bar { display:grid; grid-template-columns:minmax(100px,160px) 1fr auto; align-items:center; gap:10px; color:var(--text-muted); font-size:12px; }
.reports__bar > span:first-child { overflow:hidden; color:var(--text); text-overflow:ellipsis; white-space:nowrap; }
.reports__bar-track { height:7px; overflow:hidden; border-radius:999px; background:var(--panel-bg-hover); }
.reports__bar-track i { display:block; height:100%; border-radius:inherit; background:var(--accent); }
.reports__bar strong { min-width:30px; color:var(--text); text-align:right; }
.reports__details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.reports__detail { padding:11px; border:1px solid var(--border); border-radius:10px; background:var(--panel-bg-hover); }
.reports__detail span { display:block; color:var(--text-muted); font-size:10px; }
.reports__detail strong { display:block; margin-top:4px; color:var(--text); font-size:16px; }
.reports__tags { display:flex; flex-wrap:wrap; gap:9px; min-height:34px; }
.reports__tag {
  position:relative; display:inline-flex; align-items:center; gap:7px; overflow:hidden;
  padding:7px 8px 7px 10px; border:1px solid color-mix(in srgb,var(--tag-border) 58%,transparent);
  border-radius:999px; background:color-mix(in srgb,var(--tag-bg) 82%,var(--panel-bg)); color:var(--tag-fg);
  font-size:11px; font-weight:650; cursor:default;
  box-shadow:0 2px 6px color-mix(in srgb,var(--tag-border) 12%,transparent);
  animation:reports-tag-in .34s ease both; animation-delay:var(--tag-delay,0ms);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,border-color .18s ease;
}
.reports__tag::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.55) 48%,transparent 76%); transform:translateX(-135%); transition:transform .42s ease; }
.reports__tag:hover { z-index:1; transform:translateY(-3px) scale(1.025); filter:saturate(1.08); border-color:var(--tag-border); box-shadow:0 8px 18px color-mix(in srgb,var(--tag-border) 24%,transparent); }
.reports__tag:hover::before { transform:translateX(135%); }
.reports__tag-name { position:relative; z-index:1; display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.reports__tag .tag-origem-icone { width:15px; height:15px; color:currentColor; }
.reports__tag b { position:relative; z-index:1; display:grid; place-items:center; min-width:23px; height:20px; padding:0 6px; border-radius:999px; background:color-mix(in srgb,var(--tag-fg) 12%,transparent); color:var(--tag-fg); font-size:10px; font-variant-numeric:tabular-nums; }
@keyframes reports-tag-in { from { opacity:0; transform:translateY(5px) scale(.97); } to { opacity:1; transform:none; } }
.reports__insights { display:grid; gap:8px; }
.reports__insight { padding:11px 12px; border-left:3px solid var(--accent); border-radius:8px; background:var(--panel-bg-hover); color:var(--text); font-size:12px; line-height:1.5; }
.reports__empty { color:var(--text-muted); font-size:12px; }
@media (max-width:1100px) { .reports__kpis { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:760px) { .reports__header { align-items:stretch; flex-direction:column; } .reports__periodos { align-self:flex-start; } .reports__kpis,.reports__grid { grid-template-columns:1fr; } .reports__card--wide { grid-column:auto; } .reports__bar { grid-template-columns:minmax(90px,130px) 1fr auto; } }
@media (prefers-reduced-motion:reduce) { .reports__tag { animation:none; transition:none; } .reports__tag::before { display:none; } }
