/* Four unified gift groups, reviewed by the UX agent. */
.gift-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 0;max-width:540px}
.gift-gallery button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;width:100%;height:150px;box-sizing:border-box;padding:8px;border:1px solid rgba(231,188,121,.18);border-radius:4px;background:transparent;cursor:pointer}
.gift-gallery img{display:block;width:100%;min-width:0;flex:1;height:100%;object-fit:contain;background:transparent;border-radius:0}
.gift-gallery button:focus-visible{outline:2px solid #e7bc79;outline-offset:4px}
.gift-lightbox{box-sizing:border-box;width:min(880px,88vw);max-width:88vw;max-height:76dvh;height:auto;padding:0 8px 12px;border:0;border-radius:8px;background:#101c2c;color:#fff;overflow:hidden}
.gift-lightbox[open]{display:flex;flex-direction:column}
.gift-lightbox::backdrop{background:rgba(3,10,22,.58)}
.gift-toolbar{display:flex;align-items:center;justify-content:flex-end;height:40px;flex-shrink:0}
.gift-close,.gift-prev,.gift-next{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:#fff;font:26px/1 Arial,sans-serif;cursor:pointer}
.gift-toolbar .gift-close{font-size:28px;height:40px}
.gift-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:0}
.gift-images{display:grid;align-items:center;justify-content:center;gap:12px;min-width:0;min-height:0;overflow:hidden;overscroll-behavior:contain}
.gift-images>img{display:block;min-width:0;width:100%;height:auto;max-height:calc(76dvh - 80px);object-fit:contain}
.gift-counter{display:block;text-align:center;margin:8px 0 0;font:12px/16px 'Segoe UI',Arial,sans-serif;color:#acb3be}
.gift-lightbox button:focus-visible{outline:2px solid #eac184;outline-offset:-3px}
@media(max-width:600px){.gift-gallery{gap:10px}.gift-gallery button{height:120px}.gift-lightbox{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:72dvh;padding-inline:4px}.gift-stage{grid-template-columns:32px minmax(0,1fr) 32px}.gift-prev,.gift-next{width:32px;position:relative}.gift-prev::before,.gift-next::before{content:'';position:absolute;inset:0 -6px}.gift-images{gap:6px}.gift-images>img{max-height:calc(72dvh - 80px)}}
.gift-lightbox{position:fixed;inset:0;margin:auto;height:fit-content;min-height:0;background:#e8e1d5;color:#26313b;border:1px solid #b9ae9c;border-radius:16px;box-shadow:0 18px 56px rgba(0,0,0,.38)}
.gift-close,.gift-prev,.gift-next{color:#26313b}
.gift-counter{color:#59616a}
.gift-lightbox button:focus-visible{outline-color:#6a4a1b}
/* Clear, full-size side controls without reducing the paired image stage. */
@media(max-width:600px){
 .gift-stage{grid-template-columns:44px minmax(0,1fr) 44px}
 .gift-prev,.gift-next{width:44px;height:44px;min-width:44px;font:700 30px/1 Arial,sans-serif;border-radius:50%;background:rgba(255,255,255,.64);color:#26313b;border:1px solid rgba(38,49,59,.24)}
 .gift-prev::before,.gift-next::before{content:none}
 .gift-toolbar .gift-close{height:44px}
 .gift-toolbar{height:44px}
 .gift-prev:active,.gift-next:active{background:#fff}
}
@media(max-width:600px){
 .gift-images{display:flex;align-items:stretch;justify-content:flex-start;gap:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pinch-zoom;aspect-ratio:1.2;height:auto;max-height:calc(72dvh - 90px)}
 .gift-images::-webkit-scrollbar{display:none}
 .gift-slide{display:grid;align-items:center;gap:6px;flex:0 0 100%;min-width:0;height:100%;scroll-snap-align:start;scroll-snap-stop:always}
 .gift-slide img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;max-height:100%}
}
