.gallery-page .gallery-grid.skeleton{align-items:stretch;gap:var(--gallery-gap,14px)}
.gallery-page .gallery-grid.skeleton>div{min-height:190px;aspect-ratio:4/5;border-radius:var(--gallery-radius,16px);background:#e9e3d8;position:relative;overflow:hidden;animation:none}
.gallery-page .gallery-grid.skeleton>div:first-child{grid-row:span 2;aspect-ratio:auto}
.gallery-page .gallery-grid.skeleton>div::after,.gallery-page .gallery-card[data-image-state="loading"]::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.55) 45%,transparent 70%);transform:translateX(-120%);animation:gallery-sheen 1.55s ease-in-out infinite}
.gallery-page .gallery-grid.skeleton>div:nth-child(3n+2){background:#e6e4df}
.gallery-page .gallery-grid.skeleton>div:nth-child(4n+3){background:#dedbd4}
.gallery-page .gallery-card[data-image-state="loading"]{background:#e9e3d8}
.gallery-page .gallery-card[data-image-state="loading"]>img{opacity:0}
.gallery-page .gallery-card[data-image-state="ready"]>img{animation:gallery-image-in .42s ease-out both}
.gallery-page .gallery-card[data-image-state="error"]::after{content:"Image indisponible";position:absolute;inset:0;display:grid;place-items:center;padding:18px;text-align:center;color:#746e64;font-size:13px;letter-spacing:.04em;background:#e9e3d8}
@keyframes gallery-sheen{to{transform:translateX(120%)}}
@keyframes gallery-image-in{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@media(max-width:767px){.gallery-page .gallery-grid.skeleton>div{min-height:155px}.gallery-page .gallery-grid.skeleton>div:first-child{min-height:315px}}
@media(prefers-reduced-motion:reduce){.gallery-page .gallery-grid.skeleton>div::after,.gallery-page .gallery-card[data-image-state="loading"]::after{animation:none}.gallery-page .gallery-card[data-image-state="ready"]>img{animation:none}}
