/* FINNEX Dashboard Visual Safe 1.0.0
   Escopo restrito: somente componentes FINNEX. Cores de tenant são preservadas. */
.fnxf615, .fnx113, [data-fnxf-bi-dashboard] {
  --fnxf-dvs-accent: var(--fnxf638-accent, var(--fnx-accent, #344257));
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.fnxf615 *, .fnx113 *, [data-fnxf-bi-dashboard] * { box-sizing: border-box; }
.fnxf615 .fnxf615-main, .fnxf615 .fnxf615-panel,
.fnxf615 .fnxf615-grid, .fnx113 .fnx113grid,
[data-fnxf-bi-dashboard] .fnxf-bi-grid { min-width: 0; }
.fnxf615 .fnxf615-panel, .fnx113 .fnx113card,
[data-fnxf-bi-dashboard] .fnxf-bi-card {
  overflow-wrap: anywhere;
  border-radius: 14px;
}
.fnxf615 :is(button, input, select, textarea, a):focus-visible,
.fnx113 :is(button, input, select, textarea, a):focus-visible,
[data-fnxf-bi-dashboard] :is(button, a):focus-visible {
  outline: 3px solid var(--fnxf-dvs-accent);
  outline-offset: 3px;
}
.fnxf615 :is(button, input, select, textarea),
.fnx113 :is(button, input, select, textarea) { max-width: 100%; }
.fnxf615 .fnxf615-nav a { min-height: 44px; }
.fnxf615 .fnxf615-main img, .fnx113 img { max-width: 100%; height: auto; }
[data-fnxf-bi-dashboard] .fnxf-bi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 16px;
}
[data-fnxf-bi-dashboard] .fnxf-bi-card strong {
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
[data-fnxf-bi-dashboard] .fnxf-bi-track { overflow: hidden; }
[data-fnxf-bi-dashboard] .fnxf-bi-fill { max-width: 100%; }
.fnx113 .fnx113toolbar { gap: 12px; }
.fnx113 .fnx113card { border-top-color: var(--fnx-accent, #344257); }
@media (max-width: 782px) {
  .fnxf615 .fnxf615-layout { display: block; }
  .fnxf615 .fnxf615-nav { position: static; max-width: 100%; margin-bottom: 16px; }
  .fnxf615 .fnxf615-main { width: 100%; }
  .fnx113 .fnx113grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
}
@media (max-width: 480px) {
  .fnxf615 .fnxf615-grid, .fnx113 .fnx113grid,
  [data-fnxf-bi-dashboard] .fnxf-bi-grid { grid-template-columns: minmax(0, 1fr); }
  .fnx113 .fnx113toolbar { flex-direction: column; align-items: stretch; }
  .fnx113 .fnx113toolbar select, .fnx113 .fnx113toolbar button { width: 100%; }
  .fnxf615 .fnxf639-hero { padding: 20px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .fnxf615 *, .fnx113 *, [data-fnxf-bi-dashboard] * {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
