/* XLJI-style immersive feed on every viewport: one wheel/touch step, one item. */
body.ps-format-stream{overflow:hidden;background:#000;overscroll-behavior:none;padding-bottom:0}
.ps-format-stream .ft{display:none}
.ps-format-stream main{height:100svh;height:100dvh;overflow:hidden}
.fmt-single-stage{display:block;height:100%}
.fmt-feed-shell{position:relative;height:100%}
.fmt-feed{height:100svh;height:100dvh;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior-y:contain;touch-action:pan-y;background:#000}
.fmt-feed::-webkit-scrollbar{display:none}
.fmt-feed-item{height:100svh;height:100dvh;min-height:100svh;min-height:100dvh;scroll-snap-align:start;scroll-snap-stop:always;touch-action:pan-y;background:#000}
.fmt-feed-player,.fmt-feed-image,.fmt-swipe,.fmt-feed-novel{top:var(--ps-head);background:#000}
.fmt-feed-player video,.fmt-feed-image img,.fmt-swipe-slide img{width:100%;height:100%;object-fit:contain;background:#000}
.fmt-sound{position:absolute;z-index:6;left:14px;top:14px;min-width:38px;height:38px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(5,5,6,.68);box-shadow:0 5px 18px rgba(0,0,0,.28);backdrop-filter:blur(10px);color:#fff;font-size:12px;font-weight:800;text-shadow:0 1px 5px #000}
.fmt-sound .ico{width:18px;height:18px;flex:0 0 auto}
.fmt-sound .i-mute{display:none}
.fmt-feed-player.is-muted .fmt-sound .i-vol{display:none}
.fmt-feed-player.is-muted .fmt-sound .i-mute{display:block}
.fmt-feed-player:not(.is-muted) .fmt-sound span{display:none}
.fmt-feed-item.type-short_video .fmt-feed-player{left:50%;right:auto;width:min(100%,56.25vh);transform:translateX(-50%)}
.fmt-feed-item.type-short_video .fmt-feed-player video{object-fit:cover}
.fmt-feed-item.type-short_video .fmt-feed-meta{left:50%;right:auto;width:min(100%,56.25vh);padding:0 76px 0 18px;transform:translateX(-50%)}
.fmt-feed-shade{inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.9))}
.fmt-feed-meta{left:clamp(22px,4vw,64px);right:120px;bottom:34px}
.fmt-feed-meta h2{max-width:880px;font-size:clamp(20px,2vw,30px);line-height:1.14;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fmt-feed-meta p{max-width:760px;-webkit-line-clamp:2}
.fmt-feed-read{display:inline-flex;align-items:center;gap:7px;margin-top:13px;padding:9px 13px;border-radius:999px;background:var(--ps-accent);color:var(--ps-accent-ink);font-size:13px;font-weight:800;text-shadow:none}
.fmt-feed-read:hover{color:var(--ps-accent-ink);filter:brightness(1.06)}
.fmt-feed-read .ico{width:16px;height:16px}
.fmt-feed-controller{position:fixed;z-index:58;right:clamp(14px,2vw,30px);top:50%;transform:translateY(-50%);display:grid;gap:10px;margin:0;padding:0}
.fmt-feed-avatar-wrap{position:relative;width:48px;height:48px;margin:0 0 7px;border-radius:50%;isolation:isolate}
.fmt-feed-avatar{width:100%;height:100%;display:grid;place-items:center;overflow:hidden;border:2px solid rgba(255,255,255,.88);border-radius:50%;background:#202024;box-shadow:0 7px 24px rgba(0,0,0,.34);transition:transform .18s,border-color .18s}
.fmt-feed-avatar:hover{transform:scale(1.04);border-color:var(--ps-accent)}
.fmt-feed-avatar img{width:100%;height:100%;object-fit:cover}
.fmt-feed-follow{position:absolute;z-index:6;left:50%;bottom:-11px;width:22px;height:22px;margin-left:-11px;display:grid;place-items:center;border:2px solid #000;border-radius:50%;background:var(--ps-accent);color:#141414;box-shadow:0 3px 10px rgba(0,0,0,.34)}
.fmt-feed-follow[hidden]{display:none!important}
.fmt-feed-follow .ico{width:12px;height:12px;stroke-width:3.2;filter:none}
.fmt-feed-follow.on{background:#fff;color:#141414}
.fmt-feed-control{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(5,5,6,.66);box-shadow:0 7px 24px rgba(0,0,0,.32);backdrop-filter:blur(12px);color:#fff;transition:background .18s,border-color .18s,color .18s,opacity .18s,transform .18s}
.fmt-feed-control[hidden]{display:none!important}
.fmt-feed-control:hover{background:rgba(255,255,255,.18);transform:scale(1.04)}
.fmt-feed-control:disabled{opacity:.3;cursor:default;transform:none}
.fmt-feed-control .ico{width:22px;height:22px}
.fmt-feed-prev .ico{transform:rotate(180deg)}
.fmt-feed-hold{position:relative}
.fmt-feed-hold.is-held{border-color:var(--ps-accent);background:var(--ps-accent);color:var(--ps-accent-ink)}
.fmt-feed-refresh.is-loading .ico{animation:fmt-feed-spin .8s linear infinite}
@keyframes fmt-feed-spin{to{transform:rotate(360deg)}}
.fmt-feed-toast{position:fixed;z-index:59;right:clamp(78px,6vw,104px);top:50%;max-width:min(62vw,260px);transform:translateY(-50%);padding:9px 12px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(5,5,6,.82);box-shadow:0 8px 30px rgba(0,0,0,.35);backdrop-filter:blur(12px);color:#fff;font-size:13px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .18s}
.fmt-feed-toast.is-visible{opacity:1}
.fmt-swipe-track{touch-action:pan-x pan-y}
.fmt-swipe-dots{bottom:30px;max-width:min(72vw,430px);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.fmt-swipe-dots::-webkit-scrollbar{display:none}
.fmt-feed-novel{display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--ps-head) + 72px) 24px 210px;background:radial-gradient(circle at 50% 12%,#4a334d,#130f15 62%,#050506)}
.fmt-feed-novel>div{width:min(100%,760px);max-height:58vh;overflow:hidden;padding:32px 30px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(10,9,11,.72);backdrop-filter:blur(12px);font-size:clamp(18px,1.55vw,23px);line-height:1.82;text-shadow:0 2px 14px #000}
.fmt-feed-novel .btn{margin-top:18px}
.ps-format-stream .fmt-archive-head{position:fixed;z-index:42;left:50%;top:calc(var(--ps-head) + 12px);transform:translateX(-50%);max-width:calc(100vw - 40px)}
.ps-format-stream .fmt-archive-head .fmt-filter{margin:0;padding:6px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(8,8,10,.7);backdrop-filter:blur(12px)}
.ps-format-stream .fmt-archive-head .chip{background:transparent}
.ps-format-stream .fmt-archive-head .chip.on{background:var(--ps-accent);color:var(--ps-accent-ink)}

@media (max-width:960px){
  body.post-type-archive-ps_content{overflow:hidden;background:#000;overscroll-behavior:none;padding-bottom:0}
  .post-type-archive-ps_content .ft{display:none}
  .post-type-archive-ps_content main{height:100svh;height:100dvh;overflow:hidden}
  .post-type-archive-ps_content .fmt-mobile-feed{display:block;height:100%}
  .post-type-archive-ps_content .fmt-desktop-grid{display:none}
  .post-type-archive-ps_content .fmt-feed{height:100svh;height:100dvh}
  .post-type-archive-ps_content .fmt-feed-item{height:100svh;height:100dvh;min-height:100svh;min-height:100dvh}
  .post-type-archive-ps_content .hd{display:none}
  .ps-format-stream .hd{display:none}
  .fmt-archive-head{display:none}
  .fmt-feed-player,.fmt-feed-image,.fmt-swipe,.fmt-feed-novel{top:0}
  .fmt-sound{top:calc(12px + env(safe-area-inset-top));left:12px}
  .fmt-feed-item.type-short_video .fmt-feed-player{width:100%}
  .fmt-feed-item.type-short_video .fmt-feed-meta{width:auto;padding:0;left:18px;right:78px;transform:none}
  .fmt-feed-item.type-short_video .fmt-feed-player video{object-fit:cover}
  .fmt-feed-shade{inset:32% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.94))}
  .fmt-feed-meta{left:18px;right:78px;bottom:calc(118px + env(safe-area-inset-bottom))}
  .fmt-feed-meta h2{font-size:22px}
  .fmt-feed-controller{right:12px;gap:9px}
  .fmt-feed-control,.fmt-feed-avatar-wrap{width:44px;height:44px}
  .fmt-feed-toast{right:66px;font-size:12px}
  .fmt-swipe-dots{bottom:calc(72px + env(safe-area-inset-bottom))}
  .fmt-feed-novel{padding:calc(92px + env(safe-area-inset-top)) 22px 230px}
  .fmt-feed-novel>div{width:100%;max-height:52vh;padding:0;border:0;border-radius:0;background:none;backdrop-filter:none;font-size:clamp(18px,5vw,22px);line-height:1.72}
  .ps-format-stream .tabbar,.post-type-archive-ps_content .tabbar{background:linear-gradient(0deg,rgba(0,0,0,.97),rgba(0,0,0,.64) 64%,transparent);border:0;backdrop-filter:none}
}
