body.feed-open{overflow:hidden;overscroll-behavior:none}
.video-feed{--feed-height:100dvh;--feed-page-height:100dvh;--feed-footer-size:134px;position:fixed;inset:0;margin:auto;width:min(100vw,560px);height:var(--feed-height);max-width:100vw;max-height:var(--feed-height);padding:0;border:0;border-radius:0;background:#000;color:#fff;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;touch-action:pan-y}
.video-feed[open]{display:flex;flex-direction:column}
body.task-workspace dialog.video-feed{border:0!important;border-radius:0!important;outline:none}
.video-feed::backdrop{background:#000e}
.video-feed button,.video-feed a{font:inherit;font-size:15px;min-width:44px;min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.feed-header{position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:4px;padding:calc(env(safe-area-inset-top,0px) + 4px) calc(env(safe-area-inset-right,0px) + 8px) 8px calc(env(safe-area-inset-left,0px) + 8px);z-index:10;background:linear-gradient(#0009,#0000);pointer-events:none}
.feed-header>*{pointer-events:auto}.feed-header button{background:none;border:0;color:#fff;cursor:pointer;text-shadow:0 1px 5px #0008}.feed-header>#feed-back{font-size:34px;line-height:1}.feed-header-actions{display:flex;gap:0}.feed-header-actions button{font-size:13px;min-width:44px;padding:6px}
.feed-tabs{display:flex;gap:18px}.feed-tabs button{font-size:17px;opacity:.66;padding:8px 1px;border-bottom:2px solid transparent}.feed-tabs button[aria-pressed=true]{opacity:1;border-bottom-color:#fff;font-weight:700}
.feed-viewport{flex:1 1 auto;min-height:0;width:100%;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;outline:none;touch-action:pan-y}
.feed-viewport::-webkit-scrollbar{display:none}.feed-card{position:relative;width:100%;height:var(--feed-page-height);scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden;background:#000}
.feed-media-stage{position:absolute;left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);top:env(safe-area-inset-top,0px);bottom:0;pointer-events:none}
.feed-card>video,.feed-cover{position:absolute;object-fit:contain!important;object-position:center;max-width:none;max-height:none;transform:rotate(var(--media-rotation,0deg))!important;transform-origin:center;filter:none!important;aspect-ratio:auto;background:#000;pointer-events:none;inset:auto}.feed-cover{z-index:0;opacity:1}.feed-card>video{z-index:1}
.feed-tap{-webkit-touch-callout:none;position:absolute;inset:0;width:auto;height:auto;border:0;padding:0;background:transparent;color:#fffd;font-size:64px!important;z-index:2;display:grid;place-items:center;cursor:pointer;text-shadow:0 1px 14px #000;touch-action:pan-y!important;user-select:none;-webkit-user-select:none}
.feed-tap:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.feed-info{position:absolute;bottom:45px;left:calc(env(safe-area-inset-left,0px) + 14px);right:calc(env(safe-area-inset-right,0px) + 14px);z-index:4;pointer-events:none;text-shadow:0 1px 5px #000}
.feed-info h2{font-size:14px;line-height:1.45;font-weight:400;letter-spacing:0;margin:4px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.feed-info p{font-size:12px;line-height:1.5;margin:0;color:#ddd}.feed-info .feed-source{font-size:15px;font-weight:700;color:#fff}.feed-info .feed-gesture-hint{color:#888;font-size:10px}
.feed-actions{position:absolute;bottom:calc(var(--feed-footer-size) + 12px);right:calc(env(safe-area-inset-right,0px) + 2px);display:flex;align-items:center;flex-direction:column;gap:15px;z-index:5;width:60px;filter:drop-shadow(0 1px 3px #0006)}
.feed-actions button{display:flex;align-items:center;justify-content:center;flex-direction:column;width:60px;min-height:50px;padding:2px;border:0;background:transparent;color:#fff;cursor:pointer}.feed-actions svg{width:30px;height:30px}.feed-actions .feed-like svg{width:34px;height:34px}.feed-actions small{font-size:10px;line-height:1.4;margin-top:5px;font-weight:600}.feed-actions .feed-like[aria-pressed=true]{color:#fe2c55}.feed-actions button:active{transform:scale(.92)}
.feed-seek{position:absolute;bottom:3px;left:calc(env(safe-area-inset-left,0px) + 8px);width:calc(100% - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));min-height:30px;height:30px;margin:0;z-index:6;accent-color:#fff;touch-action:pan-x!important;font-size:16px;background:transparent;opacity:.8}.feed-seek:focus-visible{outline:2px solid #fff}
.feed-time{position:absolute;right:calc(env(safe-area-inset-right,0px) + 14px);bottom:29px;z-index:4;font-size:10px;color:#aaa;font-variant-numeric:tabular-nums}.feed-seeking .feed-time{left:0;right:0;bottom:70px;text-align:center;font-size:25px;color:white;font-weight:600}.feed-seeking .feed-info,.feed-seeking .feed-actions{opacity:0}.feed-seeking .feed-seek{height:44px;min-height:44px;opacity:1}
.feed-speed{display:none;position:absolute;left:20px;right:20px;bottom:38px;text-align:center;font-size:13px;z-index:8;pointer-events:none}.feed-speeding .feed-speed{display:block}.feed-speeding .feed-info,.feed-speeding .feed-actions,.feed-speeding .feed-time{opacity:0}
.feed-heart-burst{position:absolute;z-index:9;width:88px;height:88px;pointer-events:none;color:#fe2c55;animation:feed-heart .8s ease-out forwards}.feed-heart-burst svg{width:100%;height:100%;filter:drop-shadow(0 2px 6px #0004)}@keyframes feed-heart{0%{opacity:0;transform:translate(-50%,-50%) rotate(-15deg) scale(.2)}20%{opacity:1;transform:translate(-50%,-50%) rotate(-15deg) scale(1.2)}50%{opacity:1;transform:translate(-50%,-50%) rotate(-15deg) scale(1)}100%{opacity:0;transform:translate(-50%,-100%) rotate(-15deg) scale(1.3)}}
.feed-state{position:absolute;top:36%;left:20px;right:20px;text-align:center;font-size:14px;line-height:1.7;z-index:7;pointer-events:none;text-shadow:0 2px 8px #000}.feed-toast{position:absolute;left:12px;right:12px;top:calc(env(safe-area-inset-top,0px) + 65px);z-index:15;border:1px solid #ffffff20;border-radius:12px;background:#222e;backdrop-filter:blur(16px);padding:4px 12px;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none}.feed-toast button{pointer-events:auto;color:#fff;background:transparent;border:0}
.feed-filter-sheet,.feed-more-sheet{position:absolute;inset:auto 0 0;z-index:30;padding:18px calc(env(safe-area-inset-right,0px) + 18px) calc(env(safe-area-inset-bottom,0px) + 18px) calc(env(safe-area-inset-left,0px) + 18px);background:#202020;max-height:calc(var(--feed-height) - 65px);overflow:auto;overscroll-behavior:contain;border-radius:18px 18px 0 0;border-top:1px solid #ffffff25;box-sizing:border-box}
.feed-filter-sheet>header,.feed-more-sheet>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.feed-filter-sheet h2,.feed-more-sheet h2{margin:0;font-size:18px}.feed-filter-sheet button,.feed-more-sheet button,.feed-more-sheet a{border:1px solid #555;border-radius:10px;color:#fff;background:#303030;padding:10px 15px;cursor:pointer;text-decoration:none;box-sizing:border-box}.feed-filter-sheet label{display:block;min-width:0;font-size:13px;color:#bbb;margin-top:12px}.feed-filter-sheet input{display:block;max-width:100%;width:100%;min-width:0;min-height:44px;margin-top:6px;background:#111;color:#fff;border:1px solid #555;border-radius:8px;font:inherit;font-size:16px;padding:10px;box-sizing:border-box;color-scheme:dark}.feed-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.feed-filter-sheet p,.feed-more-sheet p{font-size:12px;line-height:1.7;color:#aaa}.feed-sheet-actions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.feed-sheet-actions .feed-apply{background:#fff;color:#111;border-color:#fff;min-width:120px}.feed-filter-sheet .feed-prefetch-label{display:flex;align-items:center;gap:10px;min-height:44px;color:#ddd}.feed-filter-sheet #feed-preload{appearance:auto;width:20px;min-height:20px;height:20px;flex:none;padding:0;margin:0;accent-color:#ddd}.feed-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.feed-more-grid>*{display:flex;align-items:center;justify-content:center;min-height:64px!important;text-align:center}
.video-feed [hidden]{display:none!important}.feed-hidden>.feed-info{opacity:.4}.feed-hidden>video,.feed-hidden>.feed-cover{visibility:hidden}
@media(max-width:700px){.video-feed{width:100vw;inset:0;margin:0}}
@media(max-height:500px){.video-feed{--feed-footer-size:100px}.feed-actions{gap:0;bottom:calc(var(--feed-footer-size) + 6px)}.feed-actions button{min-height:44px}.feed-actions svg,.feed-actions .feed-like svg{width:23px;height:23px}.feed-actions small{font-size:9px;margin-top:2px}.feed-info h2{-webkit-line-clamp:1;font-size:12px;line-height:1.4;margin-bottom:2px}.feed-info .feed-source{font-size:12px}.feed-info .feed-gesture-hint{display:none}.feed-filter-grid{grid-template-columns:1fr 1fr}.feed-header{padding-top:env(safe-area-inset-top,0px)}.feed-tabs button{font-size:15px}}
@media(max-height:500px) and (max-width:1000px){.video-feed{width:100vw;inset:0;margin:0}}
@media(max-width:350px){.feed-filter-grid{grid-template-columns:1fr}.feed-tabs{gap:12px}.feed-header-actions button{font-size:12px;min-width:44px}}
@media(prefers-reduced-motion:reduce){.feed-viewport{scroll-behavior:auto}.feed-heart-burst{animation:none;opacity:0}}

.feed-card::after{content:"";position:absolute;inset:auto 0 0;height:min(36%,230px);z-index:3;pointer-events:none;background:linear-gradient(transparent,#0008)}

.video-feed.feed-compact-rail .feed-actions{display:grid;grid-template-columns:repeat(2,52px);width:104px;gap:0}.video-feed.feed-compact-rail .feed-actions button{width:52px;min-height:44px}

/* Match the published NightShelf .sheet / form / switch components. */
.video-feed .feed-filter-sheet{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;width:min(600px,calc(100vw - 40px));max-height:calc(var(--feed-height) - 48px);padding:0;overflow:hidden;border:1px solid #414145;border-radius:22px;background:#1c1c1f;color:#f5f5f7;box-shadow:0 30px 90px #0008;font:16px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Noto Sans SC",sans-serif}
.feed-filter-sheet *{box-sizing:border-box}
.video-feed .feed-filter-sheet>header{flex-shrink:0;padding:26px 28px 20px;gap:16px;border-bottom:1px solid #363639}
.video-feed .feed-filter-sheet h2{font:600 24px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Noto Sans SC",sans-serif;letter-spacing:-.6px;margin:0}
.video-feed #feed-filter-close{width:44px;height:44px;min-width:44px;padding:0;border:0;border-radius:50%;background:#29292d;color:#96969f;font-size:24px;line-height:1}
.feed-filter-body{padding:24px 28px;overflow-y:auto;overscroll-behavior:contain;min-height:0;scroll-padding:20px}
.video-feed .feed-filter-sheet label{display:block;margin:0;color:#d3d3d9;font-size:14px;line-height:1.5;min-width:0}
.video-feed .feed-filter-sheet input:not([type=checkbox]){display:block;min-width:0;min-inline-size:0;max-width:100%;width:100%;height:48px;min-height:48px;padding:0 14px;border:1px solid #444449;border-radius:10px;background:#242428;color:#f5f5f7;font-size:16px;margin-top:8px;outline:none;appearance:auto}
.video-feed .feed-filter-sheet input:focus-visible{border-color:#428dff;box-shadow:0 0 0 3px #428dff20}
.feed-filter-sheet input::placeholder{color:#81818a}
.feed-filter-sheet input[type=date]::-webkit-date-and-time-value{text-align:left;min-width:0}
.feed-filter-sheet input[type=date]::-webkit-datetime-edit{min-width:0;overflow:hidden}
.feed-filter-body>.domain-picker{margin-top:20px}
.video-feed .feed-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin-top:20px}
.video-feed .feed-filter-sheet .feed-prefetch-label{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0 0;min-height:48px;cursor:pointer}
.feed-prefetch-label strong{display:block;font-size:14px;font-weight:550;color:#f5f5f7}
.feed-prefetch-label small{display:block;font-size:12px;color:#96969f;line-height:1.5;margin-top:5px}
.video-feed .feed-filter-sheet #feed-preload{appearance:none;-webkit-appearance:none;position:relative;flex:0 0 45px;width:45px;min-width:45px;height:27px;min-height:27px;margin:0;padding:0;border:0;border-radius:30px;background:#505057;cursor:pointer;outline:none}
.video-feed .feed-filter-sheet #feed-preload:after{content:"";position:absolute;top:3px;left:3px;width:21px;height:21px;background:white;border-radius:50%;box-shadow:0 1px 3px #0006;transition:transform .2s}
.video-feed .feed-filter-sheet #feed-preload:checked{background:#428dff}
.video-feed .feed-filter-sheet #feed-preload:checked:after{transform:translateX(18px)}
.video-feed .feed-filter-sheet .feed-sheet-actions{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:20px 28px;border-top:1px solid #363639;background:#1c1c1f}
.video-feed .feed-sheet-actions button{min-height:44px;padding:10px 16px;border:0;border-radius:10px;font-size:16px;font-weight:550;line-height:24px}
.video-feed .feed-sheet-actions #feed-reset{background:transparent;color:#96969f;padding-inline:8px}
.video-feed .feed-sheet-actions .feed-apply{background:#428dff;color:white;min-width:140px}
@media(max-width:700px){.video-feed .feed-filter-sheet{position:absolute;inset:auto 0 0;transform:none;width:100%;max-width:100%;max-height:calc(var(--feed-height) - 18px);border-radius:22px 22px 0 0;border-bottom:0}.video-feed .feed-filter-sheet>header{padding:20px 20px 16px}.video-feed .feed-filter-sheet h2{font-size:22px}.feed-filter-body{padding:20px}.video-feed .feed-filter-grid{gap:20px 12px}.video-feed .feed-filter-sheet .feed-sheet-actions{padding:16px 20px calc(16px + env(safe-area-inset-bottom,0px));gap:12px}.video-feed .feed-sheet-actions .feed-apply{min-width:126px}}
@media(max-width:360px){.video-feed .feed-filter-sheet>header,.feed-filter-body,.video-feed .feed-filter-sheet .feed-sheet-actions{padding-left:16px;padding-right:16px}.video-feed .feed-filter-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-height:550px) and (orientation:landscape){.video-feed .feed-filter-sheet{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(600px,calc(100vw - 32px));max-height:calc(var(--feed-height) - 16px);border-radius:18px}.video-feed .feed-filter-sheet>header{padding:12px 20px}.feed-filter-body{padding:16px 20px}.video-feed .feed-filter-sheet .feed-sheet-actions{padding:10px 20px}}

/* Content first: centered tabs, two contextual actions, controls only on hold. */
.video-feed .feed-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:start;padding:calc(env(safe-area-inset-top,0px) + 4px) calc(env(safe-area-inset-right,0px) + 10px) 14px calc(env(safe-area-inset-left,0px) + 10px);background:linear-gradient(#0007,transparent)}
.video-feed .feed-header>#feed-back,.video-feed #feed-filter-toggle{display:grid;place-items:center;width:44px;height:44px;padding:10px;font-size:16px;line-height:1}
.video-feed .feed-header svg{width:23px;height:23px;filter:drop-shadow(0 1px 3px #0008)}
.video-feed .feed-tabs{justify-content:center;gap:24px}
.video-feed .feed-tabs button{min-height:44px;padding:8px 2px 6px;font-size:17px;letter-spacing:.1px}
.video-feed .feed-header-actions{justify-content:end}
.video-feed .feed-info{bottom:20px;right:calc(env(safe-area-inset-right,0px) + 76px);left:calc(env(safe-area-inset-left,0px) + 16px)}
.video-feed .feed-info h2{display:block;margin:5px 0 0;overflow:visible;-webkit-line-clamp:unset}
.video-feed .feed-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;max-width:100%;width:100%;min-width:0;min-height:44px;padding:0;text-align:left;border:0;border-radius:0;background:none;color:#fff;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0;text-shadow:0 1px 5px #000;pointer-events:auto;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.video-feed .feed-title[aria-expanded=true]{display:block;max-height:min(28vh,180px);overflow-y:auto;overscroll-behavior:contain;background:#0007;border-radius:10px;padding:8px 10px;margin-left:-10px}
.video-feed .feed-source{font-size:15px;line-height:1.4}
.video-feed .feed-actions{bottom:24px;gap:20px;right:calc(env(safe-area-inset-right,0px) + 4px);width:56px}
.video-feed .feed-actions button{width:56px;min-height:54px;padding:2px}
.video-feed .feed-actions svg{width:31px;height:31px}.video-feed .feed-actions .feed-like svg{width:36px;height:36px}
.video-feed .feed-actions small{font-size:11px;line-height:1.3;margin-top:5px;font-weight:500}
.feed-gesture-coach{position:absolute;left:50%;bottom:calc(var(--mobile-nav-height,0px) + 110px);transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);box-sizing:border-box;padding:10px 14px;margin:0;border-radius:22px;background:#242428e8;color:#f5f5f7;font-size:12px;line-height:1.5;z-index:14;pointer-events:none;text-align:center;box-shadow:0 4px 20px #0005;backdrop-filter:blur(10px)}
@media(max-height:500px){.video-feed .feed-info{bottom:12px;right:74px}.video-feed .feed-title{font-size:12px;-webkit-line-clamp:1;min-height:32px}.video-feed .feed-actions{bottom:12px;gap:6px}.video-feed .feed-actions button{min-height:44px}.video-feed .feed-actions svg,.video-feed .feed-actions .feed-like svg{width:24px;height:24px}.video-feed .feed-actions small{font-size:10px;margin-top:2px}.video-feed.feed-compact-rail .feed-actions{display:flex;flex-direction:column;width:56px}.feed-gesture-coach{bottom:calc(var(--mobile-nav-height,0px) + 82px)}}

/* Common playback actions remain visible. Settings are a secondary layer. */
.video-feed .feed-media-stage{bottom:56px}
.video-feed .feed-info{bottom:62px;right:78px}
.video-feed .feed-actions{bottom:64px;gap:9px;width:58px;right:4px}
.video-feed .feed-actions button{width:58px;min-height:54px;padding:3px 0}
.video-feed .feed-actions svg{width:27px;height:27px;filter:drop-shadow(0 1px 4px #0009)}
.video-feed .feed-actions .feed-like svg{width:32px;height:32px}
.video-feed .feed-actions small{font-size:11px;line-height:1.3;margin-top:4px;text-shadow:0 1px 4px #000}
.video-feed .feed-speed{top:76px;bottom:auto;left:50%;right:auto;transform:translateX(-50%);padding:9px 14px;border-radius:24px;white-space:nowrap;background:#252528e6;color:#fff;font-size:13px;font-weight:550;backdrop-filter:blur(12px)}
.video-feed .feed-speeding .feed-time{opacity:1}
@media(max-height:500px){.video-feed .feed-info{bottom:58px;right:124px}.video-feed .feed-actions,.video-feed.feed-compact-rail .feed-actions{display:grid;grid-template-columns:repeat(2,52px);gap:2px 0;bottom:64px;right:4px;width:104px}.video-feed .feed-actions button{width:52px;min-height:48px}.video-feed .feed-actions svg,.video-feed .feed-actions .feed-like svg{width:22px;height:22px}.video-feed .feed-actions small{font-size:10px;margin-top:2px}.video-feed .feed-speed{top:50px}}
