/* ============================================================
   EQI Budget System — skeletons.css
   Skeleton screens com animação shimmer
   Importar em cada página que usar skeleton.js
   ============================================================ */

/* ── Animação shimmer ─────────────────────────────────────── */
@keyframes sk-shimmer {
  0%   { background-position: -400px 0; }
  100% { background-position:  400px 0; }
}

/* ── Base de todas as linhas skeleton ─────────────────────── */
.sk {
  display: block;
  border-radius: 4px;
  background: linear-gradient(
    90deg,
    #e9ecef 25%,
    #f1f3f5 50%,
    #e9ecef 75%
  );
  background-size: 800px 100%;
  animation: sk-shimmer 1.4s infinite linear;
}

/* ── Linha de texto ───────────────────────────────────────── */
.sk-line {
  height: 14px;
  margin-bottom: 10px;
  border-radius: 3px;
}

.sk-line:last-child { margin-bottom: 0; width: 60% !important; }

/* ── Wrapper injetado por skeleton.js ─────────────────────── */
.sk-wrap {
  padding: 12px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* ── Círculo (avatar / ícone) ─────────────────────────────── */
.sk-circle {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
}

/* ── Bloco retangular (card / imagem) ─────────────────────── */
.sk-block {
  height: 100px;
  border-radius: 8px;
}

/* ── KPI card skeleton ─────────────────────────────────────── */
.sk-kpi {
  height: 80px;
  border-radius: 8px;
}

/* ── Linha de tabela skeleton ─────────────────────────────── */
.sk-row {
  height: 40px;
  border-radius: 4px;
  margin-bottom: 4px;
}

/* ── Gráfico skeleton ─────────────────────────────────────── */
.sk-chart {
  height: 220px;
  border-radius: 8px;
}

/* ── Estado do container com loading ativo ─────────────────── */
.skeleton-loading {
  position: relative;
  overflow: hidden;
  pointer-events: none;
}

/* ── Dark mode ─────────────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
  .sk {
    background: linear-gradient(
      90deg,
      #2d3748 25%,
      #3a4560 50%,
      #2d3748 75%
    );
    background-size: 800px 100%;
  }
}
