/* Sideways screening follows the viewer's gesture on either axis. */
/* A compact rail replaces the long index of ticks in the selected edition. */
body.overlay-feed .position{display:none}
.feed-navigation{
 position:fixed;right:max(12px,env(safe-area-inset-right));top:50%;z-index:24;
 width:44px;transform:translateY(-50%);color:#fff;
 filter:drop-shadow(0 1px 3px #0009);
 opacity:0;pointer-events:none;transition:opacity .32s ease;
}
body.navigation-visible .feed-navigation,
body.is-scrubbing .feed-navigation,
.feed-navigation.keyboard-navigation{opacity:1;pointer-events:auto;transition-duration:.16s}
.feed-navigation::before{content:"";position:absolute;inset:4px 9px;border-radius:999px;background:#0006;z-index:-1;pointer-events:none}
.feed-nav-button{display:grid;place-items:center;width:44px;height:44px;padding:0;opacity:.55;touch-action:manipulation;transition:opacity .2s}
.feed-nav-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.feed-nav-button:hover,.feed-nav-button:focus-visible{opacity:1}
.feed-nav-button:focus-visible{outline:1px solid currentColor;outline-offset:-8px}
.feed-nav-button:disabled{opacity:.15;cursor:default}
.feed-nav-track{display:block;position:relative;width:44px;height:128px;margin:4px auto;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.feed-nav-track::before{content:"";position:absolute;left:21.5px;top:0;bottom:0;width:1px;background:#ffffff30;pointer-events:none}
.feed-nav-thumb{position:absolute;left:20px;top:calc(var(--film-progress,0) * 110px);width:4px;height:18px;border-radius:3px;background:#ffffffb3;pointer-events:none}
.feed-nav-track:hover .feed-nav-thumb,.feed-nav-track:focus-visible .feed-nav-thumb,body.is-scrubbing .feed-nav-thumb{background:#fff;width:6px;left:19px}
.feed-nav-track:focus-visible{outline:1px solid #ffffff80;outline-offset:-8px;border-radius:10px}
body.is-scrubbing .feed-nav-track{cursor:grabbing}
body.overlay-feed.is-scrubbing #feed{scroll-snap-type:none!important;scroll-behavior:auto!important;overflow-anchor:none}
body.overlay-feed.is-scrubbing .media-stage::after{transition:none}
body.overlay-feed.sideways-carousel .feed-navigation{display:none}
@media(max-width:700px){.feed-navigation{right:max(0px,env(safe-area-inset-right))}}
@media(prefers-reduced-motion:reduce){.feed-navigation,.feed-nav-button{transition:none}}
.carousel-nav{display:none}
body.overlay-feed.sideways-carousel .video-tap{touch-action:pinch-zoom}
body.overlay-feed.sideways-carousel .film{touch-action:pinch-zoom}
body.overlay-feed.sideways-carousel #feed{touch-action:pan-y pinch-zoom;overscroll-behavior:contain}
body.overlay-feed.sideways-carousel .carousel-nav{display:grid;place-items:center;position:fixed;top:50%;z-index:24;width:44px;height:64px;padding:10px;border:0;border-radius:0;background:none;color:#fff;opacity:.55;transform:translateY(-50%);cursor:pointer;filter:drop-shadow(0 1px 3px #0009);transition:opacity .18s}
body.overlay-feed.sideways-carousel .carousel-previous{left:max(8px,env(safe-area-inset-left))}
body.overlay-feed.sideways-carousel .carousel-next{right:max(8px,env(safe-area-inset-right))}
body.overlay-feed.sideways-carousel .carousel-nav svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
body.overlay-feed.sideways-carousel .carousel-nav:hover,body.overlay-feed.sideways-carousel .carousel-nav:focus-visible{opacity:1}
body.overlay-feed.sideways-carousel .carousel-nav:focus-visible{outline:1px solid currentColor;outline-offset:-5px}
body.overlay-feed.sideways-carousel .carousel-nav:disabled{opacity:.13;cursor:default;pointer-events:none}
body.overlay-feed.horizontal-carousel #feed{display:flex;flex-flow:row nowrap;align-items:stretch;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory}
body.overlay-feed.horizontal-carousel #feed>.film,body.overlay-feed.horizontal-carousel #portfolio-ending{flex:0 0 100%;width:100%;min-width:0;height:100dvh;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
body.overlay-feed.horizontal-carousel #portfolio-ending{box-sizing:border-box;overflow:hidden}
body.overlay-feed.sideways-carousel .feed-intro{display:none}
@media(prefers-reduced-motion:reduce){body.overlay-feed.sideways-carousel .carousel-nav{transition:none}}

body.overlay-feed.sideways-carousel #portfolio-ending{box-sizing:border-box;height:100dvh;min-height:100dvh;overflow:hidden}
body.overlay-feed.sideways-carousel .closing-inner{max-height:100%;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}
