/* UX-003 — Skeleton Loader */
.skeleton-block {
  background: linear-gradient(
    90deg,
    var(--skeleton-base, #1e293b) 0%,
    var(--skeleton-shine, #334155) 50%,
    var(--skeleton-base, #1e293b) 100%
  );
  background-size: 200% 100%;
  animation: skeleton-shimmer 1.2s ease-in-out infinite;
  border-radius: 8px;
}

.skeleton-line {
  height: 14px;
  margin-bottom: 10px;
}

.skeleton-line--short {
  width: 55%;
}

.skeleton-line--title {
  height: 22px;
  width: 70%;
  margin-bottom: 16px;
}

.skeleton-tile {
  height: 72px;
  margin-bottom: 10px;
}

.skeleton-section {
  padding: 16px;
  margin-bottom: 16px;
  border-radius: 12px;
  border: 1px solid var(--skeleton-border, #1f2a44);
}

@keyframes skeleton-shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

.dashboard-content {
  position: relative;
}

.dashboard-skeleton {
  position: absolute;
  inset: 0;
  z-index: 5;
  background: var(--skeleton-overlay-bg, rgba(11, 18, 32, 0.92));
  pointer-events: none;
}

.dashboard-skeleton[hidden],
.dashboard-content.is-loaded .dashboard-skeleton {
  display: none;
}
