@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";

/* src/styles.css */
html,
body {
  margin: 0;
  padding: 0;
  font-family: "Inter", sans-serif !important;
  font-size: 16px;
  background-color: #f5f7fa;
  color: #111827;
}
*,
*::before,
*::after {
  box-sizing: border-box;
  font-family: "Inter", sans-serif !important;
}
input,
select,
textarea,
button,
label,
span,
p,
div,
h1,
h2,
h3,
h4,
h5,
h6,
a {
  font-family: "Inter", sans-serif !important;
}
.skeleton {
  display: block;
  background:
    linear-gradient(
      90deg,
      #e5e7eb 0%,
      #f3f4f6 50%,
      #e5e7eb 100%);
  background-size: 200% 100%;
  animation: dashboard-skeleton 1.35s ease-in-out infinite;
}
.skeleton-text {
  border-radius: 999px;
}
.skeleton-circle {
  border-radius: 999px;
}
.panel-header-skeleton {
  align-items: center;
}
.skeleton-label {
  width: 56%;
  height: 14px;
  margin-bottom: 14px;
}
.skeleton-metric {
  width: 44%;
  height: 34px;
  border-radius: 12px;
  margin-bottom: 14px;
}
.indicator-skeleton-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.skeleton-note {
  width: 38%;
  height: 12px;
}
.skeleton-alert {
  width: 42px;
  height: 42px;
  flex-shrink: 0;
}
.skeleton-heading {
  width: 48%;
  height: 18px;
  border-radius: 10px;
}
.skeleton-heading-wide {
  width: 68%;
}
.skeleton-chip {
  width: 44px;
  height: 22px;
  border-radius: 999px;
}
.skeleton-trend-layout {
  height: 250px;
  display: grid;
  grid-template-columns: 76px 1fr;
  gap: 10px;
  padding: 4px 8px 0 0;
}
.skeleton-axis {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 30px;
}
.skeleton-axis-line {
  width: 70%;
  height: 10px;
}
.skeleton-chart-block {
  height: 100%;
  border-radius: 18px;
}
.map-reference-layout-skeleton {
  align-items: center;
}
.skeleton-map-visual {
  width: 100%;
  max-width: 420px;
  height: 320px;
  clip-path: polygon(19% 18%, 43% 7%, 72% 14%, 88% 34%, 82% 67%, 68% 89%, 37% 94%, 13% 73%, 7% 42%);
}
.map-reference-legend-skeleton {
  min-width: 110px;
}
.skeleton-square {
  width: 10px;
  height: 10px;
  border-radius: 3px;
}
.skeleton-legend-line {
  width: 72px;
  height: 12px;
}
.table-skeleton {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.table-skeleton-row {
  display: grid;
  grid-template-columns: 1.8fr 1.1fr 0.5fr 1.1fr 0.9fr;
  gap: 12px;
}
.table-skeleton-row .skeleton-text {
  width: 100%;
  height: 14px;
}
.table-skeleton-header .skeleton-text {
  height: 10px;
}
.skeleton-table-cell-lg {
  width: 100%;
}
.skeleton-table-cell-sm {
  width: 72%;
}
.skeleton-table-cell-xs {
  width: 56%;
}
.volume-chart-skeleton {
  padding-top: 14px;
}
.skeleton-volume-value {
  width: 28px;
  height: 10px;
}
.skeleton-volume-bar {
  width: 22px;
  min-height: 22px;
  border-radius: 4px 4px 0 0;
}
.skeleton-volume-label {
  width: 24px;
  height: 10px;
}
@keyframes dashboard-skeleton {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@media (max-width: 900px) {
  app-main-layout,
  .main-layout,
  .layout-container,
  .app-layout {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  app-sidebar,
  .sidebar,
  .side-menu,
  .menu-lateral {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    position: relative !important;
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
  }
  main,
  .main-content,
  .content,
  .page-content,
  .router-content {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
  }
  .dashboard-page {
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px !important;
    box-sizing: border-box !important;
  }
  .dashboard-header {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
  }
  .dashboard-actions {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .dashboard-actions select,
  .dashboard-actions input {
    width: 100% !important;
  }
  .period-toggle {
    width: 100% !important;
  }
  .period-toggle button {
    flex: 1 !important;
  }
  .cards-grid {
    grid-template-columns: 1fr !important;
  }
  .content-grid {
    grid-template-columns: 1fr !important;
  }
  .panel {
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .brazil-map.reference-map {
    width: 100% !important;
    max-width: 360px !important;
    height: 300px !important;
    margin: 0 auto !important;
  }
  .map-reference-layout {
    flex-direction: column !important;
    gap: 14px !important;
    min-height: auto !important;
  }
  .map-reference-legend {
    flex-direction: row !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
  }
  .volume-chart {
    overflow-x: auto !important;
    grid-template-columns: repeat(12, 44px) !important;
  }
  .trend-chart {
    overflow-x: auto !important;
    grid-template-columns: 70px 560px !important;
  }
  .skeleton-trend-layout {
    overflow-x: auto !important;
    grid-template-columns: 70px 560px !important;
  }
  .table-wrapper {
    overflow-x: auto !important;
  }
  .table-skeleton-row {
    grid-template-columns: minmax(140px, 1.8fr) minmax(90px, 1.1fr) minmax(48px, 0.5fr) minmax(96px, 1.1fr) minmax(86px, 0.9fr) !important;
  }
  table {
    min-width: 620px !important;
  }
}
@media (max-width: 600px) {
  .dashboard-page {
    padding: 12px !important;
  }
  .dashboard-header h1 {
    font-size: 24px !important;
  }
  .dashboard-header p {
    font-size: 13px !important;
  }
  .indicator-card {
    min-height: auto !important;
    padding: 16px !important;
  }
  .indicator-card strong {
    font-size: 30px !important;
  }
  .panel {
    padding: 14px !important;
  }
  .panel-header {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .brazil-map.reference-map {
    max-width: 320px !important;
    height: 270px !important;
  }
  .map-label {
    font-size: 16px !important;
  }
}

/* angular:styles/global:styles */
/*# sourceMappingURL=styles.css.map */
