.gallery-modal-open{overflow:hidden}
.gallery-modal{--gm-bg:#fff;--gm-fg:#20221f;--gm-muted:#74766e;--gm-border:#e6e7e0;--gm-soft:#f5f6f1;--gm-accent:#d54c26;color:var(--gm-fg);background:var(--gm-bg);width:min(1000px,calc(100vw - 64px));max-width:none;max-height:calc(100dvh - 64px);padding:0;border:1px solid var(--gm-border);border-radius:24px;box-shadow:0 32px 100px #17201940;font-family:inherit;overflow:hidden}
.gallery-modal::backdrop{background:#171b2280;backdrop-filter:blur(7px)}
.gallery-modal .gm-shell{display:flex;flex-direction:column;max-height:calc(100dvh - 66px);background:var(--gm-bg);border:0;margin:0;padding:0;box-shadow:none;border-radius:0}
.gm-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px 0;flex-shrink:0}
.gm-brand{font-size:20px;font-weight:750;letter-spacing:-.8px}.gm-brand>span{font-size:10px;letter-spacing:1.5px;font-weight:600;color:var(--gm-muted);margin-left:15px;border-left:1px solid var(--gm-border);padding-left:15px}
.gm-close{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gm-border);border-radius:50%;background:var(--gm-bg);color:var(--gm-fg);font:28px/1 inherit;cursor:pointer}
.gm-heading{padding:25px 30px 22px;flex-shrink:0}.gm-eyebrow{color:var(--gm-accent);font-size:10px;letter-spacing:1.8px;font-weight:750}.gm-heading h2{font-size:clamp(24px,3vw,34px);line-height:1.2;letter-spacing:-1.2px;margin:9px 0 10px;font-weight:650}.gm-heading p{font-size:14px;color:var(--gm-muted);margin:0;line-height:1.6}
.gm-toolbar{display:flex;justify-content:space-between;align-items:center;padding:13px 30px;border-block:1px solid var(--gm-border);flex-shrink:0}.gm-total{font-size:13px;font-weight:650}.gm-toolbar>div{display:flex;gap:14px}.gm-toolbar button{border:0;background:none;color:var(--gm-fg);font:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:8px 0}.gm-toolbar button:disabled{opacity:.35;cursor:default}
.gm-scroll{overflow:auto;padding:24px 30px;min-height:0;overscroll-behavior:contain;background:var(--gm-soft)}
.gallery-modal .gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.gallery-modal .gallery-item{border:1px solid var(--gm-border);border-radius:13px;overflow:hidden;background:var(--gm-bg);min-width:0;transition:border-color .15s,box-shadow .15s}.gallery-modal .gallery-item.is-selected{border-color:var(--gm-accent);box-shadow:0 0 0 2px var(--gm-accent)}
.gm-select{display:block;position:relative;width:100%;padding:0;border:0;background:#e9eae3;cursor:pointer;aspect-ratio:4/5;overflow:hidden}.gm-select img{width:100%;height:100%;object-fit:contain;display:block}.gm-check{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid #fff;background:#24282255;color:transparent;font-size:15px;box-shadow:0 1px 5px #0002}.is-selected .gm-check{background:var(--gm-accent);color:white;border-color:var(--gm-accent)}
.gm-item-meta{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;min-height:38px;box-sizing:border-box}.gm-item-meta>span{font-size:10px;font-weight:600;letter-spacing:.6px;color:var(--gm-muted)}.gallery-modal .gallery-single-download{width:28px;height:28px;display:grid;place-items:center;color:var(--gm-fg);border-radius:7px;background:var(--gm-soft);position:static}.gallery-modal svg{width:17px;height:17px}
.gallery-modal .gallery-footer{padding:17px 30px 22px;border-top:1px solid var(--gm-border);background:var(--gm-bg);flex-shrink:0}.gm-summary{display:flex;justify-content:space-between;align-items:center;font-size:12px}.gm-summary strong{font-weight:650}.gallery-expiry{color:var(--gm-muted);font-size:11px}.gallery-modal #galleryProgress{font-size:12px;color:var(--gm-muted);margin:6px 0 14px}.gallery-modal #galleryError{font-size:13px;color:#bc3023;margin:8px 0}.gm-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.gm-note{font-size:10px;color:var(--gm-muted);flex:1;min-width:160px}.gallery-modal #galleryDownloadButton,.gallery-modal .gallery-ready-link,.gm-reopen{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:11px;padding:14px 22px;font:inherit;font-size:13px;font-weight:650;background:var(--gm-fg,#252824);color:var(--gm-bg,#fff);cursor:pointer;text-decoration:none}.gallery-modal #galleryDownloadButton:disabled{opacity:.35;cursor:default}.gallery-modal .gallery-ready-link{background:var(--gm-accent);color:white}.gm-reopen{margin-top:12px}.gallery-modal button:focus-visible,.gallery-modal a:focus-visible{outline:3px solid var(--gm-accent);outline-offset:3px}
[data-theme=dark] .gallery-modal{--gm-bg:#20231f;--gm-fg:#f0f2ea;--gm-muted:#a4aa9e;--gm-border:#3a4035;--gm-soft:#171a15;--gm-accent:#f27d55}
@media(max-width:720px){.gallery-modal{width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.gallery-modal .gm-shell{height:100dvh;max-height:100dvh}.gm-header{padding:16px 20px 0;padding-top:max(16px,env(safe-area-inset-top))}.gm-heading{padding:22px 20px 18px}.gm-heading h2{font-size:27px}.gm-heading p{font-size:12px}.gm-toolbar{padding:9px 20px}.gm-scroll{padding:18px 20px;flex:1}.gallery-modal .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gallery-modal .gallery-footer{padding:15px 20px max(18px,env(safe-area-inset-bottom))}.gm-note{display:none}.gm-actions>*{flex:1}.gallery-modal #galleryDownloadButton,.gallery-modal .gallery-ready-link{padding:13px 10px;font-size:12px}.gm-brand>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.gallery-modal *{transition:none!important}}

@media(min-width:721px) and (max-height:800px){.gm-header{padding-top:14px}.gm-heading{padding:16px 30px}.gm-heading h2{font-size:28px;margin:7px 0}.gm-toolbar{padding-block:8px}.gm-scroll{padding:16px 30px}.gm-select{aspect-ratio:1;max-height:180px}.gallery-modal .gallery-footer{padding-top:13px;padding-bottom:16px}}
