.image-gallery{width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.image-gallery--single .image-gallery__main{gap:0}.image-gallery--single .image-gallery__preview{width:100%}.image-gallery__main{display:inline-flex;gap:var(--gap-xs);align-items:flex-start;width:100%;justify-content:center;overflow:hidden;margin:0 auto}.image-gallery__thumbnails{display:flex;flex-direction:column;gap:var(--gap-xs);height:auto;max-height:var(--thumbnails-max-height);overflow-y:visible;width:15%;scrollbar-width:none}.image-gallery__thumbnails::-webkit-scrollbar{display:none}.image-gallery__thumbnail{width:100%;height:auto;border-radius:8px;overflow:hidden;transition:all .2s ease;flex-shrink:0;position:relative;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;aspect-ratio:3/4;background-size:cover;background-position:50%;background-repeat:no-repeat}@media(hover:hover){.image-gallery__thumbnail:hover:not(.image-gallery__thumbnail--active){transform:scale(1.016)}}.image-gallery__thumbnail:active:not(.image-gallery__thumbnail--active){transform:scale(1.016)}.image-gallery__preview{min-width:0;min-height:400px;border-radius:var(--card-br-m);touch-action:pan-y;background:rgba(0,0,0,0);-webkit-user-select:none;user-select:none;aspect-ratio:var(--image-aspect-ratio,auto);transition:min-height .3s ease;flex-grow:1;width:100%}.image-gallery__image-container,.image-gallery__preview{display:flex;align-items:center;justify-content:flex-start;overflow:hidden;position:relative;padding:0}.image-gallery__image-container{width:auto;height:auto;margin:0;width:100%;overflow:visible}.image-gallery__image-placeholder{border-radius:var(--card-br-xs);background:rgba(34,34,34,.3);display:flex;overflow:hidden;align-items:center;justify-content:center;position:relative;margin:0 auto;z-index:1;animation:pulse 1.5s ease-in-out infinite}.image-gallery__image-placeholder:after{content:"";width:24px;height:24px;border:2px solid rgba(255,255,255,.2);border-top-color:rgba(255,255,255,.8);border-radius:50%;animation:spin 1s linear infinite;position:absolute;top:50%;left:50%;margin:-12px 0 0 -12px}@keyframes spin{to{transform:rotate(1turn)}}.image-gallery__image{max-width:100%;display:block;object-fit:contain;cursor:pointer;transition:transform .2s ease;margin:0;position:relative;overflow:hidden;z-index:1;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:auto}.image-gallery__image--loaded{opacity:1;visibility:visible}.image-gallery__image img{overflow:hidden}@keyframes pulse{0%{opacity:.6}50%{opacity:.4}to{opacity:.6}}@media(max-width:768px){.image-gallery__main{flex-direction:column-reverse}.image-gallery__thumbnails{display:flex;align-items:flex-start;flex-direction:row;max-height:none;width:100%;max-width:100%;padding-bottom:8px;min-height:72px;height:auto;overflow-x:visible}.image-gallery__thumbnail{width:15%;height:auto;min-width:60px;aspect-ratio:3/4}.image-gallery__preview{width:100%;height:auto;min-height:240px}}.image-gallery__thumbnail{filter:brightness(.85)!important;transition:filter .2s;cursor:pointer}.image-gallery__thumbnail--active,.image-gallery__thumbnail:hover{filter:brightness(1)!important}.image-modal-overlay{margin:0;padding:0;border:0;width:100vw;height:100dvh;max-width:none;max-height:none}.image-modal-overlay::backdrop{background:rgba(0,0,0,0)}.image-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none}.image-modal-content{cursor:default;max-width:98vw;max-height:98vh;flex-direction:column;box-shadow:0 0 32px 0 rgba(0,0,0,.2)}.image-modal-content,.image-modal-image-wrapper{position:relative;z-index:var(--z-above);display:flex;align-items:center;justify-content:center;background:none}.image-modal-image-wrapper{max-width:calc(100vh - var(--gap-xs));max-height:calc(100vh - var(--gap-l));cursor:pointer;overflow:visible;touch-action:none}.image-modal-image-wrapper.zoomed{cursor:grab}.image-modal-image-wrapper.zoomed:active{cursor:grabbing}.image-modal-image-wrapper:hover .image-modal-nav{opacity:1;pointer-events:auto}.image-modal-image-wrapper img{display:block;max-width:100%;margin:0 auto;background:#222;box-shadow:0 0 16px 0 rgba(0,0,0,.15);cursor:default;touch-action:none}.image-modal-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.5);border:none;color:#fff;font-size:2.5rem;width:48px;height:48px;border-radius:50%;opacity:0;pointer-events:none;transition:opacity .2s;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:var(--z-raised)}.image-modal-nav:hover{background:rgba(0,0,0,.8)}.image-modal-nav--prev{left:12px}.image-modal-nav--next{right:12px}.image-modal-nav-arrow{font-size:2rem;line-height:1;-webkit-user-select:none;user-select:none}.image-modal-controls{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:var(--z-popover)}.image-modal-controls .toggle-group{gap:var(--gap-xs);padding:var(--card-p-m);border-radius:var(--card-br-m)}.image-modal-counter{display:inline-flex;align-items:center;justify-content:center;color:var(--text-color);min-width:50px;height:var(--btn-h-s);white-space:nowrap}.image-modal-counter,.image-modal-zoom-level{padding:0 var(--gap-xs);text-align:center;font-variant-numeric:tabular-nums;font-size:var(--p3-size)}.image-modal-zoom-level{background:rgba(0,0,0,0);border:none;color:var(--text-secondary-color);min-width:55px;cursor:pointer;border-radius:var(--btn-r-full);transition:all .2s ease}.image-modal-zoom-level:hover:not(:disabled){color:var(--text-color);background:rgba(255,255,255,.1)}.image-modal-zoom-level.active{color:var(--text-color)}.image-modal-zoom-level:disabled{opacity:.5;cursor:default}@media(max-width:768px){.image-modal-controls{opacity:1!important;pointer-events:auto!important;bottom:10px}}@media(hover:none)and (pointer:coarse){.image-modal-controls{opacity:1!important;pointer-events:auto!important}}