.gallery-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.gallery-image-status{position:absolute;z-index:1;top:15px;left:15px;max-width:calc(100% - 30px);padding:7px 10px;background:rgba(10,37,34,.88);color:#fff;border-radius:4px;font:11px/1.5 var(--pearl-sans);pointer-events:none}
.gallery-image-status[hidden],.gallery-lightbox-status[hidden],.gallery-lightbox-status button[hidden]{display:none}
.gallery-tile[data-image-state="loading"] img,.gallery-tile[data-image-state="error"] img{opacity:0}
.gallery-tile[data-image-state="loading"]{background:linear-gradient(110deg,#173c3a,#365c58,#173c3a);background-size:200% 100%;animation:gallery-loading 1.7s ease infinite}
.gallery-lightbox-stage{position:relative;display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;background:#0b2422;touch-action:pan-y pinch-zoom;isolation:isolate}
.gallery-lightbox-stage>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;-webkit-user-drag:none}
.gallery-lightbox-stage[data-image-state="loading"]>img,.gallery-lightbox-stage[data-image-state="error"]>img{opacity:0}
.gallery-lightbox-status{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px;text-align:center;font:14px/1.7 var(--pearl-sans);color:#fff;background:#0b2422}
.gallery-lightbox-stage[data-image-state="loading"] .gallery-lightbox-status::before{content:"";width:28px;height:28px;border:2px solid #ffffff3d;border-top-color:var(--pearl-accent-soft);border-radius:50%;animation:gallery-spin .9s linear infinite}
.gallery-lightbox-status button{min-height:44px;min-width:110px;border:1px solid var(--pearl-accent-soft);padding:9px 20px;border-radius:4px;background:var(--pearl-primary);color:#fff}
.gallery-lightbox-status button:focus-visible{outline:3px solid var(--pearl-accent-soft);outline-offset:4px}
.gallery-lightbox-arrow:disabled{opacity:.35;cursor:default}
.gallery-swipe-hint{margin:10px 0 0;text-align:center;font:11px/1.6 var(--pearl-sans);color:var(--pearl-secondary)}
body.gallery-lightbox-open{overflow:hidden}
.gallery-empty{padding:30px 0;color:var(--pearl-muted)}
@keyframes gallery-spin{to{transform:rotate(360deg)}}
@keyframes gallery-loading{to{background-position:-200% 0}}
@media(max-width:640px){.gallery-lightbox-close,.gallery-lightbox-arrow{min-width:44px;min-height:44px}.gallery-swipe-hint{font-size:10px;padding-inline:8px}.gallery-image-status{top:10px;left:10px;font-size:10px}}
@media(max-height:520px){.gallery-lightbox-figure{height:calc(100svh - 100px);min-height:150px}.gallery-lightbox-figure figcaption{min-height:52px}.gallery-lightbox-figure figcaption strong{font-size:18px}.gallery-swipe-hint{margin-top:6px}}
@media(prefers-reduced-motion:reduce){.gallery-tile[data-image-state="loading"],.gallery-lightbox-stage[data-image-state="loading"] .gallery-lightbox-status::before{animation:none}}
