.store-gallery{min-width:0}.gallery-main{margin:0;border:1px solid #e0e7ee;border-radius:20px;overflow:hidden;background:white}.gallery-main picture{display:block}.gallery-main img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;padding:16px;box-sizing:border-box}.gallery-main figcaption{padding:12px 20px;font-size:14px;color:#52657c}.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin:14px 0;gap:12px}.gallery-controls button{border:1px solid #c6d6e6;background:white;border-radius:50%;width:44px;height:44px;font-size:22px;color:#214a7f;cursor:pointer}.gallery-thumbnails{display:flex;gap:10px;overflow:auto;padding:4px 2px 12px}.gallery-thumbnails button{padding:3px;background:white;border:2px solid #dfe7ee;border-radius:10px;cursor:pointer;flex-shrink:0}.gallery-thumbnails button[aria-current=true]{border-color:#0a9cd8}.gallery-thumbnails img{display:block;object-fit:contain;border-radius:5px;width:70px;height:70px}.store-gallery button:focus-visible{outline:3px solid #ffb347;outline-offset:3px}@media(prefers-reduced-motion:reduce){.store-gallery *{scroll-behavior:auto}}

.card-cover{display:block;box-sizing:border-box;width:100%;height:260px;object-fit:contain;background:#f4f7fb;padding:18px}.description{white-space:pre-line}

.category-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 26px}.category-filter label{font-size:13px;color:#50657a}.category-filter select{font:inherit;border:1px solid #d5e2eb;border-radius:7px;padding:10px;max-width:100%}.category-filter button{border:0;border-radius:7px;padding:11px;background:#214a7f;color:white;cursor:pointer}.category-filter select:focus-visible{outline:3px solid #ffb347;outline-offset:3px}

.gallery-open{position:relative;display:block;width:100%;padding:0;border:0;background:white;color:#214a7f;cursor:zoom-in;font:inherit}
.gallery-open-hint{position:absolute;right:12px;bottom:12px;padding:8px 12px;border:1px solid #c6d6e6;border-radius:7px;background:#ffffffed;font-size:13px;font-weight:600}
.store-gallery .gallery-open:focus-visible{outline-offset:-4px}
.gallery-zoom{box-sizing:border-box;width:min(1100px,calc(100vw - 32px));height:min(900px,calc(100dvh - 32px));max-width:none;max-height:none;margin:auto;padding:0;border:1px solid #c6d6e6;border-radius:14px;background:white;color:#21374e;box-shadow:0 20px 80px #0006}
.gallery-zoom::backdrop{background:#071828cc}
.gallery-zoom-content{display:flex;flex-direction:column;height:100%;min-height:0}
.gallery-zoom-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #e0e7ee;flex:none}
.gallery-zoom-header h2{margin:0;font-size:18px;line-height:1.3}
.gallery-zoom button{min-height:44px;padding:8px 14px;border:1px solid #bccddc;border-radius:7px;background:#f4f8fc;color:#214a7f;font:inherit;cursor:pointer}
.gallery-zoom button[hidden]{display:none}
.gallery-zoom-header button{flex:none}
.gallery-zoom-figure{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;margin:0;padding:12px}
.gallery-zoom-figure img{display:block;flex:1;min-height:0;min-width:0;width:100%;height:100%;object-fit:contain}
.gallery-zoom-figure figcaption{flex:none;max-height:80px;overflow:auto;overflow-wrap:anywhere;padding:12px 4px 0;font-size:14px;line-height:1.5;color:#52657c;text-align:center}
.gallery-zoom-controls{display:flex;align-items:center;justify-content:center;gap:16px;flex:none;padding:10px 16px 14px;border-top:1px solid #e0e7ee}
.gallery-zoom-controls [role=status]{font-size:14px;white-space:nowrap}
body.gallery-zoom-open{overflow:hidden}
@media(max-width:640px){.gallery-zoom{width:calc(100vw - 16px);height:calc(100dvh - 24px);border-radius:10px}.gallery-zoom-header{padding:10px 12px}.gallery-zoom-header h2{font-size:16px}.gallery-zoom-controls{gap:10px;padding:10px}.gallery-zoom-controls button{padding:8px 10px;font-size:14px}.gallery-zoom-figure{padding:8px}}
