/* A dedicated Shorts page: the native YouTube image is never covered by UI. */
body.is-shorts-view{overflow:hidden;background:#070b13}
body[data-page=watch].is-shorts-view main{padding:0;margin-left:var(--sidebar);margin-right:0;max-width:none;transform:none}
.is-shorts-view .dw-topbar,.is-shorts-view .dw-library-footer,.is-shorts-view main>.footer{display:none}
.sf-page{height:100vh;height:100dvh;min-height:460px;display:flex;flex-direction:column;position:relative;isolation:isolate;background:radial-gradient(ellipse at 55% 35%,#1c2f4a85,transparent 65%),#080e19}
.sf-topbar{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;flex-shrink:0;min-height:70px;padding:12px clamp(18px,3vw,48px);border-bottom:1px solid #aec8f112}
.sf-back{display:flex;align-items:center;gap:.65rem;min-height:44px;background:none;padding:0;color:#b1c1d8;font-size:.8125rem}
.sf-back>.icon{transform:rotate(180deg);width:18px;height:18px}
.sf-back:hover{color:#fff}
.sf-wordmark{font-size:.6875rem;letter-spacing:.15em;display:flex;align-items:center;gap:.65rem;color:#9caecc}
.sf-wordmark strong{font:600 1.55rem/1 var(--display);color:#eef3fc;letter-spacing:.05em}
.sf-position{font-size:.6875rem;font-variant-numeric:tabular-nums;color:#9daec5;letter-spacing:.1em;min-width:70px;text-align:right}
.sf-feed{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#4b6179 transparent;outline-offset:-3px;-webkit-overflow-scrolling:touch}
.sf-item{height:100%;min-height:100%;scroll-snap-align:start;scroll-snap-stop:always;padding:20px clamp(18px,3vw,48px) 24px;touch-action:pan-y}
.sf-layout{height:100%;max-width:1080px;margin:auto;display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.8fr) 52px;grid-template-rows:minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:center}
.sf-stage{width:min(100%,calc((100dvh - 114px) * .5625));aspect-ratio:9/16;max-height:100%;justify-self:end;position:relative;overflow:hidden;border-radius:18px;background:#000;box-shadow:0 15px 65px #0005}
.sf-poster,.sf-player{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:#000}
.sf-poster>img{width:100%;height:100%;object-fit:cover;opacity:.6}
.sf-poster>.icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border:1px solid #ffffff70;border-radius:50%;background:#07101fa6;padding:16px;color:white}
.sf-player>iframe{display:block;width:100%;height:100%;border:0}
.sf-caption{min-width:0;align-self:center}
.sf-kicker{display:block;font-size:.6875rem;font-weight:700;letter-spacing:.16em;color:#ec586d;margin-bottom:1rem}
.sf-caption h2{font:600 clamp(1.8rem,3vw,3.3rem)/1.08 var(--display);letter-spacing:.005em;color:#ecf3ff;overflow-wrap:anywhere;max-height:5.5em;overflow:auto}
.sf-channel{display:flex;align-items:center;gap:.8rem;margin-top:1.4rem;width:fit-content;max-width:100%}
.sf-avatar{flex-shrink:0;width:42px;height:42px;border-radius:50%;border:1px solid #bdcdeb29;background:linear-gradient(130deg,#3a2135,#17263b);display:grid;place-items:center;overflow:hidden}
.sf-avatar>img{width:27px;height:auto}
.sf-channel>span:last-child{display:flex;flex-direction:column;min-width:0}
.sf-channel strong{font-size:.875rem;color:#e4ecf9;font-weight:700}
.sf-channel>span>span{font-size:.75rem;color:#a3b1c7}
.sf-channel:hover strong{color:white;text-decoration:underline;text-underline-offset:4px}
.sf-meta{font-size:.75rem;color:#94a8c2;margin-top:.9rem;line-height:1.7}
.sf-source{display:flex;align-items:center;gap:.55rem;width:fit-content;font-size:.75rem;color:#bacbe2;min-height:44px;margin-top:.6rem}
.sf-source>.icon{width:17px;height:17px;color:#ff526a}
.sf-source:hover{color:#fff}
.sf-message{font-size:.75rem;color:#d2def1;line-height:1.6;margin-top:.5rem}
.sf-rail{align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.7rem;touch-action:pan-y;user-select:none;min-width:0}
.sf-action{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:.5rem;background:none;min-width:48px;min-height:48px;padding:0;color:#d7e4f5}
.sf-action>.icon{width:25px;height:25px;stroke-width:1.6}
.sf-action>span{font-size:.625rem;line-height:1.3;max-width:54px;text-align:center;color:#a5b6cc}
.sf-action[aria-pressed=true]{color:#ff5870}
.sf-action:hover,.sf-step:hover{color:white}
.sf-action:disabled{opacity:.4;cursor:default}
.sf-navigation{display:flex;flex-direction:column;gap:.75rem}
.sf-step{display:grid;place-items:center;border:1px solid #bed2ed26;border-radius:50%;background:#acccff0b;width:44px;height:44px;color:#c2d2e9}
.sf-previous>.icon{transform:rotate(-90deg)}
.sf-next>.icon{transform:rotate(90deg)}
.sf-step:disabled{opacity:.22;cursor:default}
.sf-swipe-cue{writing-mode:vertical-rl;letter-spacing:.2em;font-size:.5625rem;color:#869ab7;display:flex;align-items:center;gap:.8rem}
.sf-swipe-cue:after{content:'';height:32px;width:1px;background:linear-gradient(#9caeca,transparent)}
.sf-status{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);padding:.5rem 1rem;background:#182c47;color:#f1f6ff;border-radius:10px;font-size:.8125rem}
@media(max-width:1000px){
  .is-shorts-view .sidebar{display:none}
  .sf-topbar{padding-top:max(10px,env(safe-area-inset-top));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));min-height:60px}
  .sf-layout{gap:24px}
  .sf-item{padding:16px 20px max(16px,env(safe-area-inset-bottom))}
}
@media(max-width:720px){
  .sf-topbar{min-height:52px;padding-block:4px;gap:.6rem}
  .sf-back{gap:.25rem;font-size:.75rem}
  .sf-back>span{font-size:0}
  .sf-back>span:after{content:'Darukai TV';font-size:.75rem}
  .sf-wordmark{font-size:0;gap:0}
  .sf-wordmark strong{font-size:1.2rem}
  .sf-position{font-size:.625rem;min-width:50px;letter-spacing:.04em}
  .sf-item{padding:8px max(10px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
  .sf-layout{grid-template-columns:minmax(0,1fr) 48px;grid-template-rows:minmax(200px,1fr) auto;gap:10px}
  .sf-stage{grid-column:1;grid-row:1;justify-self:center;width:min(100%,calc((100dvh - 222px) * .5625));min-width:200px;border-radius:12px}
  .sf-rail{grid-column:2;grid-row:1;gap:1.3rem;padding-block:8px}
  .sf-swipe-cue{letter-spacing:.16em}
  .sf-swipe-cue:after{height:20px}
  .sf-caption{grid-column:1/-1;grid-row:2;padding:0 4px;display:grid;grid-template-columns:1fr auto;column-gap:.75rem;align-items:center}
  .sf-kicker{display:none}
  .sf-caption h2{grid-column:1/-1;font:700 1rem/1.4 var(--body);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:2.8em;letter-spacing:0}
  .sf-channel{grid-column:1;margin-top:.5rem;gap:.55rem}
  .sf-avatar{width:32px;height:32px}
  .sf-avatar>img{width:22px}
  .sf-channel strong{font-size:.75rem}
  .sf-channel>span>span{font-size:.625rem}
  .sf-meta{grid-column:1/-1;font-size:.625rem;margin-top:.4rem;line-height:1.4}
  .sf-source{grid-column:2;grid-row:2;min-height:36px;margin-top:.5rem;gap:.35rem;font-size:.625rem}
  .sf-source>span{font-size:0}
  .sf-source>span:after{content:'YouTube';font-size:.6875rem}
  .sf-message{grid-column:1/-1;font-size:.6875rem;margin-top:.4rem}
  .sf-feed{scrollbar-width:none}
  .sf-feed::-webkit-scrollbar{display:none}
  .is-shorts-view .dw-status{left:50%;bottom:max(.75rem,env(safe-area-inset-bottom))}
}
@media(max-height:600px) and (min-width:600px){
  .sf-page{min-height:300px}
  .sf-topbar{min-height:48px;padding-block:2px}
  .sf-item{padding-block:10px}
  .sf-layout{grid-template-columns:minmax(200px,1fr) minmax(160px,1fr) 48px;grid-template-rows:minmax(200px,1fr);gap:22px}
  .sf-stage{grid-column:1;grid-row:1;justify-self:end;aspect-ratio:auto;height:100%;width:max(200px,calc((100dvh - 70px) * .5625));max-width:100%;min-width:200px}
  .sf-caption{display:block;grid-column:2;grid-row:1;max-height:100%;overflow:auto;padding:4px}
  .sf-caption h2{font:600 1.8rem/1.15 var(--display)}
  .sf-channel{margin-top:.75rem}
  .sf-meta{font-size:.6875rem}
  .sf-rail{grid-column:3;grid-row:1;gap:.85rem}
  .sf-navigation{gap:.5rem}
  .sf-swipe-cue{display:none}
}
@media(prefers-reduced-motion:reduce){.sf-feed{scroll-behavior:auto}}
