/* Stage646: one independent media viewer; no dependency on old nested modals */
#ios646-viewer{display:none;position:fixed;inset:0;z-index:2147483640;background:#050505;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);touch-action:pan-y}
#ios646-viewer.open{display:flex!important}
#ios646-viewer .ios646-media{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;min-height:0}
#ios646-viewer .ios646-media>img,#ios646-viewer .ios646-media>video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;background:#000}
#ios646-viewer .ios646-media>video{width:100%;height:100%;object-fit:contain}
#ios646-viewer button{position:absolute;z-index:3;color:white;background:rgba(15,18,25,.75);border:1px solid rgba(255,255,255,.3);border-radius:12px;min-width:42px;min-height:42px;font-size:30px}
#ios646-viewer .ios646-close{top:calc(env(safe-area-inset-top) + 12px);right:calc(env(safe-area-inset-right) + 12px)}
#ios646-viewer .ios646-prev{left:12px;top:50%;transform:translateY(-50%)}
#ios646-viewer .ios646-next{right:12px;top:50%;transform:translateY(-50%)}
#ios646-viewer .ios646-count{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 16px);left:50%;transform:translateX(-50%);color:#fff;background:#151515a8;padding:5px 12px;border-radius:12px}
#ios646-viewer .ios646-watermark{position:absolute;top:calc(env(safe-area-inset-top) + 18px);left:16px;color:#fff;font-weight:700;text-shadow:0 1px 5px #000;pointer-events:none;max-width:75%;font-size:14px}
@media(max-width:767px){
 .shorts-page-v89,.shorts-feed-v89{overscroll-behavior-y:contain!important}
 .shorts-feed-v89{scroll-behavior:auto!important;-webkit-overflow-scrolling:touch;scroll-snap-type:y mandatory!important}
 .short-slide-v89{scroll-snap-align:start!important;scroll-snap-stop:normal!important;content-visibility:visible!important;contain:none!important;transform:none!important;filter:none!important}
 .short-slide-v89 video{transform:none!important;filter:none!important;backdrop-filter:none!important}
 .catalog-grid>.catalog-card{content-visibility:visible!important;contain:none!important;transform:none!important}
}

/* Stage647: profile video uses the same branding and information as the Shorts feed. */
#ios646-viewer .ios647-watermark{position:absolute!important;z-index:2!important;top:calc(env(safe-area-inset-top) + 18px)!important;left:16px!important;right:auto!important;bottom:auto!important;pointer-events:none!important;color:#fff!important;transform:none!important}
#ios646-viewer .ios647-info{position:absolute!important;z-index:2!important;bottom:calc(env(safe-area-inset-bottom) + 35px)!important;left:12px!important;right:12px!important;top:auto!important;max-height:45%;overflow-y:auto;color:#fff!important;transform:none!important;text-align:center!important;pointer-events:auto}
#ios646-viewer .ios647-info a{color:inherit}
#ios646-viewer .ios647-info .short-prices-v461{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}


/* Stage652: match the actual /shorts viewport, not the browser's whole screen. */
#ios646-viewer.open{padding:0!important;display:block!important;overflow:hidden!important;background:#000!important}
#ios646-viewer.open .ios646-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;overflow:hidden!important;isolation:isolate!important}
#ios646-viewer.open .ios646-media>video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;max-width:none!important;max-height:none!important}
#ios646-viewer.open .ios646-media>.short-watermark-v460{position:absolute!important;z-index:4!important;top:calc(env(safe-area-inset-top) + 20px)!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translateX(-50%)!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:2px!important;padding:0!important;margin:0!important;width:max-content!important;min-width:0!important;max-width:90%!important;background:none!important;background-color:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;text-align:center!important;pointer-events:none!important;color:#fff!important;text-shadow:0 2px 5px #000!important}
#ios646-viewer.open .ios646-media>.short-watermark-v460 .short-brand-line-v463{font-size:clamp(13px,3.4vw,18px)!important;line-height:1.1!important;white-space:nowrap!important}
#ios646-viewer.open .ios646-media>.short-watermark-v460 .short-id-line-v463{font-size:11px!important;line-height:1.2!important;margin:0!important}
#ios646-viewer.open .ios646-media>.short-overlay-v89.short-overlay-v460{position:absolute!important;z-index:4!important;top:auto!important;bottom:calc(env(safe-area-inset-bottom) + 25px)!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(520px,100%)!important;max-width:100%!important;display:flex!important;flex-direction:column!important;gap:14px!important;padding:0 12px 10px!important;margin:0!important;box-sizing:border-box!important;overflow:visible!important;background:none!important;background-image:none!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;pointer-events:none!important;text-align:right!important}
#ios646-viewer.open .ios646-media>.short-overlay-v460 .short-author-v89{display:flex!important;flex-direction:column!important;align-items:flex-end!important;align-self:stretch!important;gap:4px!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;background:none!important;background-image:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-decoration:none!important;color:#fff!important;text-align:right!important;pointer-events:auto!important}
#ios646-viewer.open .ios646-media>.short-overlay-v460 .short-author-v89 b{display:block!important;font-size:18px!important;line-height:1.25!important}
#ios646-viewer.open .ios646-media>.short-overlay-v460 .short-author-v89 span{display:block!important;font-size:13px!important;line-height:1.3!important}
#ios646-viewer.open .ios646-media>.short-overlay-v460 .short-author-v89 em{display:block!important;visibility:visible!important;opacity:1!important;font-size:11px!important;font-style:normal!important;line-height:1.3!important;color:#e5e7eb!important}
#ios646-viewer.open .ios646-media>.short-overlay-v460 .short-prices-v460{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:6px!important;width:100%!important;margin:0!important;padding:0!important;background:none!important}
#ios646-viewer.open .ios646-media>.short-overlay-v460 .short-prices-v460 span{font-size:11px!important;padding:4px 6px!important}
#ios646-viewer.open .ios646-close{z-index:10!important;top:calc(env(safe-area-inset-top) + 12px)!important;right:12px!important}

/* Stage653: the empty photo counter was still painted as a dark pill in video mode. */
#ios646-viewer .ios646-count:empty{display:none!important;background:none!important;padding:0!important;border:0!important;box-shadow:none!important}
#ios646-viewer.open:has(.ios646-media>video) .ios646-count{display:none!important}

/* Stage661: photo lightbox fills the available browser viewport on phones.
   Video retains its independent Shorts styling. */
#ios646-viewer.open:has(.ios646-media>img) .ios646-media>img{
 position:absolute!important;inset:0!important;display:block!important;
 width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;
 max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center center!important;
 margin:0!important;padding:0!important;border:0!important;background:#000!important;
}
#ios646-viewer.open:has(.ios646-media>img){height:100dvh!important;min-height:100vh!important;}
#ios646-viewer.open:has(.ios646-media>img) .ios646-media{height:100%!important;}

/* Stage662: swipe hint instead of photo navigation arrows. */
#ios646-viewer .ios646-prev,#ios646-viewer .ios646-next{display:none!important}
#ios646-viewer .ios662-hint{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 53px);left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:7px 12px;border-radius:14px;background:rgba(15,18,25,.65);color:#fff;font-size:12px;line-height:1.35;text-align:center;pointer-events:none;z-index:12}
#ios646-viewer .ios662-hint[hidden]{display:none!important}

/* Stage663: natural photo proportions, one unified viewer, no stretching. */
#ios646-viewer.open:has(.ios646-media>img) .ios646-media{display:flex!important;align-items:center!important;justify-content:center!important;}
#ios646-viewer.open:has(.ios646-media>img) .ios646-media>img{position:static!important;inset:auto!important;display:block!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100vw!important;max-height:100dvh!important;object-fit:contain!important;object-position:center!important;margin:auto!important;}
