.image-lightbox__backdrop{z-index:200;backdrop-filter:blur(8px);padding:max(var(--space-xl), env(safe-area-inset-top)) max(var(--space-xl), env(safe-area-inset-right)) max(var(--space-xl), env(safe-area-inset-bottom)) max(var(--space-xl), env(safe-area-inset-left));background:radial-gradient(circle at 42% 62%,#e45f361f 0%,#e45f3612 20%,#e45f3608 42%,#e45f3600 72%),radial-gradient(60% 70% at 92% 25%,#e45f360d,#e45f3600 70%),linear-gradient(#08090c99,#0a0a0c9e);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@supports not (backdrop-filter:blur(1px)){.image-lightbox__backdrop{background:#0a0a0cd1}}.image-lightbox__backdrop[hidden]{display:none}.image-lightbox__dialog{background:radial-gradient(ellipse 60% 55% at 0% 0%, #e45f3612, #e45f3600 70%), radial-gradient(ellipse 50% 50% at 100% 100%, #e45f360d, #e45f3600 70%), var(--color-surface-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);width:min(92vw,1600px);max-width:94vw;height:min(88vh,920px);max-height:90vh;padding:var(--space-md);flex-direction:column;display:flex;position:relative;box-shadow:0 30px 120px -20px #e45f361a,0 28px 90px #00000047,0 10px 30px #00000029,0 2px 8px #0000001a}@supports (height:1dvh){.image-lightbox__dialog{height:min(88dvh,920px)}}.image-lightbox__header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);flex:none;display:flex}.image-lightbox__heading{align-items:baseline;gap:var(--space-sm);min-width:0;display:flex}.image-lightbox__title{margin:0;font-size:1.25rem}.image-lightbox__counter{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-accent);opacity:.85;white-space:nowrap;font-size:.8125rem}.image-lightbox__media{background:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.image-lightbox__img{object-fit:contain;width:100%;height:100%;display:block}.image-lightbox__caption{margin:var(--space-sm) 0 0 0;max-width:80ch;color:var(--color-text-secondary);flex:none;font-size:.9375rem;line-height:1.5}.image-lightbox__close,.image-lightbox__nav{color:var(--color-accent);cursor:pointer;justify-content:center;align-items:center;transition:border-color .2s,background-color .2s;display:inline-flex}.image-lightbox__close{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:0 0;flex:none;width:44px;height:44px}.image-lightbox__close:hover,.image-lightbox__close:focus-visible,.image-lightbox__nav:hover,.image-lightbox__nav:focus-visible{background:color-mix(in srgb, var(--color-accent) 12%, transparent);border-color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:2px}.image-lightbox__close svg{width:18px;height:18px}.image-lightbox__nav{z-index:1;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:#0a0a0c8c;width:40px;height:56px;position:absolute;top:50%;translate:0 -50%}.image-lightbox__nav--prev{left:var(--space-xs)}.image-lightbox__nav--next{right:var(--space-xs)}.image-lightbox__nav svg{width:20px;height:20px}@media (width<=899px){.image-lightbox__backdrop{padding:max(.5rem, env(safe-area-inset-top)) max(.5rem, env(safe-area-inset-right)) max(.5rem, env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left))}.image-lightbox__dialog{width:100%;max-width:100%;height:auto;max-height:94vh;padding:var(--space-sm)}@supports (height:1dvh){.image-lightbox__dialog{max-height:94dvh}}.image-lightbox__media{flex:none;min-height:0}.image-lightbox__img{width:100%;height:auto;max-height:62vh}.image-lightbox__title{font-size:1.0625rem}.image-lightbox__caption{max-height:6.5rem;font-size:.875rem;overflow-y:auto}.image-lightbox__nav{width:36px;height:48px}}@media (prefers-reduced-motion:no-preference){.image-lightbox__backdrop:not([hidden]){animation:.18s image-lightbox-fade-in}.image-lightbox__dialog{animation:.22s image-lightbox-in}}@keyframes image-lightbox-fade-in{0%{opacity:0}to{opacity:1}}@keyframes image-lightbox-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
