.skeleton{background:var(--color-surface-raised);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff0a 50%,#0000 100%);animation:1.5s ease-in-out infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton--text{border-radius:var(--radius-sm);height:.875rem}.skeleton--heading{border-radius:var(--radius-sm);width:50%;height:2rem}.skeleton--heading-sm{border-radius:var(--radius-sm);width:40%;height:1.5rem}.skeleton--btn{border-radius:var(--radius-md);width:10rem;height:2.25rem}.skeleton--stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-8);align-items:center;gap:var(--space-1);flex-direction:column;min-width:100px;display:flex}.skeleton--card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);min-height:80px}.skeleton--poster{aspect-ratio:2/3;border-radius:var(--radius-lg)}.skeleton--hero{border-radius:var(--radius-xl);height:360px;margin-bottom:var(--space-8)}.skeleton--carousel{border-radius:var(--radius-lg);height:280px}.skeleton--member{border-radius:9999px;width:120px;height:2rem}
