:root {
  --rdm-shimmer-base: rgba(255,255,255,0.05);
  --rdm-shimmer-highlight: rgba(255,255,255,0.12);
  --rdm-shimmer-border: rgba(255,255,255,0.06);
}
[data-theme="light"] {
  --rdm-shimmer-base: rgba(0,0,0,0.06);
  --rdm-shimmer-highlight: rgba(0,0,0,0.14);
  --rdm-shimmer-border: rgba(0,0,0,0.08);
}

.rdm-shimmer {
  background: linear-gradient(90deg, var(--rdm-shimmer-base) 25%, var(--rdm-shimmer-highlight) 50%, var(--rdm-shimmer-base) 75%);
  background-size: 200% 100%;
  border-radius: var(--rdm-radius-md, 8px);
  animation: rdmShimmerSweep 1.6s ease-in-out infinite;
}
@keyframes rdmShimmerSweep {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

.rdm-shimmer-card {
  background: var(--rdm-card, rgba(18,12,16,0.85));
  border: 1px solid var(--rdm-shimmer-border);
  border-radius: var(--rdm-radius-lg, 14px);
  padding: 1rem;
}

.rdm-shimmer-line { height: 0.85rem; margin-bottom: 0.6rem; }
.rdm-shimmer-line:last-child { margin-bottom: 0; }
.rdm-shimmer-line--sm { width: 40%; }
.rdm-shimmer-line--md { width: 65%; }
.rdm-shimmer-line--lg { width: 85%; }
.rdm-shimmer-line--xl { width: 100%; }

.rdm-shimmer-title { height: 1.8rem; width: 75%; margin-bottom: 0.75rem; border-radius: var(--rdm-radius-sm, 6px); }
.rdm-shimmer-subtitle { height: 1.15rem; width: 45%; margin-bottom: 1rem; }
.rdm-shimmer-caption { height: 0.75rem; width: 55%; margin-bottom: 0.5rem; }

.rdm-shimmer-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  flex-shrink: 0;
}
.rdm-shimmer-media {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  flex-shrink: 0;
}

.rdm-shimmer-meta-card {
  flex: 1;
  min-width: 140px;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.9rem;
  background: var(--rdm-card, rgba(18,12,16,0.85));
  border: 1px solid var(--rdm-shimmer-border);
  border-radius: var(--rdm-radius-lg, 14px);
}
.rdm-shimmer-meta-icon {
  width: 34px;
  height: 34px;
  border-radius: var(--rdm-radius-sm, 6px);
  flex-shrink: 0;
}
.rdm-shimmer-meta-text { flex: 1; }
.rdm-shimmer-meta-text .rdm-shimmer-line { margin-bottom: 0.4rem; }
.rdm-shimmer-meta-text .rdm-shimmer-line:last-child { margin-bottom: 0; }

.rdm-shimmer-zone {
  width: 100%;
  aspect-ratio: 4 / 5;
  border-radius: var(--rdm-radius-lg, 14px);
  margin-bottom: 1rem;
}

.rdm-shimmer-tier {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.75rem 0.85rem;
  background: var(--rdm-card, rgba(18,12,16,0.85));
  border: 1px solid var(--rdm-shimmer-border);
  border-radius: var(--rdm-radius-md, 10px);
  margin-bottom: 0.5rem;
}
.rdm-shimmer-tier:last-child { margin-bottom: 0; }
.rdm-shimmer-tier-left { display: flex; align-items: center; gap: 0.6rem; }
.rdm-shimmer-tier-dot { width: 10px; height: 10px; border-radius: 50%; }
.rdm-shimmer-tier-name { width: 90px; height: 0.85rem; }
.rdm-shimmer-tier-price { width: 70px; height: 0.85rem; }

.rdm-shimmer-button {
  width: 100%;
  height: 44px;
  border-radius: 999px;
  margin-top: 0.75rem;
}
.rdm-shimmer-pill {
  width: 140px;
  height: 44px;
  border-radius: 999px;
}
.rdm-shimmer-chip {
  width: 90px;
  height: 34px;
  border-radius: 999px;
}

.rdm-shimmer-section {
  background: var(--rdm-card, rgba(18,12,16,0.85));
  border: 1px solid var(--rdm-shimmer-border);
  border-radius: var(--rdm-radius-lg, 14px);
  padding: 1rem;
  margin-top: 0.85rem;
}

.rdm-shimmer-tabs {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}
.rdm-shimmer-tab { width: 90px; height: 34px; border-radius: 999px; }

.rdm-shimmer-poster {
  width: 100%;
  aspect-ratio: 380 / 500;
  border-radius: var(--rdm-radius-lg, 14px);
}

.rdm-shimmer-table-row {
  height: 64px;
  border-radius: 14px;
  margin-bottom: 0.65rem;
}
.rdm-shimmer-table-row:last-child { margin-bottom: 0; }

.rdm-shimmer-activity-row {
  height: 56px;
  border-radius: 12px;
  margin-bottom: 0.5rem;
}
.rdm-shimmer-activity-row:last-child { margin-bottom: 0; }

.rdm-shimmer-form-row {
  height: 48px;
  border-radius: var(--rdm-radius-md, 10px);
  margin-bottom: 0.75rem;
}
.rdm-shimmer-form-row:last-child { margin-bottom: 0; }

.rdm-shimmer-event-card {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem;
  background: var(--rdm-card, rgba(18,12,16,0.85));
  border: 1px solid var(--rdm-shimmer-border);
  border-radius: 16px;
  margin-bottom: 0.75rem;
}
.rdm-shimmer-event-card__body { flex: 1; min-width: 0; }

@media (max-width: 768px) {
  .rdm-shimmer-avatar { width: 52px; height: 52px; }
  .rdm-shimmer-meta-card { min-width: 120px; padding: 0.75rem; }
}
