.gal-hero:where(.astro-ihllb3az){text-align:center;padding:1.5rem 1rem 1rem;border-bottom:1px solid var(--sl-color-gray-5);margin-bottom:2rem}.gal-hero:where(.astro-ihllb3az) h1:where(.astro-ihllb3az){font-size:1.8rem;margin:.3rem 0}.gal-sub:where(.astro-ihllb3az){color:var(--sl-color-gray-2);font-size:.92rem;line-height:1.7;max-width:38rem;margin:.6rem auto}.gal-updated:where(.astro-ihllb3az){font-size:.8rem;color:var(--sl-color-gray-3);margin:0}.gal-totals:where(.astro-ihllb3az){display:flex;justify-content:center;gap:1.5rem;margin-top:.6rem;font-size:.92rem;color:var(--sl-color-gray-2)}.gal-totals:where(.astro-ihllb3az) strong:where(.astro-ihllb3az){color:var(--sl-color-accent);font-size:1.15rem}.gal-tabs:where(.astro-ihllb3az){display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 2rem;padding:0 1rem;justify-content:center}.gal-tab:where(.astro-ihllb3az){padding:.4rem .85rem;border:1px solid var(--sl-color-gray-5);border-radius:999px;font-size:.88rem;text-decoration:none;color:inherit;background:var(--sl-color-bg);transition:all .15s}.gal-tab:where(.astro-ihllb3az):hover{border-color:var(--sl-color-accent);background:var(--sl-color-bg-nav, var(--sl-color-bg))}.gal-tab-count:where(.astro-ihllb3az){margin-left:.3rem;background:var(--sl-color-gray-5);padding:0 .4rem;border-radius:999px;font-size:.72rem;color:var(--sl-color-gray-2)}.gal-category:where(.astro-ihllb3az){margin:2.5rem 0;scroll-margin-top:2rem}.gal-cat-header:where(.astro-ihllb3az){display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.5rem;border-bottom:2px solid var(--sl-color-accent);padding-bottom:.4rem}.gal-cat-header:where(.astro-ihllb3az) h2:where(.astro-ihllb3az){font-size:1.3rem;margin:0}.gal-cat-meta:where(.astro-ihllb3az){display:flex;gap:.9rem;align-items:center;font-size:.85rem}.gal-cat-count:where(.astro-ihllb3az){color:var(--sl-color-gray-2)}.gal-cat-link:where(.astro-ihllb3az){font-family:var(--sl-font-mono);font-size:.78rem}.gal-cat-desc:where(.astro-ihllb3az){color:var(--sl-color-gray-2);font-size:.92rem;margin:.5rem 0 1rem}.gal-section:where(.astro-ihllb3az){margin:1.2rem 0 1.5rem}.gal-section-title:where(.astro-ihllb3az){font-size:1rem;color:var(--sl-color-gray-2);margin-bottom:.6rem;font-weight:600}.gal-section-count:where(.astro-ihllb3az){background:var(--sl-color-gray-5);color:var(--sl-color-gray-2);padding:.1rem .5rem;border-radius:999px;font-size:.75rem;margin-left:.4rem}.gal-grid:where(.astro-ihllb3az){display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.7rem}.gal-tile:where(.astro-ihllb3az){margin:0;cursor:pointer;border:1px solid var(--sl-color-gray-5);border-radius:6px;overflow:hidden;background:var(--sl-color-bg);display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}.gal-tile:where(.astro-ihllb3az):hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--sl-color-accent)}.gal-tile:where(.astro-ihllb3az) img:where(.astro-ihllb3az){width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;background:var(--sl-color-gray-6)}.gal-tile:where(.astro-ihllb3az) figcaption:where(.astro-ihllb3az){padding:.35rem .5rem;font-size:.7rem;display:flex;flex-direction:column;gap:.1rem}.gal-tile-name:where(.astro-ihllb3az){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.gal-tile-date:where(.astro-ihllb3az){color:var(--sl-color-gray-3);font-size:.65rem}.gal-lightbox:where(.astro-ihllb3az){position:fixed;inset:0;background:#000000eb;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;padding:2rem}.gal-lightbox:where(.astro-ihllb3az)[hidden]{display:none}.gal-lightbox:where(.astro-ihllb3az) img:where(.astro-ihllb3az){max-width:95vw;max-height:85vh;object-fit:contain;box-shadow:0 8px 32px #0009}.gal-lightbox-caption:where(.astro-ihllb3az){color:#fff;margin-top:1rem;font-size:.9rem;font-family:var(--sl-font-mono)}.gal-lightbox-close:where(.astro-ihllb3az){position:absolute;top:1rem;right:1.2rem;background:#ffffff26;color:#fff;border:none;font-size:2rem;width:2.5rem;height:2.5rem;border-radius:50%;cursor:pointer;line-height:1}.gal-lightbox-close:where(.astro-ihllb3az):hover{background:#ffffff4d}@media(max-width:50rem){.gal-hero:where(.astro-ihllb3az) h1:where(.astro-ihllb3az){font-size:1.4rem}.gal-grid:where(.astro-ihllb3az){grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.gal-totals:where(.astro-ihllb3az){gap:1rem;font-size:.85rem}}
