/* Shared dashboard source, also included by the Tailwind entry point. */
.dashboard-container {
  margin: 20px 0;
  padding: 22px;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  background: #ffffffed;
  box-shadow: 0 4px 20px #0f172a06;
}
.dashboard-container h2 { margin: 0; color: #1e293b; font-size: 20px; font-weight: 700; }
.dashboard-container > .quick-access-grid { margin: 18px 0 0; }
.estatisticas-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.estatisticas-header p, .estatisticas-eventos > p, #estatisticasStatus, .estatisticas-modal > p { margin: 8px 0; color: #64748b; font-size: 13px; line-height: 1.6; }
.estatisticas-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px; margin-top: 16px; }
.estatistica-card { min-width: 0; padding: 18px; border: 1px solid #e2e8f0; border-radius: 16px; background: #f8fafc; }
.estatistica-card > i { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-bottom: 12px; border-radius: 12px; background: #dcfce7; color: #047857; font-size: 18px; }
.estatistica-card h4 { min-height: 40px; margin: 0; color: #334155; font-size: 14px; font-weight: 600; }
.estatistica-card strong { display: block; margin: 8px 0; color: #0b6f3e; font-size: 32px; font-weight: 700; line-height: 1.2; }
.estatistica-card p { margin: 0; color: #64748b; font-size: 12px; line-height: 1.5; }
.estatistica-card-acionavel { text-align: left; font-family: inherit; cursor: pointer; }
.estatistica-card-acionavel:hover:not(:disabled) { background: #f0fdf4; border-color: #86efac; }
.estatistica-card-acionavel:focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }
.estatisticas-atualizar, .estatisticas-detalhes { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 16px; border: 0; border-radius: 12px; font-size: 14px; font-weight: 600; cursor: pointer; }
.estatisticas-atualizar { flex-shrink: 0; background: #047857; color: #fff; }
.estatisticas-detalhes { margin-top: 16px; background: #eff6ff; color: #1d4ed8; }
.estatisticas-atualizar:disabled, .estatisticas-detalhes:disabled { opacity: .55; cursor: wait; }
.estatisticas-atualizar:hover:not(:disabled), .estatisticas-detalhes:hover:not(:disabled) { filter: brightness(.94); }
.estatisticas-atualizar:focus-visible, .estatisticas-detalhes:focus-visible, .estatisticas-modal button:focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }
#estatisticasStatus.estatisticas-erro { color: #b91c1c; }
.estatisticas-eventos { margin-top: 24px; padding-top: 20px; border-top: 1px solid #e2e8f0; }
.estatisticas-eventos h3 { margin: 0; color: #334155; font-size: 17px; }
.estatisticas-eventos h3 i { margin-right: 6px; color: #047857; }
.estatisticas-modal { box-sizing: border-box; position: fixed; inset: 0; margin: auto; width: min(680px, calc(100vw - 24px)); max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); padding: 24px; overflow-y: auto; border: 1px solid #e2e8f0; border-radius: 20px; background: #fff; color: #334155; box-shadow: 0 24px 64px #0f172a40; }
.estatisticas-modal::backdrop { background: #0f172a80; backdrop-filter: blur(3px); }
.estatisticas-modal h2 { margin: 0; font-size: 20px; }
.estatisticas-modal button { width: 44px; height: 44px; flex-shrink: 0; border: 0; border-radius: 12px; background: #f1f5f9; color: #334155; font-size: 26px; cursor: pointer; }
.estatistica-evento-item { margin-top: 12px; padding: 16px; border: 1px solid #e2e8f0; border-radius: 14px; background: #f8fafc; overflow-wrap: anywhere; }
.estatistica-evento-item h3 { margin: 0 0 8px; font-size: 16px; }
.estatistica-evento-item p { margin: 4px 0; font-size: 14px; }
@media (max-width: 600px) {
  .dashboard-container { padding: 16px; }
  .estatisticas-header { align-items: stretch; flex-direction: column; }
  .estatisticas-modal .estatisticas-header { flex-direction: row; align-items: center; }
  .estatisticas-modal { padding: 16px; }
}
