/* Product viewer: large readable poster, compact details, clear primary action */
#modal.show .mdata>p,#modal.show .mdata>.ship{display:none!important}
#modal.show .mdata{gap:8px!important}
#modal.show .mdata h2{margin:2px 0 4px!important;line-height:1.16!important}
#modal.show .mdata #mprice{margin:4px 0 8px!important}
#modal.show .mdata .benefits{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;margin:4px 0!important}
#modal.show .mdata .benefits span{display:flex;align-items:center;min-height:42px!important;padding:8px 10px!important;margin:0!important;font-size:12px!important;line-height:1.3!important}
#modal.show .mdata .benefits span:last-child{grid-column:1/-1}
#modal.show .mdata #cart{margin-top:8px!important}
#modal.show .mdata .planbtn{margin:2px 0 6px!important;padding:10px!important}
#modal.show .mdata .planbtn[hidden]{display:none!important}
#modal.show .zoom{align-items:center!important;justify-content:center!important}
#modal.show .zoom #mimg{max-height:100%!important;max-width:100%!important;object-fit:contain!important}
@media(min-width:900px){#modal.show .modalbox{grid-template-columns:minmax(0,1.75fr) minmax(310px,.65fr)!important}#modal.show .mdata{padding:55px 16px 20px!important;gap:7px!important}#modal.show .mdata h2{font-size:clamp(20px,2.2vw,27px)!important}#modal.show .zoom{padding:5px!important}#modal.show #productGalleryControls:not([hidden]){position:absolute!important;inset:0!important;grid-column:auto!important;grid-row:auto!important;border:0!important;background:transparent!important;padding:0 8px!important;pointer-events:none!important}#modal.show #productGalleryControls button{pointer-events:auto!important}}
@media(max-width:899px){#modal.show .mdata{padding:15px 16px 20px!important}#modal.show .zoom{padding:5px!important}#modal.show .mdata .benefits{grid-template-columns:repeat(2,minmax(0,1fr))}#modal.show .mdata #cart{position:relative!important;bottom:auto!important}}

/* Poster begins at the top; gallery navigation sits below the poster. */
#modal.show .zoom{align-items:flex-start!important;justify-content:center!important;overflow-y:auto!important}
#modal.show .zoom #mimg{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:top center!important}
#modal.show #productGalleryControls:not([hidden]){position:relative!important;inset:auto!important;grid-column:1!important;grid-row:2!important;display:flex!important;justify-content:center!important;gap:22px!important;margin:0!important;padding:9px!important;background:#fff!important;border-top:1px solid #e6e9ee!important;pointer-events:auto!important}
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next{pointer-events:auto!important}
@media(max-width:899px){#modal.show #productGalleryControls:not([hidden]){grid-column:auto!important;grid-row:auto!important}}

/* Restore correct two-column grid after gallery navigation was moved below poster. */
@media(min-width:701px){
#modal.show .modalbox{grid-template-rows:minmax(0,1fr) auto!important}
#modal.show .zoom{grid-column:1!important;grid-row:1!important;min-height:0!important;overflow:auto!important}
#modal.show #productGalleryControls:not([hidden]){grid-column:1!important;grid-row:2!important;position:relative!important;inset:auto!important;justify-content:center!important;align-self:end!important;pointer-events:auto!important}
#modal.show .mdata{grid-column:2!important;grid-row:1 / 3!important;min-width:0!important;min-height:0!important;overflow-y:auto!important}
#modal.show .zoom #mimg{width:100%!important;height:auto!important;max-height:none!important}
}
@media(max-width:700px){
#modal.show .modalbox{display:flex!important;flex-direction:column!important;height:auto!important;max-height:none!important}
#modal.show .zoom{height:auto!important;max-height:none!important;overflow:visible!important;padding-top:8px!important}
#modal.show .zoom #mimg{height:auto!important;max-height:none!important}
#modal.show #productGalleryControls:not([hidden]){order:2!important;align-self:center!important;width:100%!important}
#modal.show .mdata{order:3!important;height:auto!important;overflow:visible!important}
}

/* Full-width poster and visible arrows on the poster */
#modal.show .zoom{position:relative!important;display:block!important;padding:0!important;background:#fff!important;overflow-y:auto!important;overflow-x:hidden!important}
#modal.show .zoom #mimg{display:block!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;object-fit:contain!important;margin:0!important;border-radius:0!important}
#modal.show #productGalleryControls:not([hidden]){position:sticky!important;inset:auto!important;bottom:12px!important;left:0!important;width:100%!important;box-sizing:border-box!important;display:flex!important;justify-content:center!important;gap:22px!important;margin:-58px 0 0!important;padding:7px!important;background:transparent!important;border:0!important;z-index:8!important;pointer-events:none!important}
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;background:#fff!important;border:2px solid #e31837!important;color:#09264a!important;box-shadow:0 2px 12px #0004!important}
@media(max-width:700px){#modal.show .modalbox{width:100%!important;max-width:100%!important}#modal.show .zoom{width:100%!important;max-height:none!important;overflow:visible!important}#modal.show #productGalleryControls:not([hidden]){order:initial!important;align-self:auto!important;position:relative!important;margin:-56px 0 0!important}#modal.show .mdata{padding-top:18px!important}}

/* FIX 2026-10-18: no empty gallery grid track; arrows centered on actual image. */
@media(min-width:701px){
#modal.show .modalbox{grid-template-rows:auto minmax(0,1fr)!important;align-content:start!important}
#modal.show .zoom{grid-column:1!important;grid-row:1 / 3!important;align-self:start!important;height:auto!important;min-height:0!important;max-height:100%!important;overflow-y:auto!important;position:relative!important}
#modal.show .mdata{grid-column:2!important;grid-row:1 / 3!important}
}
#modal.show .zoom #mimg{width:100%!important;height:auto!important;max-height:none!important;display:block!important}
#modal.show .zoom #productGalleryControls:not([hidden]){position:absolute!important;top:0!important;bottom:auto!important;left:0!important;right:0!important;inset:0!important;height:auto!important;width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:0!important;padding:0 9px!important;margin:0!important;background:transparent!important;pointer-events:none!important;z-index:9!important}
#modal.show .zoom #productGalleryControls .pg-prev,#modal.show .zoom #productGalleryControls .pg-next{pointer-events:auto!important;flex:0 0 48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;border-radius:50%!important}
@media(max-width:700px){#modal.show .zoom{height:auto!important;min-height:0!important;overflow:visible!important}#modal.show .zoom #productGalleryControls:not([hidden]){position:absolute!important;inset:0!important;order:initial!important;margin:0!important;padding:0 5px!important}#modal.show .zoom #productGalleryControls .pg-prev,#modal.show .zoom #productGalleryControls .pg-next{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex-basis:44px!important}}

/* Product poster first, details below; dots indicate swipeable second image. */
#modal.show .modalbox{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;grid-template-rows:none!important;width:min(900px,96vw)!important;max-width:96vw!important;height:min(96dvh,1100px)!important;max-height:96dvh!important;overflow-y:auto!important;overflow-x:hidden!important;align-items:stretch!important;justify-content:flex-start!important;scrollbar-gutter:stable!important}
#modal.show .zoom{display:block!important;position:relative!important;flex:0 0 auto!important;align-self:stretch!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:0!important;margin:0!important;background:#fff!important}
#modal.show .zoom #mimg{display:block!important;width:100%!important;height:auto!important;max-height:none!important;max-width:100%!important;object-fit:contain!important;touch-action:pan-y!important;user-select:none!important;-webkit-user-drag:none!important}
#modal.show .mdata{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;grid-column:auto!important;grid-row:auto!important;position:relative!important;width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;box-sizing:border-box!important;padding:18px 22px 28px!important;gap:10px!important}
#modal.show .mdata h2{font-size:clamp(22px,3vw,32px)!important;line-height:1.22!important}
#modal.show #productGalleryControls:not([hidden]){display:flex!important;position:absolute!important;top:auto!important;bottom:10px!important;left:50%!important;right:auto!important;inset:auto auto 10px 50%!important;transform:translateX(-50%)!important;width:auto!important;height:auto!important;min-height:28px!important;margin:0!important;padding:7px 13px!important;gap:12px!important;align-items:center!important;justify-content:center!important;background:#ffffffeb!important;border-radius:30px!important;box-shadow:0 2px 12px #0002!important;z-index:9!important;pointer-events:auto!important}
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next,#modal.show #productGalleryControls .pg-counter{display:none!important}
#modal.show #productGalleryControls .pg-dot{display:block!important;position:relative!important;visibility:visible!important;opacity:1!important;width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important;border-radius:50%!important;border:1px solid #a6adba!important;background:#d1d5db!important;padding:0!important;pointer-events:auto!important;cursor:pointer!important}
#modal.show #productGalleryControls .pg-dot[aria-pressed=true]{background:#e31837!important;border-color:#e31837!important;transform:scale(1.12)!important}
@media(max-width:700px){#modal.show .modalbox{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;display:flex!important;flex-direction:column!important}#modal.show .zoom{order:1!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important}#modal.show .mdata{order:2!important;padding:18px 16px 26px!important}#modal.show #productGalleryControls:not([hidden]){position:absolute!important;inset:auto auto 9px 50%!important;margin:0!important;order:initial!important}}
/* 2026-10-20: arrows replace dots on two-image product modal */
#modal.show .zoom #productGalleryControls:not([hidden]){position:absolute!important;inset:0!important;top:0!important;bottom:0!important;left:0!important;right:0!important;transform:none!important;width:100%!important;height:100%!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:0!important;margin:0!important;padding:0 7px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;pointer-events:none!important;box-sizing:border-box!important;z-index:12!important}
#modal.show .zoom #productGalleryControls .pg-dot,#modal.show .zoom #productGalleryControls .pg-counter{display:none!important}
#modal.show .zoom #productGalleryControls .pg-prev,#modal.show .zoom #productGalleryControls .pg-next{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;flex:0 0 46px!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;border:2px solid #e31837!important;border-radius:50%!important;background:#fff!important;color:#102b50!important;font-size:31px!important;box-shadow:0 3px 14px #0005!important}
/* Final selector overrides all legacy dot-mode declarations */
#modal.show #productGalleryControls:not([hidden]){position:absolute!important;inset:0!important;transform:none!important;width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 7px!important;margin:0!important;background:transparent!important;box-shadow:none!important;pointer-events:none!important}
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next{display:inline-flex!important;pointer-events:auto!important}
/* 2026-10-20: translucent arrows keep poster text legible */
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next{background:rgba(255,255,255,.53)!important;color:rgba(12,35,65,.85)!important;border:1px solid rgba(227,24,55,.52)!important;box-shadow:0 2px 7px rgba(0,0,0,.12)!important;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex-basis:40px!important;font-size:27px!important}
#modal.show #productGalleryControls .pg-prev:active,#modal.show #productGalleryControls .pg-next:active{background:rgba(255,255,255,.8)!important}
/* 2026-10-20: higher transparency so poster labels remain readable */
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next{background:rgba(255,255,255,.18)!important;color:rgba(12,35,65,.67)!important;border:1px solid rgba(227,24,55,.28)!important;box-shadow:0 1px 3px rgba(0,0,0,.07)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#modal.show #productGalleryControls .pg-prev:active,#modal.show #productGalleryControls .pg-next:active{background:rgba(255,255,255,.38)!important}
/* Keep navigation arrows at the same viewport position while scrolling a tall poster */
#modal.show #productGalleryControls:not([hidden]),#modal.show .zoom #productGalleryControls:not([hidden]){position:fixed!important;inset:50% 0 auto 0!important;top:50%!important;left:0!important;right:0!important;bottom:auto!important;transform:translateY(-50%)!important;width:100vw!important;height:44px!important;min-height:44px!important;max-height:44px!important;z-index:1002!important;padding:0 max(8px,env(safe-area-inset-right))!important;display:flex!important;justify-content:space-between!important;align-items:center!important;background:transparent!important;box-shadow:none!important;pointer-events:none!important}
#modal.show #productGalleryControls .pg-prev,#modal.show #productGalleryControls .pg-next{pointer-events:auto!important}
