{# Skeleton loading patterns — canonical renderers (cycle 247). Contract: ~/.claude/skills/ux-architect/components/parking-lot-primitives.md Usage: {% from "fragments/skeleton_patterns.html" import skeleton_table_rows, skeleton_card, skeleton_cards, skeleton_detail %} Each macro renders a shimmer placeholder shape. v0.62 CSS refactor: inline Tailwind → semantic .dz-skeleton-* classes (components/fragments.css). Single .dz-skeleton class with the canonical pulse animation; size variants via .dz-skeleton-h-{n} + .dz-skeleton-w-{frac} modifier classes (replaces inline `h-4 w-3/4` Tailwind on every shimmer rectangle). #} {% macro skeleton_table_rows(rows=5, cols=4) %} {# Skeleton table body — shimmer rows for table loading state #} {% for _ in range(rows) %}