/* 蓝果「播放组(C)」—— 短剧详情/播放、GV 单视频（模板 layouts/cyber-video.tpl 的 ll/watch + hg-play.tpl 的侧栏/反馈）。
   规格：docs/frontend-spec/layout-pc.md §6、layout-h5.md §6、components.md §11/§12。类名前缀 lw-（ll-watch）。
   PC ≥1024：舞台 + 374 侧栏，无页脚；H5 ≤1023：沉浸式全屏，无顶栏/页脚，侧栏变底部弹层。 */

.ll-watch-body{background:#090d14}
.ll-watch-body .ll-footer{display:none}
.lw button{font-family:inherit;cursor:pointer}
.lw svg{display:block}
.lw-avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:linear-gradient(130deg,#2375bd,#43baff);color:#fff;font-size:max(14px,var(--ll-fmin,0px));font-weight:800;line-height:1}
.lw-av-2{background:linear-gradient(130deg,#bf824d,#e0a56d)}.lw-av-3{background:linear-gradient(130deg,#7b5cb8,#9873bd)}.lw-av-4{background:linear-gradient(130deg,#2f9a7a,#4cc6a0)}.lw-av-5{background:linear-gradient(130deg,#b85c7b,#d97a9a)}.lw-av-6{background:linear-gradient(130deg,#5c6fb8,#7f90d9)}

/* ============ 布局（PC） ============ */
.lw{display:grid;grid-template-columns:minmax(0,1fr) 374px;grid-template-rows:auto 1fr}
.lw-crumb{grid-column:1/-1;height:49px;display:flex;align-items:center;padding:0 max(var(--gutter),calc((100% - var(--maxw))/2));background:#090d14;border-bottom:1px solid rgba(255,255,255,.1);font-size:max(13px,var(--ll-fmin,0px));color:#92a0b3;min-width:0}
.lw-crumb ol{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none;min-width:0;white-space:nowrap}
.lw-crumb li{display:flex;align-items:center;min-width:0}
.lw-crumb li+li::before{content:"›";margin:0 10px;color:#6f7d90}
.lw-crumb a:hover{color:var(--blue)}
.lw-crumb [aria-current]{color:#fff;font-weight:600;overflow:hidden;text-overflow:ellipsis}
.lw-stage{position:relative;height:calc(calc(100*var(--ll-vh,1vh)) - var(--header-h) - 49px);min-height:520px;background:#000;overflow:hidden;color:#fff;user-select:none}

/* 画框：短剧 9:16 竖屏居中；GV 16:9 全宽垂直居中 */
.lw-frame{position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);height:100%;aspect-ratio:9/16;max-width:62%;background:#07101b;overflow:hidden}
.is-gv .lw-frame{top:50%;bottom:auto;left:0;right:0;transform:translateY(-50%);width:100%;max-width:none;height:auto;max-height:100%;aspect-ratio:16/9}
.lw-frame__bg{position:absolute;inset:0;overflow:hidden}
.lw-frame__bg img{width:100%;height:100%;object-fit:cover;filter:blur(24px) brightness(.48);transform:scale(1.08)}
.lw-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(0,0,0,.35),transparent 18%,transparent 82%,rgba(0,0,0,.45))}
.lw-frame__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.is-gv .lw-frame__poster{object-fit:cover}
.lw-frame__player{position:absolute;inset:0;z-index:2;background:transparent}
.lw-frame__mark{position:absolute;top:18px;left:18px;z-index:4;width:92px;height:34px;opacity:.88;pointer-events:none}
.lw-stage.is-started .lw-frame__poster,.lw-stage.is-started .lw-frame__bg{opacity:0}
/* xgplayer 只当解码内核：自带 UI 全部隐藏，控制条为本页自绘 */
.lw-frame__player .xgplayer,.lw-frame__player.xgplayer{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:transparent!important}
.lw-frame__player video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
.lw-frame__player > :not(video):not(xg-video-container):not(.xg-video-container){display:none!important}
.lw-frame__player .xgplayer-controls,.lw-frame__player xg-controls,.lw-frame__player .xgplayer-start,.lw-frame__player xg-start,.lw-frame__player .xgplayer-loading,.lw-frame__player .xgplayer-poster,.lw-frame__player .xgplayer-error,.lw-frame__player .xg-mini-progress,.lw-frame__player xg-mini-progress,.lw-frame__player .xgplayer-enter,.lw-frame__player xg-enter,.lw-frame__player .xg-top-bar,.lw-frame__player xg-trigger,.lw-frame__player .xgplayer-replay,.lw-frame__player xg-replay{display:none!important}

.lw-stage__top{position:absolute;top:20px;left:18px;z-index:5;display:flex;gap:10px;align-items:baseline;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.lw-stage__top strong{font-size:max(20px,var(--ll-fmin,0px));font-weight:700}
.lw-stage__top strong b{font-weight:inherit}
.lw-stage__top span{font-size:max(13px,var(--ll-fmin,0px));color:#b6bbc4}

/* 中心播放键 */
.lw-center{position:absolute;left:50%;top:50%;z-index:6;width:76px;height:76px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:rgba(0,0,0,.62);border:1px solid rgba(255,255,255,.34);box-shadow:0 10px 30px rgba(0,0,0,.35);color:#fff;padding:0;transition:transform .2s,background .2s}
.lw-center svg{width:32px;height:32px;fill:currentColor;margin-left:4px}
.lw-center:hover,.lw-center:focus-visible{background:rgba(0,0,0,.72);transform:translate(-50%,-50%) scale(1.08)}
.lw-stage.is-playing .lw-center,.lw-stage.is-loading .lw-center,.lw-stage.is-error .lw-center{display:none}

/* 加载中 / 播放失败 */
.lw-status{position:absolute;inset:0;z-index:7;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;background:rgba(0,0,0,.533);text-align:center}
.lw-status p{margin:0;font-size:max(13px,var(--ll-fmin,0px));color:#bac7d5}
.lw-spin{width:33px;height:33px;border-radius:50%;border:3px solid rgba(255,255,255,.196);border-top-color:#5c8dff;animation:lwSpin .8s linear infinite}
@keyframes lwSpin{to{transform:rotate(360deg)}}
.lw-status--error{gap:10px}
.lw-status--error strong{font-size:max(19px,var(--ll-fmin,0px));font-weight:600;color:#fff}
.lw-status--error button{margin-top:8px;padding:9px 17px;background:#17639a;border:1px solid #4386a9;border-radius:8px;color:#fff;font-size:max(12px,var(--ll-fmin,0px));font-weight:600}
.lw-status--error button:hover{background:#4d7ef0}

/* 动作栏（喜欢/收藏/评论/分享） */
.lw-actions{position:absolute;right:21px;top:50%;z-index:6;display:flex;flex-direction:column;gap:18px;transform:translateY(-28%)}
.lw-act{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;min-height:55px;padding:0;border:0;background:transparent;color:#fff;font-size:max(11px,var(--ll-fmin,0px));font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.lw-act em{font-style:normal;line-height:1.3;white-space:nowrap}
.lw-act__ic{display:grid;place-items:center}
.lw-act__ic svg{width:26px;height:26px;fill:currentColor}
.lw-act .lw-ic-on{display:none}
.lw-act .lw-ic-off svg{fill:none}
.lw-act[aria-pressed=true]{color:#5c8dff}
.lw-act[aria-pressed=true] .lw-ic-on{display:block}.lw-act[aria-pressed=true] .lw-ic-off{display:none}
.lw-act:hover{color:#5c8dff}

/* 底部控制条 */
.lw-bottom{position:absolute;left:0;right:0;bottom:0;z-index:5;padding:18px 16px 8px;background:linear-gradient(transparent,rgba(0,0,0,.86) 43%,#000)}
.is-detail .lw-bottom{background:none;padding:0}
.lw-time{display:flex;justify-content:space-between;font-size:max(12px,var(--ll-fmin,0px));font-weight:700;color:#e7ebf1;font-variant-numeric:tabular-nums}
.lw-progress{position:relative;height:22px;display:flex;align-items:center}
.lw-progress input{--p:0%;width:100%;height:22px;margin:0;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer}
.lw-progress input::-webkit-slider-runnable-track{height:5px;border-radius:6px;background:linear-gradient(to right,#5c8dff 0 var(--p),#5a5b60 var(--p) 100%)}
.lw-progress input::-moz-range-track{height:5px;border-radius:6px;background:linear-gradient(to right,#5c8dff 0 var(--p),#5a5b60 var(--p) 100%)}
.lw-progress input::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;margin-top:-4px;border-radius:50%;background:#fff;box-shadow:0 0 8px #65aeff}
.lw-progress input::-moz-range-thumb{width:13px;height:13px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 8px #65aeff}
.lw-tools{display:flex;align-items:center;gap:20px;min-height:40px}
.lw-tools__gap{flex:1}
.lw-tool{display:grid;place-items:center;min-width:28px;height:36px;padding:0;border:0;background:transparent;color:#fff}
.lw-tool svg{width:24px;height:24px}
.lw-tool:hover:not(:disabled){color:#5c8dff}
.lw-tool .lw-i-play svg,.lw-tool .lw-i-pause svg{fill:currentColor}
.lw-tool .lw-i-pause,.is-playing .lw-tool .lw-i-play{display:none}
.is-playing .lw-tool .lw-i-pause{display:block}
.lw-tool--speed span{font-size:max(15px,var(--ll-fmin,0px));font-weight:700}
.lw-vol-x{display:none}
.is-muted .lw-vol-wave{display:none}.is-muted .lw-vol-x{display:block}

/* 移动端专用件默认隐藏（PC） */
.lw-mtop,.lw-mark,.lw-film,.lw-open-eps,.lw-pause-ad,.lw-lite{display:none}

/* ============ 侧栏（PC） ============ */
.lw-side{position:relative;min-width:0;background:#191b27;height:calc(calc(100*var(--ll-vh,1vh)) - var(--header-h) - 49px);min-height:520px}
.lw-side__panel{display:flex;flex-direction:column;height:100%}
.lw-tabs{flex:none;position:sticky;top:0;z-index:4;height:67px;display:flex;gap:24px;align-items:center;padding:0 23px;background:#191b27;border-bottom:1px solid #2b2f3a}
.lw-tabs button{position:relative;height:100%;padding:0;border:0;border-bottom:2px solid transparent;background:transparent;color:#868b9a;font-size:max(18px,var(--ll-fmin,0px));font-weight:800;white-space:nowrap}
.lw-tabs button[aria-selected=true]{color:#f6f7fb;border-bottom-color:#5c8dff}
.lw-tabs button:hover{color:#f6f7fb}
.lw-tabs sup{font-size:max(12px,var(--ll-fmin,0px));margin-left:3px;vertical-align:super;line-height:0}
.lw-tab-intro,.lw-tab-eps{display:none}
.lw-side__scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:21px;scrollbar-width:thin;scrollbar-color:#323848 transparent}
.lw-pane{display:none}
.lw-side[data-tab=video] [data-pane~=video],.lw-side[data-tab=intro] [data-pane~=intro],.lw-side[data-tab=eps] [data-pane~=eps],.lw-side[data-tab=addr] [data-pane~=addr],.lw-side[data-tab=comments] [data-pane~=comments]{display:block}
.lw-pane h2{margin:0;font-size:max(16px,var(--ll-fmin,0px));font-weight:700;color:#f2f4f8}

.lw-side[data-tab=video] .lw-ov,.lw-side[data-tab=intro] .lw-ov{display:grid}
.lw-ov{grid-template-columns:80px 1fr;gap:12px;align-items:start}
.lw-ov__poster{display:block;width:80px;aspect-ratio:3/4;border-radius:6px;overflow:hidden;background:var(--raised)}
.lw-ov__poster img{width:100%;height:100%;object-fit:cover;display:block}
.lw-ov h1{margin:4px 0 0;font-size:max(18px,var(--ll-fmin,0px));font-weight:700;line-height:1.35;color:#fff;word-break:break-word}
.lw-ov__genre{margin:8px 0 0;font-size:max(11px,var(--ll-fmin,0px));color:#a4acba}
.lw-ov__genre :is(span,a)+:is(span,a)::before{content:" · "}
.lw-ov__genre a{position:relative;color:inherit;text-decoration:none}
.lw-ov__genre a::after{content:"";position:absolute;inset:-8px -3px}
.lw-ov__genre a:hover{opacity:.75}
.lw-ov__genre a:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:3px}
.lw-ov__score{margin:8px 0 0;color:#ffbd69;font-size:max(13px,var(--ll-fmin,0px));font-weight:600}
.is-gv .lw-ov{grid-template-columns:1fr}
.is-gv .lw-ov__poster{width:100%;aspect-ratio:16/9;border-radius:8px}
.lw-desc{margin-top:26px}
.lw-desc h2{font-size:max(15px,var(--ll-fmin,0px));margin-bottom:9px}
.lw-desc p{margin:0;font-size:max(12px,var(--ll-fmin,0px));line-height:1.65;color:#b8bfcb;white-space:pre-line;word-break:break-word}
.lw-desc.is-clamp p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lw-desc__more{margin-top:6px;padding:0;border:0;background:none;color:#5c8dff;font-size:max(12px,var(--ll-fmin,0px));font-weight:700}
.lw-adsq{margin-top:20px}
.lw-adsq:empty{display:none!important}
.lw-eps{margin-top:24px}
.lw-eps__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}
.lw-eps__head small{font-size:max(10px,var(--ll-fmin,0px));color:#858f9e}
.lw-eps__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.lw-eps__grid a{position:relative;display:grid;place-items:center;height:42px;border:1px solid #303543;border-radius:7px;background:#252936;color:#bbc3d1;font-size:max(12px,var(--ll-fmin,0px));font-weight:700;transition:border-color .15s,background .15s}
.lw-eps__grid a:hover,.lw-eps__grid a.is-active{border-color:#5c8dff;background:#263050;color:#fff}
.lw-bars{position:absolute;top:5px;right:6px;display:none;gap:2px;align-items:flex-end;height:11px}
.lw-bars b{width:2px;background:#5c8dff;border-radius:1px;animation:lwBar .9s ease-in-out infinite}
.lw-bars b:nth-child(1){height:6px}.lw-bars b:nth-child(2){height:11px;animation-delay:.2s}.lw-bars b:nth-child(3){height:8px;animation-delay:.4s}
@keyframes lwBar{50%{transform:scaleY(.4)}}
.lw-eps__grid a.is-active .lw-bars{display:flex}
.lw-rec{margin-top:34px;padding-top:19px;border-top:1px solid #2b2f3a}
.lw-rec h2{font-size:max(16px,var(--ll-fmin,0px));font-weight:800;margin-bottom:14px}
.lw-rec__grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 12px}
.lw-rec__grid .ll-card__art{border-radius:8px}
.lw-rec__grid .ll-card h3{font-size:max(12px,var(--ll-fmin,0px))}
.lw-rec__grid .ll-card:hover .ll-card__art{box-shadow:0 10px 30px rgba(0,0,0,.38),0 0 0 1px rgba(92,141,255,.48)}
.lw-rec__grid .ll-card:hover h3{color:#5c8dff}
.lw-rec__empty{grid-column:1/-1;margin:0;padding:24px 0;text-align:center;font-size:max(12px,var(--ll-fmin,0px));color:#858f9e}
.lw-setting{display:none}
.lw-chip{display:inline-block;margin-top:12px;padding:3px 8px;border:1px solid #2c6179;border-radius:4px;background:#0f2a3a;color:#68c8f6;font-size:max(11px,var(--ll-fmin,0px));font-weight:600}

.lw-addr__list{margin:18px 0 0;padding:0;list-style:none;border:1px solid #303b4d;border-radius:10px;overflow:hidden}
.lw-addr__list li+li{border-top:1px solid #303b4d}
.lw-addr__list button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:0 14px;border:0;background:transparent;color:#a1b2c5;font-size:max(12px,var(--ll-fmin,0px));text-align:left}
.lw-addr__list button:hover{background:#202533}
.lw-addr__list strong{font-size:max(12px,var(--ll-fmin,0px));font-weight:700;color:#fff;word-break:break-all;text-align:right}
.lw-addr__empty{padding:18px 14px;font-size:max(12px,var(--ll-fmin,0px));color:#858f9e}
.lw-addr__all{display:block;margin-top:18px;padding:12px;background:#123c55;border:1px solid #299fdc;border-radius:8px;font-size:max(13px,var(--ll-fmin,0px));font-weight:700;text-align:center;color:#fff}
.lw-addr__all:hover{background:#4d7ef0}

/* 评论 */
.lw-side[data-tab=comments] .lw-side__scroll{padding:0 20px 24px}
.lw-sort{display:flex;gap:18px;padding:18px 0 16px;border-bottom:1px solid #2d313c}
.lw-sort button{padding:0;border:0;background:none;color:#868b9a;font-size:max(12px,var(--ll-fmin,0px));font-weight:700}
.lw-sort button.is-active{color:#fff}
.lw-cmt{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:18px 0;border-bottom:1px solid #2d313c}
.lw-cmt__body{min-width:0}
.lw-cmt__who{display:flex;align-items:center;gap:8px;min-height:18px}
.lw-cmt__who strong{font-size:max(12px,var(--ll-fmin,0px));font-weight:700;color:#c8d0df}
.lw-cmt__who small{font-size:max(11px,var(--ll-fmin,0px));color:#8e9bad}
.lw-cmt__who small b{font-weight:500;color:#8e9bad}
.lw-cmt p{margin:7px 0 9px;font-size:max(12px,var(--ll-fmin,0px));line-height:1.6;color:#f2f3f7;word-break:break-word;white-space:pre-line}
.lw-cmt__at{color:#65b5df}
.lw-cmt__meta{display:flex;gap:14px;align-items:center}
.lw-cmt__meta small{font-size:max(10px,var(--ll-fmin,0px));color:#838b9b}
.lw-cmt__meta button{padding:0;border:0;background:none;color:#88a8c3;font-size:max(11px,var(--ll-fmin,0px))}
.lw-cmt__meta button:hover{color:#8aaeff}
.lw-cmt__like{display:inline-flex!important;align-items:center;gap:4px;margin-left:auto}
.lw-cmt__like svg{width:14px;height:14px}
.lw-cmt__like.is-on{color:#ff6b8a!important}
.lw-pending{display:inline-block;padding:1px 6px;border:1px solid #5c8dff;border-radius:4px;background:#20253b;color:#5c8dff;font-size:max(10px,var(--ll-fmin,0px));font-weight:600;line-height:1.5}
.lw-replies{margin-top:4px}
.lw-cmt--reply{grid-template-columns:28px 1fr;gap:8px;padding:14px 0 0;border:0}
.lw-cmt--reply .lw-avatar{width:28px;height:28px;font-size:max(12px,var(--ll-fmin,0px))}
.lw-replies__toggle{display:none;align-items:center;gap:6px;min-height:32px;padding:0;border:0;background:none;color:#8898ad;font-size:max(11px,var(--ll-fmin,0px))}
.lw-replies__toggle::before{content:"";width:16px;height:1px;background:#4b5566}
.lw-replies__more{display:inline-flex;align-items:center;gap:6px;min-height:32px;margin-top:6px;padding:0;border:0;background:none;color:#88a8c3;font-size:max(11px,var(--ll-fmin,0px))}
.lw-replies__more::before{content:"";width:16px;height:1px;background:#4b5566}
.lw-replies__more:hover{color:#8aaeff}.lw-replies__more:disabled{opacity:.5}
.lw-addr__list span{display:flex;flex-direction:column;gap:2px}
.lw-addr__note{font-size:max(10px,var(--ll-fmin,0px));color:#6f7b8c}
.lw-cmts__empty,.lw-cmts__fail{padding:48px 0;text-align:center;color:#858f9e;font-size:max(12px,var(--ll-fmin,0px))}
.lw-cmts__empty strong{display:block;margin-bottom:6px;font-size:max(14px,var(--ll-fmin,0px));color:#c8d0df}
.lw-cmts__fail button,.lw-cmts__more{margin-top:10px;padding:8px 16px;border:1px solid #303b4d;border-radius:7px;background:#202533;color:#c8d0df;font-size:max(12px,var(--ll-fmin,0px))}
.lw-cmts__more{display:block;width:100%;margin-top:16px}
.lw-cmts__skel{padding:18px 0;border-bottom:1px solid #2d313c;display:grid;grid-template-columns:36px 1fr;gap:10px}
.lw-cmts__skel i{display:block;border-radius:6px}
.lw-cmts__skel .a{width:36px;height:36px;border-radius:50%}
.lw-cmts__skel .l{height:10px;margin-bottom:8px}.lw-cmts__skel .l.w4{width:40%}.lw-cmts__skel .l.w8{width:85%}
.lw-compose{display:none;flex:none;position:relative;padding:15px 82px 15px 18px;background:#191b27;border-top:1px solid #2b303d}
.lw-side[data-tab=comments] .lw-compose{display:block}
.lw-compose__row{display:flex;gap:10px;align-items:center}
.lw-compose__field{position:relative;flex:1;min-width:0;display:block}
.lw-compose textarea{display:block;width:100%;height:38px;min-height:38px;max-height:96px;padding:9px 12px;border:1px solid #343a48;border-radius:7px;background:#272b38;color:#fff;font:max(12px,var(--ll-fmin,0px))/18px var(--font);resize:none;outline:none}
.lw-compose textarea::placeholder{color:#8b94a3}
.lw-compose textarea:focus{border-color:#5c8dff}
.lw-compose.has-error textarea{border-color:#ff6b77}
.lw-compose__row>button{flex:none;height:38px;padding:0 11px;border:0;border-radius:7px;background:#2279be;color:#fff;font-size:max(12px,var(--ll-fmin,0px));font-weight:700}
.lw-compose__row>button:disabled{opacity:.55}
.lw-compose__err{margin:0 0 10px;font-size:max(12px,var(--ll-fmin,0px));color:#ff6b77}
.lw-compose__ctx{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px;margin-bottom:12px;background:#202734;border-left:2px solid #5c8dff;border-radius:4px}
.lw-compose__ctx div{min-width:0}
.lw-compose__ctx b{display:block;font-size:max(12px,var(--ll-fmin,0px));color:#5c8dff}
.lw-compose__ctx p{margin:4px 0 0;font-size:max(11px,var(--ll-fmin,0px));line-height:1.5;color:#aeb8c8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lw-compose__ctx button{flex:none;padding:0;border:0;background:none;color:#95a5b8;font-size:max(11px,var(--ll-fmin,0px));font-weight:700}

/* 分享 */
.lw-share .ll-dialog{width:420px}
.lw-share__input{display:block;width:100%;height:42px;margin-top:18px;padding:10px;background:#090e17;border:1px solid #253143;border-radius:6px;color:#e7eef8;font:max(13px,var(--ll-fmin,0px)) var(--font);outline:none}
.lw-share .ll-dialog__actions{margin-top:24px}
.lw-share [data-lw-share-copy]{background:#5c8dff;color:#fff;font-weight:700}

/* ============ H5（≤1023）沉浸式 ============ */
@media (max-width:1023px){
  html:has(.lw){overflow:hidden;height:100%}
  .ll-watch-body{overflow:hidden;height:100%;background:#000}
  .ll-watch-body .ll-fab{display:none!important}
  .lw{display:block}
  .lw-crumb{display:none}
  .lw-stage{position:fixed;left:0;right:0;bottom:0;top:var(--header-h);height:auto;min-height:0;font-size:13px;line-height:1.5}
  .lw-frame{inset:0;left:0;transform:none;width:100%;max-width:none;aspect-ratio:auto;background:#000}
  .is-gv .lw-frame{top:50%;bottom:auto;transform:translateY(-50%);height:auto;aspect-ratio:16/9}
  .lw-frame::after{display:none}
  .lw-frame__bg img{filter:blur(24px) brightness(.4)}
  .lw-mtop{position:absolute;left:6px;right:6px;top:0;z-index:8;min-height:52px;padding:2px 0;padding-top:env(safe-area-inset-top);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(rgba(0,0,0,.533),transparent)}
  .lw-ctl{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:#fff}
  .lw-ctl svg{width:22px;height:22px}
  .lw-feedback-entry{min-height:44px;padding:0 10px;border:0;background:transparent;color:#fff;font-size:12px;font-weight:600}
  .lw-mark{display:block;position:absolute;right:12px;top:38%;z-index:4;font-size:11px;font-weight:600;letter-spacing:.4px;color:rgba(255,255,255,.314);pointer-events:none}
  .lw-center{width:56px;height:56px;background:transparent;border:0;box-shadow:none}
  .lw-center svg{width:28px;height:28px}
  .lw-center:hover,.lw-center:focus-visible{background:transparent;transform:translate(-50%,-50%)}
  .lw-status{z-index:5;background:rgba(0,0,0,.5);gap:9px}
  .lw-spin{border-width:2px}
  .lw-status p{font-size:12px;color:#a7b3c3}
  .lw-status--error strong{font-size:15px}
  .lw-status--error button{min-height:44px;padding:0 18px;background:#126c99;border-color:#2479a0;border-radius:7px}
  .lw-actions,.is-gv .lw-actions{top:auto;right:6px;bottom:calc(100dvh * .205 + env(safe-area-inset-bottom));transform:none;flex-direction:column;align-items:center;gap:clamp(2px,calc((100dvh - 500px)*.028),10px);padding:0;background:none}
  .lw-act{width:48px;min-height:0;height:clamp(44px,calc(100dvh*.068),60px);gap:4px;font-weight:600;line-height:1.25;text-shadow:0 1px 4px #000}
  .lw-act__ic{width:34px;height:34px;border-radius:50%}
  .lw-act.is-like .lw-act__ic,.lw-act.is-favorite .lw-act__ic{background:rgba(41,183,242,.157)}
  .lw-act__ic svg{width:21px;height:21px}
  .lw-act .lw-ic-off{display:none!important}.lw-act .lw-ic-on{display:block}
  .lw-act[aria-pressed=true]{color:#5c8dff}
  .lw-act:hover{color:#fff}.lw-act[aria-pressed=true]:hover{color:#5c8dff}
  .lw-act--speed{font-size:13px}
  .lw-bottom{padding:16px 12px calc(4px + env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(0,0,0,.8) 34%,rgba(0,0,0,.933))}
  .is-detail .lw-bottom{padding:16px 12px calc(4px + env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(0,0,0,.8) 34%,rgba(0,0,0,.933))}
  .lw-film{display:flex;flex-direction:column;align-items:flex-start;gap:2px;max-width:calc(100% - 54px);min-height:48px;margin-bottom:4px;padding:0;border:0;background:none;color:#fff;text-align:left}
  .lw-film strong{max-width:100%;font-size:17px;font-weight:700;line-height:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .lw-film span{max-width:100%;font-size:11px;line-height:18px;color:#e4e7ed;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .lw-progress{height:44px}
  .lw-progress input{height:44px}
  .lw-progress input::-webkit-slider-runnable-track{height:2px;border-radius:2px;background:linear-gradient(to right,#2ab8f5 0 var(--p),#787878 var(--p) 100%)}
  .lw-progress input::-moz-range-track{height:2px;background:linear-gradient(to right,#2ab8f5 0 var(--p),#787878 var(--p) 100%)}
  .lw-progress input::-webkit-slider-thumb{width:7px;height:7px;margin-top:-2.5px;background:#2ab8f5;box-shadow:none}
  .lw-progress input::-moz-range-thumb{width:7px;height:7px;background:#2ab8f5;box-shadow:none}
  .lw-tools{gap:8px;min-height:44px}
  .lw-tool{min-width:44px;height:44px}
  .lw-tool svg{width:22px;height:22px}
  .lw-tool[data-lw-open] svg{color:#9da4ae}
  .lw-tool--speed span{font-size:13px;font-weight:600}
  .lw-open-eps{display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;padding:0 4px;border:0;background:none;color:#fff;font-size:11px;font-weight:600;white-space:nowrap}
  .lw-open-eps svg{width:18px;height:18px;flex:none}
  .lw-open-eps span{overflow:hidden;text-overflow:ellipsis}
  .lw-clear-only{display:none}
  /* 清屏：隐藏动作/标题/反馈/展开，只留倍速+声音+全屏 */
  .lw-stage.is-clear .lw-actions,.lw-stage.is-clear .lw-film,.lw-stage.is-clear .lw-feedback-entry,.lw-stage.is-clear .lw-mark,.lw-stage.is-clear .lw-hide-clear{display:none}
  .lw-stage.is-clear .lw-clear-only{display:grid}
  /* 暂停广告 */
  .lw-pause-ad{display:block;position:absolute;left:50%;top:50%;z-index:9;width:200px;min-height:200px;transform:translate(-50%,-50%);border-radius:8px;background:#071728;overflow:hidden}
  .lw-pause-ad[hidden]{display:none!important}
  .lw-pause-ad__x{position:absolute;top:0;right:0;z-index:2;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:#b6dfff}
  .lw-pause-ad__x::before{content:"";position:absolute;width:30px;height:30px;border-radius:50%;background:#030c18}
  .lw-pause-ad__x svg{position:relative;width:16px;height:16px}
  /* 轻量选集（清屏时） */
  .lw-lite{display:block;position:absolute;left:0;right:0;bottom:0;z-index:12;padding:0 0 calc(14px + env(safe-area-inset-bottom));border-radius:15px 15px 0 0;background:#151923}
  .lw-lite[hidden]{display:none!important}
  .lw-lite__head{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 4px 0 16px;border-bottom:1px solid rgba(255,255,255,.08)}
  .lw-lite__head strong{font-size:15px}
  .lw-lite__row{display:flex;gap:8px;overflow-x:auto;padding:12px 14px 0;scrollbar-width:none}
  .lw-lite__row a{flex:none;display:grid;place-items:center;min-width:68px;height:48px;padding:0 10px;border:1px solid #2b3748;border-radius:6px;background:#202735;color:#c7d2e2;font-size:12px}
  .lw-lite__row a.is-active{background:#263050;border-color:#5c8dff;color:#5c8dff}

  /* 侧栏 → 底部弹层 */
  .lw-side{position:fixed;inset:0;z-index:30;height:auto;min-height:0;background:transparent;visibility:hidden;pointer-events:none}
  .lw-side.is-open{visibility:visible;pointer-events:auto}
  .lw-side__mask{position:absolute;inset:0;background:rgba(0,0,0,.6);opacity:0;transition:opacity .2s}
  .lw-side.is-open .lw-side__mask{opacity:1}
  .lw-side__brand{position:absolute;left:16px;top:11%;width:min(180px,46vw);z-index:1;pointer-events:none}
  .lw-side__brand img{display:block;width:100%;height:auto}
  .lw-side__panel{position:absolute;left:0;right:0;bottom:0;height:min(calc(100dvh*.78),640px);max-height:calc(100dvh - 52px);border:1px solid rgba(255,255,255,.047);border-bottom:0;border-radius:15px 15px 0 0;background:#11151d;box-shadow:0 -8px 30px rgba(0,0,0,.333);overflow:hidden;transform:translateY(100%);transition:transform .25s ease}
  .lw-side.is-open .lw-side__panel{transform:none}
  .lw-tabs{position:relative;height:auto;min-height:76px;margin:0 16px;padding:10px 0;gap:17px;background:transparent;border-bottom:1px solid rgba(255,255,255,.08)}
  .lw-tabs button{height:44px;border:0;font-size:15px;font-weight:600;color:#9298a3}
  .lw-tabs button[aria-selected=true]{font-size:18px;font-weight:700;color:#f3f6fb}
  .lw-tabs button[aria-selected=true]::after{content:"";position:absolute;left:50%;bottom:-5px;width:19px;height:3px;border-radius:2px;background:#5c8dff;transform:translateX(-50%)}
  .lw-tabs button[data-lw-tab=video]{display:none}
  .lw-tab-intro,.lw-tab-eps{display:block}
  .lw-tab-cmt{display:none}
  .lw-tabs sup{display:none}
  .lw-side[data-tab=comments] .lw-tabs button[data-lw-tab]{display:none}
  .lw-side[data-tab=comments] .lw-tabs button.lw-tab-cmt{display:block}
  .lw-side__x{margin-left:auto;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:#fff}
  .lw-side__x i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.145)}
  .lw-side__x svg{width:16px;height:16px;padding:2px;border:1.5px solid #fff;border-radius:50%;box-sizing:content-box}
  .lw-side__scroll{padding:20px 16px 24px}
  .lw-side[data-tab=comments] .lw-side__scroll{padding:0 14px 16px}
  /* 简介 tab */
  .lw-side[data-tab=intro] .lw-ov{grid-template-columns:1fr}
  .lw-ov__poster,.lw-side__brand{display:none!important}
  .lw-ov__score{margin-top:6px;font-size:12px}
  .lw-ov h1{margin:0;font-size:18px}
  .lw-ov__genre{margin-top:8px;font-size:12px;font-weight:600;color:#5c8dff}
  .lw-ov__genre :is(span,a)+:is(span,a)::before{content:""}
  .lw-ov__genre :is(span,a){margin-right:6px}.lw-ov__genre :is(span,a)::before{content:"#"}
  .lw-desc{margin-top:16px}
  .lw-desc h2{display:none}
  .lw-desc p{font-size:13px;font-weight:500;line-height:1.9;color:#d9dce4}
  .lw-desc.is-clamp p{display:block;-webkit-line-clamp:unset}
  .lw-desc__more{display:none!important}
  .lw-adsq{margin-top:16px}
  .lw-rec{margin-top:24px;padding-top:0;border-top:0}
  .lw-rec__grid{gap:13px 11px}
  .lw-rec__grid .ll-card{padding-bottom:8px;background:#191f2a;border:1px solid rgba(255,255,255,.07);border-radius:9px;overflow:hidden}
  .lw-rec__grid .ll-card__art{border-radius:0}
  .lw-rec__grid .ll-card h3,.lw-rec__grid .ll-card__tags{padding:0 8px}
  .lw-rec__grid .ll-card__tags span,.lw-rec__grid .ll-card__tags a{background:#13314a;color:#68c8f6}
  /* Figma 175:59838：底部横线 x25→725，40×40 控件，间隔30（750 稿 ÷ 2）。 */
  .lw-side[data-tab=intro] .lw-setting{display:flex;align-items:center;flex:none;gap:15px;margin:0 11.5px;padding:10px 0 max(10px,env(safe-area-inset-bottom));border-top:.5px solid rgba(255,255,255,.1);background:#191925}
  .lw-setting__title{flex:1;padding-left:2.5px;font-size:12px;font-weight:500;line-height:17px;color:#fff}
  .lw-setting button{position:relative;display:grid;place-items:center;flex:none;width:20px;height:20px;padding:0;border:0;border-radius:4px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer}
  .lw-setting button[data-lw-speed]{width:auto;min-width:20px}
  .lw-setting button::before{content:"";position:absolute;inset:-10px -7px}
  .lw-setting button[data-lw-mute][aria-pressed=true]{background:rgba(92,141,255,.1);box-shadow:inset 0 0 0 .5px #5c8dff;color:#5c8dff}
  .lw-setting button svg{width:10px;height:10px}
  .lw-setting button [data-lw-speed-label]{font-size:14px;line-height:14px;font-weight:600;letter-spacing:.125px;text-shadow:0 0 1.125px rgba(0,0,0,.25)}
  /* 选集 tab */
  .lw-eps{margin-top:0}
  .lw-eps__head h2{font-size:13px;font-weight:600}
  .lw-eps__head small{font-size:11px;color:#8fa1b9}
  .lw-eps__grid{gap:8px}
  .lw-eps__grid a{height:44px;border-color:#2b3748;border-radius:6px;background:#202735;color:#c7d2e2;font-size:13px;font-weight:500}
  .lw-eps__grid a.is-active,.lw-eps__grid a:hover{background:#263050;border-color:#5c8dff;color:#5c8dff}
  .lw-eps__nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
  .lw-eps__nav button{height:44px;border:1px solid #2a3748;border-radius:6px;background:#101722;color:#c3d2e5;font-size:12px}
  .lw-eps__nav button:disabled{opacity:.4}
  /* 最新地址 */
  .lw-addr h2{font-size:15px}
  .lw-addr__list{border-color:#2b3746;border-radius:7px;margin-top:14px}
  .lw-addr__list li+li{border-color:#2b3746}
  .lw-addr__list button{min-height:48px}
  .lw-addr__list strong{color:#d6e8fa;font-weight:500}
  .lw-addr__all{min-height:44px;display:grid;place-items:center;padding:0;background:#263050;border-color:#5c8dff;color:#5c8dff;border-radius:7px}
  /* 评论 sheet */
  .lw-cmt{grid-template-columns:30px 1fr;gap:9px;padding:13px 0 7px;border-bottom-color:rgba(255,255,255,.035)}
  .lw-cmt .lw-avatar{width:30px;height:30px;font-size:13px;font-weight:700}
  .lw-cmt__who strong{font-size:13px;color:#f1f3f7}
  .lw-cmt p{margin:1px 0 0;font-size:12px;line-height:21px;color:#c5cbd4}
  .lw-cmt__meta{gap:2px;min-height:33px;font-size:10px;color:#718094}
  .lw-cmt__meta small{color:#697c95;margin-right:12px}
  .lw-cmt__meta button{min-height:33px;padding:0 8px;color:#8b9aaf;font-size:10px}
  .lw-cmt__like{color:#8392a7!important}
  .lw-cmt--reply{grid-template-columns:24px 1fr;gap:7px;padding:7px 0;margin:5px 0}
  .lw-cmt--reply .lw-avatar{width:24px;height:24px;font-size:10px}
  .lw-replies__toggle{display:inline-flex;min-height:44px;font-size:10px}
  .lw-replies.is-folded .lw-cmt--reply{display:none}
  .lw-compose{padding:10px 13px calc(10px + env(safe-area-inset-bottom));background:#151a23;border-top:1px solid rgba(255,255,255,.06)}
  .lw-compose__row{gap:10px}
  .lw-compose textarea{height:48px;min-height:48px;padding:8px 10px 14px;border:0;background:#242a34;color:#e4f3ff;font-size:16px;line-height:20px}
  .lw-compose__field small{position:absolute;right:9px;bottom:3px;font-size:9px;color:#748da9}
  .lw-compose__field small b{font-weight:400}
  .lw-compose__row>button{min-height:44px;height:48px;padding:0 10px;background:#5c8dff;color:#fff;font-weight:600}
  .lw-compose__ctx{margin:-10px -13px 10px;padding:0 14px;height:44px;align-items:center;background:#112637;border:0;border-radius:0}
  .lw-compose__ctx b{color:#7acbf5;font-weight:500}
  .lw-compose__ctx p{display:none}
  .lw-compose__ctx button{color:#7acbf5;min-height:44px}
  /* 反馈 sheet */
  .lw-fb{position:fixed;inset:0;z-index:31;display:block}
  .lw-fb[hidden]{display:none!important}
  .lw-fb .lw-side__mask{opacity:1}
  .lw-fb__panel{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;height:min(calc(100dvh - 52px),640px);margin:0;border-radius:15px 15px 0 0;background:#151923;overflow:hidden}
  .lw-fb__head{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 4px 0 16px;border-bottom:1px solid rgba(255,255,255,.08)}
  .lw-fb__head h2{margin:0;font-size:15px;font-weight:700}
  .lw-fb__scroll{flex:1;min-height:0;overflow-y:auto;padding:14px 16px}
  .lw-fb__work{margin:0 0 14px;font-size:12px;color:#9fb0c7}
  .lw-fb fieldset{margin:0;padding:0;border:0}
  .lw-fb legend,.lw-fb__note>span{padding:0;font-size:13px;font-weight:700;color:#fff}
  .lw-fb legend small,.lw-fb__note small{margin-left:6px;font-size:10px;font-weight:500;color:#7d8898}
  .lw-radio{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;color:#dfe5ee;cursor:pointer}
  .lw-radio input{position:absolute;opacity:0;width:1px;height:1px}
  .lw-radio i{width:18px;height:18px;border:1.5px solid #6b7686;border-radius:50%;flex:none}
  .lw-radio input:checked+i{border:5px solid #5c8dff}
  .lw-radio input:focus-visible+i{outline:2px solid var(--accent);outline-offset:2px}
  .lw-fb__note{position:relative;display:block;margin-top:18px}
  .lw-fb__note textarea{display:block;width:100%;height:124px;margin-top:10px;padding:10px 12px 22px;border:1px solid #2a3443;border-radius:8px;background:#0f141c;color:#e4f3ff;font:16px/1.5 var(--font);resize:none;outline:none}
  .lw-fb__note textarea:focus{border-color:#5c8dff}
  .lw-fb__count{position:absolute;right:10px;bottom:6px;font-size:10px;color:#748da9}
  .lw-fb__count b{font-weight:400}
  .lw-fb__err{margin:10px 0 0;font-size:12px;color:#ff6b77}
  .lw-fb__foot{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.06)}
  .lw-fb__foot button{height:44px;border:1px solid #2a3748;border-radius:8px;background:#1c2735;color:#fff;font-size:13px;font-weight:600}
  .lw-fb__foot [data-lw-fb-submit]{background:#5c8dff;border-color:#5c8dff;color:#fff}
  .lw-fb__foot [data-lw-fb-submit]:disabled{opacity:1;color:#64768d;background:#1c2735;border-color:#263344}
  /* 播放页内 toast 居中 */
  .ll-watch-body .ll-toast{top:50%;bottom:auto;transform:translate(-50%,-50%);padding:10px 18px;border:0;background:rgba(28,37,52,.94);color:#fff}
  .ll-watch-body .ll-toast.is-show{transform:translate(-50%,-50%)}
  .lw-share .ll-dialog{width:auto}
}
@media (max-width:350px){.lw-side__scroll{padding:16px 12px 20px}.lw-tabs{margin:0 12px;gap:12px}.lw-tabs button{font-size:13px}.lw-tabs button[aria-selected=true]{font-size:16px}}
.is-detail .lw-eps__nav{display:none!important}
.lw-compose textarea::placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lw-stage:not(.is-started) .lw-frame__player{opacity:0}

/* ============ 返修 r3（2026-10-20）：评分/类型标签、广告占位、评论排序胶囊、空态插画、反馈入口 ============ */
.lw-ov__scope{margin:8px 0 0}
.lw-ov__scope .lw-chip{margin-top:0}
.lw-adsq{margin:20px 0 0}
.lgs-sidebar-ad .lw-adicons__track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.lw-adicon{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0}
.lw-adicon__img{display:block;width:100%;max-width:61px;aspect-ratio:1;border:1px solid #25475e;border-radius:7px;background:linear-gradient(150deg,#12304a,#101d33)}
.lw-adicon__img .ll-ad__tag{top:2px;right:2px;padding:0 3px;border-radius:3px;font-size:max(8px,var(--ll-fmin,0px))}
.lw-adicon em{font-style:normal;font-size:max(10px,var(--ll-fmin,0px));font-weight:500;line-height:1.2;color:#b2c1d1;white-space:nowrap}
.lw-adicon__img.ll-adph{display:flex;border-color:rgba(255,255,255,.06);background:var(--raised)}
.lw-adicon__img.ll-adph>img{width:52%;height:auto}
.lw-sort{gap:8px;align-items:center}
.lw-sort button{padding:4px 10px;border-radius:5px;line-height:1.5}
.lw-sort button.is-active{background:#24324a;color:#fff}
.lw-sort button:not(.is-active):hover{color:#c8d0df}
.lw-cmts__art{display:block;margin:0 auto 12px}
.lw-pause-ad__ph{display:grid;place-items:center;width:200px;height:200px;background:radial-gradient(at 80% 20%,#0c7fb6,transparent 55%),linear-gradient(150deg,#12304a,#101d33);font-size:max(13px,var(--ll-fmin,0px));font-weight:600;color:#cfe6fb}
.lw-pause-ad__ph.ll-adph{display:flex;background:var(--raised)}
.lw-pause-ad__ph.ll-adph>img{width:70%;height:auto}
@media (max-width:1023px){
  .lw-adicons{margin-top:16px}
  .lw-adicons .lw-adicons__track{display:flex;gap:12px;padding:12px;overflow-x:auto;scrollbar-width:none;background:#161d27;border:1px solid rgba(255,255,255,.06);border-radius:16px}
  .lw-adicons .lw-adicons__track::-webkit-scrollbar{display:none}
  .lw-adicons .lw-adicon{flex:0 0 48px}
  .lw-adicons .lw-adicon__img{max-width:48px}
  .lw-adban .ll-adph-banners{margin:16px 0 0}
  .lw-adstrip{margin-top:24px}
  .lw-adstrip__ph{width:320px;max-width:100%;height:50px;margin:0 auto;border-radius:6px;background:linear-gradient(120deg,#081827,#103449 63%,#125877)}
  .lw-adstrip__ph.ll-adph{display:flex;background:var(--raised)}
  .lw-adstrip__ph.ll-adph>img{width:auto;height:56%}
  .lw-epads{margin-top:20px}
  .lw-epads .lw-adicons__track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
  .lw-epads .lw-adicon__img{max-width:none}
  /* 评论空态：插画 + 「还没有评论~」在列表区垂直居中 */
  .lw-side[data-tab=comments] .lw-cmts.lw-pane{display:flex;flex-direction:column;min-height:100%}
  .lw-cmts__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 0}
  .lw-cmts__empty[hidden]{display:none}
  .lw-cmts__empty strong{margin:0;font-size:12px;font-weight:500;color:#e6eaf0}
  /* 右上「反馈」：深色圆角胶囊（按钮本身保留 44 触控高度） */
  .lw-feedback-entry span{display:inline-flex;align-items:center;height:28px;padding:0 12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(30,34,44,.78)}
  /* 发送失败：输入框上方红字 */
  .lw-compose__err{margin:0 0 8px;font-size:12px;color:#ff5b6b}
}

/* ============ 返修 R3（2026-10-20，播放组） ============ */
/* PC 倍速标签 15px/700（按钮继承的 font 简写会把 span 拉回 400，这里显式写死） */
.lw-tool--speed span,.lw-tool--speed [data-lw-speed-label]{font-size:max(15px,var(--ll-fmin,0px));font-weight:700}
/* PC 评论：整楼展开后显示「收起回复」，收起回到前 3 条预览 */
@media (min-width:1024px){
  .lw-replies.is-all>.lw-replies__toggle{display:inline-flex;margin-top:6px;color:#88a8c3}
  .lw-replies.is-all>.lw-replies__toggle:hover{color:#8aaeff}
  .lw-replies.is-all.is-folded>.lw-cmt--reply:nth-of-type(n+4){display:none}
}
@media (max-width:1023px){
  /* 动作栏四个按钮下方统一文字「喜欢/收藏/评论/分享」 */
  .lw-act em{font-size:11px;font-weight:600}
  /* 暂停广告：「广告」标签左上、关闭右上，互不重叠 */
  .lw-pause-ad .ll-ad__tag{top:8px;left:8px;right:auto;padding:2px 8px;font-size:11px}
  /* 选集弹层底部广告条：占满弹层宽度、贴底，图标 44px + 文字，与简介弹层图标条一致 */
  .lw-epads{display:block;position:sticky;bottom:-24px;z-index:2;margin:20px -16px -24px;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:#11151d;border-top:1px solid rgba(255,255,255,.06)}
  .lw-side[data-tab=eps] .lw-eps.lw-pane{display:flex;flex-direction:column;min-height:100%}
  .lw-side[data-tab=eps] .lw-epads{margin-top:auto}
  .lw-eps__nav{margin-bottom:20px}
  .lw-epads .lw-adicons__track{display:flex;gap:12px;padding:0 16px;overflow-x:auto;scrollbar-width:none}
  .lw-epads .lw-adicons__track::-webkit-scrollbar{display:none}
  .lw-adicons .lw-adicon,.lw-epads .lw-adicon{flex:0 0 44px}
  .lw-adicons .lw-adicon__img,.lw-epads .lw-adicon__img{width:44px;max-width:44px}
  /* 简介弹层底部横幅广告：左右边线与推荐卡片网格对齐（满内容宽，保持 320:50） */
  .lw-adstrip__ph{width:100%;height:auto;aspect-ratio:32/5}
  .lw-adstrip>*{width:100%;max-width:none}
  /* 问题反馈：错误提示放在底部按钮栏正上方（不在滚动区内），不会被按钮栏挡住或滚出视野 */
  .lw-fb__err{flex:none;margin:0;padding:10px 16px 0;border-top:1px solid rgba(255,255,255,.06)}
  .lw-fb__err+.lw-fb__foot{border-top:0}
}
/* 手机端沉浸式（≤768，llImmersiveM）：公共顶栏已隐藏，舞台顶到视口最上 */
@media (max-width:768px){
  body.ll-immersive-m .lw-stage,body:has(.ll-header.ll-immersive-m) .lw-stage{top:0}
}

/* ============ Figma 对齐（2026-10-21，GV播放组）：设计稿 web/GV单视频播放-01~05、web/短剧播放-01/08、h5/短剧播放-01/03/06 ============
   PC 播放页（短剧 / GV 共用，两组设计稿一致的部分不加 .is-gv）：
   面包屑「/」分隔 35px #12121D、侧栏「视频侧栏 · Web · 450」、单行控制条（圆底暂停键 · 当前时间 · 进度 · 总时长 · 音量 · 1X · 全屏）、
   #5C8DFF 进度/下划线/按钮、加载中 12 点虚线圈、播放失败刷新图标 + 胶囊按钮、最新地址卡片。 */
@media (min-width:1024px){
  .lw{grid-template-columns:minmax(0,1fr) 450px}
  .lw-crumb{height:35px;background:#12121d;border-bottom:0}
  .lw-crumb li+li::before{content:"/";margin:0 6px;color:inherit}
  .lw-stage{height:calc(calc(100*var(--ll-vh,1vh)) - var(--header-h) - 35px)}
  .lw-side{height:calc(calc(100*var(--ll-vh,1vh)) - var(--header-h) - 35px);background:#191924;border-left:1px solid #22232a}
  .lw-tabs{height:78px;padding:0 22px;background:#191924;border-bottom-color:#1f232f}
  .lw-tabs button[aria-selected=true]{border-bottom-color:#5c8dff}
  .lw-tabs sup{margin-left:6px;font-size:max(14px,var(--ll-fmin,0px));font-weight:400;vertical-align:baseline;line-height:inherit}
  .lw-side__scroll{padding:22px}
  .lw-compose{background:#191924}
  /* 题材 12px 灰、评分黄星黄字 */
  .lw-ov__genre{font-size:max(12px,var(--ll-fmin,0px));color:#8f93a0}
  .lw-ov__score{color:#eaa80f}
  /* 简介：最多两行，「…展开」接在第二行末尾 */
  .lw-desc{position:relative}
  .lw-desc.is-clamp .lw-desc__more{position:absolute;right:0;bottom:0;margin:0;padding-left:4px;background:#191924;color:#5c8dff;font-size:max(12px,var(--ll-fmin,0px));font-weight:400;line-height:1.65}
  .lw-desc.is-clamp .lw-desc__more::before{content:"…";color:#b8bfcb}
  .lw-desc__more{color:#5c8dff;font-weight:400}

  /* 中心播放键：近黑实底圆 100px，无描边 */
  .lw-center{width:100px;height:100px;background:rgba(6,5,5,.78);border:0;box-shadow:none}
  .lw-center svg{width:40px;height:40px;margin-left:5px}

  /* 加载中 / 播放失败（遮罩约 36% 黑） */
  .lw-status{gap:0;background:rgba(0,0,0,.36)}
  .lw-status p{font-size:max(12px,var(--ll-fmin,0px));color:#9a9ca5}
  .lw-status--loading p{margin-top:14px;font-size:max(14px,var(--ll-fmin,0px));color:#e8e8ea}

  /* 单行控制条 */
  .lw-bottom{display:flex;align-items:center;gap:20px;padding:30px 38px 21px;background:linear-gradient(transparent,rgba(0,0,0,.55) 45%,rgba(0,0,0,.8))}
  .lw-time,.lw-tools{display:contents}
  .lw-tools__gap{display:none}
  .lw-tool--play{order:1}.lw-tool--next{order:2}
  .lw-time [data-lw-now]{order:3}
  .lw-progress{order:4;flex:1;min-width:0;margin:0 4px}
  .lw-time [data-lw-dur]{order:5}
  .lw-tool--vol{order:6}.lw-tool--speed{order:7}.lw-tool--full{order:8}
  .lw-time span{flex:none;font-size:max(14px,var(--ll-fmin,0px));font-weight:400;color:#fff;letter-spacing:.5px;font-variant-numeric:tabular-nums}
  .lw-tool--play{width:58px;height:58px;min-width:58px;border-radius:50%;background:#211f20}
  .lw-tool--play svg{width:22px;height:22px}
  .lw-tool--vol,.lw-tool--speed,.lw-tool--full{min-width:28px;height:36px}
  .lw-tool--speed span,.lw-tool--speed [data-lw-speed-label]{font-size:max(15px,var(--ll-fmin,0px));font-weight:500}
  .lw-tool:hover:not(:disabled){color:#5c8dff}
  .lw-progress input::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(to right,#5c8dff 0 var(--p),rgba(255,255,255,.3) var(--p) 100%)}
  .lw-progress input::-moz-range-track{height:3px;border-radius:3px;background:linear-gradient(to right,#5c8dff 0 var(--p),rgba(255,255,255,.3) var(--p) 100%)}
  .lw-progress input::-webkit-slider-thumb{width:15px;height:15px;margin-top:-6px;background:#5c8dff;box-shadow:none}
  .lw-progress input::-moz-range-thumb{width:15px;height:15px;background:#5c8dff;box-shadow:none}

  /* 最新地址：#1E2235 卡片、行高 57、域名 15px 常规；「查看全部入口」#5C8DFF 实心胶囊 52 高 */
  .lw-addr__list{margin-top:18px;border:0;border-radius:8px;background:#1e2235}
  .lw-addr__list li+li{border-top:1px solid #282c3e}
  .lw-addr__list button{min-height:57px;padding:0 16px;color:#8293a8;font-size:max(12px,var(--ll-fmin,0px))}
  .lw-addr__list button:hover{background:#252a40}
  .lw-addr__list strong{font-size:max(15px,var(--ll-fmin,0px));font-weight:400;color:#fff}
  .lw-addr__all{min-height:52px;display:grid;place-items:center;margin-top:24px;padding:0;background:#5c8dff;border:0;border-radius:999px;font-size:max(14px,var(--ll-fmin,0px));font-weight:400;color:#fff}
  .lw-addr__all:hover{background:#4d7ef0}

  /* GV：画面铺满面包屑以下整个播放区；无 logo 水印 */
  .is-gv .lw-frame{inset:0;transform:none;width:100%;height:100%;max-height:none;aspect-ratio:auto}
  .is-gv .lw-frame__mark{display:none}
  .is-gv .lw-frame::after{display:none}
}
/* 加载中：12 点虚线圈 32px #01AEF8（PC / H5 同款） */
.lw-spin{width:32px;height:32px;border:0;border-radius:50%;background:repeating-conic-gradient(#01aef8 0 14deg,transparent 14deg 30deg);-webkit-mask:radial-gradient(circle,transparent 11.5px,#000 12.5px);mask:radial-gradient(circle,transparent 11.5px,#000 12.5px);animation:lwSpin 1s steps(12) infinite}
/* 播放失败：蓝色刷新图标 + 标题 14 + 副文案 12 灰 + #5C8DFF 实心胶囊「重新加载」87×32（PC / H5 同款） */
.lw-status__ic{display:block;color:#5c8dff;font-style:normal}
.lw-status__ic svg{width:24px;height:24px}
.lw-status--error{gap:0}
.lw-status--error strong{margin-top:12px;font-size:max(14px,var(--ll-fmin,0px));font-weight:500;color:#fff}
.lw-status--error p{margin-top:4px;font-size:max(12px,var(--ll-fmin,0px));color:#9a9ca5}
.lw-status--error button{min-width:87px;height:32px;min-height:32px;margin-top:12px;padding:0 18px;background:#5c8dff;border:0;border-radius:999px;color:#fff;font-size:max(12px,var(--ll-fmin,0px));font-weight:400}
.lw-status--error button:hover{background:#4d7ef0}
@media (max-width:1023px){
  /* 倍速 / 静音在清屏条里保持原顺序（模板为 PC 改成 音量→1X） */
  .lw-tool--vol{order:1}.lw-tools .lw-hide-clear{order:2}.lw-tool--full{order:3}
  /* 最新地址「查看全部入口」：#5C8DFF 实心全圆角白字 */
  .lw-addr__all{min-height:44px;background:#5c8dff;border:0;border-radius:999px;color:#fff;font-weight:400}
  /* GV：视频上无「蓝果短剧」文字水印 */
  .is-gv .lw-mark{display:none}
}
/* 最新地址行：设计稿只有「线路名 + 域名」一行，不出说明小字 */
.lw-addr__note{display:none}

/* ============ Figma 对齐（2026-10-21，短剧播放组）：设计稿 web/短剧播放-01~08、h5/短剧播放-01~18 ============
   只改与短剧播放审计差异直接相关的规则；GV 设计稿不同的地方用 .lw:not(.is-gv) 限定，不动 GV 组已对齐的样式。 */
/* 画面上不出任何品牌水印（模板已去掉 .lw-frame__mark / .lw-mark，这里兜底旧缓存 HTML） */
.lw-frame__mark,.lw-mark{display:none!important}
/* 评论输入框：字段错误时不描红边（设计稿 web-07 / h5-10 只有红字） */
.lw-compose.has-error textarea{border-color:transparent}
/* 选集格子（PC 与 GV 侧栏共用）：无描边 #22222D、灰色常规字；当前集 #263050 + #5C8DFF 描边与数字 */
.lw-eps__grid{gap:8px}
.lw-eps__grid a{height:50px;border:1px solid transparent;border-radius:6px;background:#22222d;color:#8f93a0;font-size:max(14px,var(--ll-fmin,0px));font-weight:400}
.lw-eps__grid a:hover{border-color:transparent;background:#2a2a37;color:#fff}
.lw-eps__grid a.is-active,.lw-eps__grid a.is-active:hover{border-color:#5c8dff;background:#263050;color:#5c8dff}
.lw-bars b{background:#5c8dff}
/* 审核中标签：深蓝底蓝字、无描边（h5-12） */
.lw-pending{margin-left:6px;padding:2px 6px;border:0;border-radius:4px;background:#20253b;color:#5c8dff;font-size:max(11px,var(--ll-fmin,0px));font-weight:500}
/* 加载中（短剧帧）：#5C8DFF 12 段虚线圈、白字「正在加载视频」、画面不压暗 */
.lw:not(.is-gv) .lw-spin{background:repeating-conic-gradient(#5c8dff 0 14deg,transparent 14deg 30deg)}
.lw:not(.is-gv) .lw-status--loading{background:transparent}
.lw:not(.is-gv) .lw-status--loading p{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}

@media (min-width:1024px){
  /* 侧栏内边距 25（web-01：侧栏 450，内容区 400） */
  .lw:not(.is-gv) .lw-tabs{padding:0 25px}
  .lw:not(.is-gv) .lw-side__scroll{padding:25px}
  .lw:not(.is-gv) .lw-side[data-tab=comments] .lw-side__scroll{padding:0 25px 24px}
  /* 播放区两侧底色 #0A0A0B */
  .lw:not(.is-gv) .lw-stage{background:#0a0a0b}
  /* 左上集数：细描边深色全圆角胶囊「第 1 集 · 16 集全」，与面包屑左边线对齐 */
  .lw-stage__top{top:8px;left:max(var(--gutter),calc((calc(100*var(--ll-vw,1vw)) - var(--maxw))/2));height:35px;align-items:center;gap:4px;padding:0 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(6,6,6,.85);text-shadow:none}
  .lw-stage__top strong{font-size:max(12px,var(--ll-fmin,0px));font-weight:700;color:#fff}
  .lw-stage__top span{font-size:max(10px,var(--ll-fmin,0px));color:#8c8c8c}
  /* 右侧竖排操作：实心爱心 / 实心星 / 圆形气泡 / 箭头，48 深色半透明圆底 + 灰白小字 */
  .lw:not(.is-gv) .lw-actions{right:26px;gap:26px}
  .lw:not(.is-gv) .lw-act{width:56px;min-height:0;gap:4px;color:#fff;font-size:max(11px,var(--ll-fmin,0px));font-weight:400;text-shadow:none}
  .lw:not(.is-gv) .lw-act__ic{width:48px;height:48px;border-radius:50%;background:rgba(0,0,0,.32)}
  .lw:not(.is-gv) .lw-act__ic svg{width:20px;height:20px}
  .lw:not(.is-gv) .lw-act em{color:#c6c8ce;line-height:1.3}
  .lw:not(.is-gv) .lw-act .lw-ic-off{display:none}.lw:not(.is-gv) .lw-act .lw-ic-on{display:block}
  .lw:not(.is-gv) .lw-act:hover .lw-act__ic{background:rgba(0,0,0,.5)}
  .lw:not(.is-gv) .lw-act:hover{color:#fff}
  .lw:not(.is-gv) .lw-act.is-like[aria-pressed=true] .lw-act__ic{color:#e84142}
  .lw:not(.is-gv) .lw-act.is-favorite[aria-pressed=true] .lw-act__ic{color:#ffd900}
  /* 标签「评论 1」：数字与文字同字号同基线 */
  .lw-tabs sup{margin-left:6px;font-size:inherit;font-weight:inherit;vertical-align:baseline;line-height:inherit}
  /* 评论条目：无点赞；「回复」默认蓝色；楼内回复昵称后灰字「回复 xxx」 */
  .lw-cmt__like{display:none!important}
  .lw-cmt__meta button{color:#5c8dff}
  .lw-cmt__meta button:hover{color:#8aaeff}
  .lw-cmt__who small{color:#8f93a0}
  .lw-cmt__who small b{color:#8f93a0}
  .lw-cmt{grid-template-columns:44px 1fr;gap:12px}
  .lw-cmt>.lw-avatar{width:44px;height:44px;font-size:max(16px,var(--ll-fmin,0px))}
  .lw-cmt--reply{grid-template-columns:28px 1fr;gap:8px}
  .lw-cmt--reply>.lw-avatar{width:28px;height:28px;font-size:max(12px,var(--ll-fmin,0px))}
  .lw-cmt__who strong{font-size:max(14px,var(--ll-fmin,0px));font-weight:500;color:#fff}
  .lw-cmt p{font-size:max(13px,var(--ll-fmin,0px));color:#d6d8de}
  .lw-cmt__meta small{font-size:max(12px,var(--ll-fmin,0px));color:#8f93a0}
  .lw-cmt__meta button{font-size:max(12px,var(--ll-fmin,0px))}
  /* 热门/最新：选中深蓝胶囊 #263050 蓝字，未选白字 */
  .lw-sort button{padding:5px 13px;border-radius:6px;color:#fff;font-weight:400}
  .lw-sort button.is-active{background:#263050;color:#5c8dff}
  .lw-sort button:not(.is-active):hover{color:#c6c8ce}
  /* 评论输入栏：头像 + 全圆角胶囊输入框 + #5C8DFF 胶囊「发送」，整行铺满，右侧不再给悬浮按钮留位 */
  .lw-compose{padding:18px 25px;flex-direction:column;border-top-color:#22232e}
  .lw-side[data-tab=comments] .lw-compose{display:flex}
  .lw-compose__ctx{order:0}.lw-compose__row{order:1}.lw-compose__err{order:2}
  .lw-compose__row{gap:10px}
  .lw-compose .lw-avatar--me{width:44px;height:44px;font-size:max(16px,var(--ll-fmin,0px))}
  .lw-compose textarea{height:44px;min-height:44px;max-height:96px;padding:12px 18px;border:0;border-radius:22px;background:#262a36;font-size:max(13px,var(--ll-fmin,0px))}
  .lw-compose textarea:focus{border-color:transparent;box-shadow:none}
  .lw-compose__row>button{height:44px;min-width:52px;padding:0 14px;border-radius:999px;background:#5c8dff;color:#fff;font-size:max(13px,var(--ll-fmin,0px));font-weight:400}
  .lw-compose__row>button:hover:not(:disabled){background:#4d7ef0}
  /* 字段错误：红字在输入行下方，左边与输入框对齐（头像 44 + 间距 10） */
  .lw-compose__err{margin:8px 0 0 54px;font-size:max(12px,var(--ll-fmin,0px));color:#ff5b6b}
  /* 回复对象卡片：深蓝圆角卡 + 头像 +「回复：xx」白色粗体 + 原文 + 灰字「取消」 */
  .lw-compose__ctx{align-items:center;gap:12px;margin-bottom:14px;padding:15px 18px;border:0;border-radius:10px;background:#20253b}
  .lw-compose__ctx .lw-compose__av{width:44px;height:44px;font-size:max(16px,var(--ll-fmin,0px))}
  .lw-compose__ctx div{flex:1}
  .lw-compose__ctx b{font-size:max(14px,var(--ll-fmin,0px));font-weight:700;color:#fff}
  .lw-compose__ctx p{margin-top:6px;font-size:max(12px,var(--ll-fmin,0px));color:#a3a6b1}
  .lw-compose__ctx button{align-self:flex-start;color:#a3a6b1;font-size:max(12px,var(--ll-fmin,0px));font-weight:400}
  .lw-compose__ctx button:hover{color:#fff}
}

@media (max-width:1023px){
  /* 清屏 / 轻量选集：不带站点顶栏，舞台顶到最上 */
  body:has(.lw-stage.is-clear) .ll-header{display:none}
  body:has(.lw-stage.is-clear) .lw-stage{top:0}
  /* 弹层从站点顶栏下方开始，遮罩不盖住顶栏（h5-04~15） */
  .lw-side,.lw-fb{top:var(--header-h)}
  /* 返回键：深色圆底 */
  .lw-mtop .lw-ctl::before{content:"";position:absolute;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.55)}
  .lw-mtop .lw-ctl{position:relative}
  .lw-mtop .lw-ctl svg{position:relative;width:18px;height:18px}
  /* 右侧四个操作都有深色半透明圆底（不是青色） */
  .lw-act__ic,.lw-act.is-like .lw-act__ic,.lw-act.is-favorite .lw-act__ic{background:rgba(0,0,0,.42)}
  .lw-act[aria-pressed=true],.lw-act[aria-pressed=true]:hover{color:#fff}
  .lw-act.is-like[aria-pressed=true] .lw-act__ic{color:#e84142}
  .lw-act.is-favorite[aria-pressed=true] .lw-act__ic{color:#ffd900}
  /* 进度条：已播放 + 圆点 #5C8DFF，未播放深灰 */
  .lw-progress input::-webkit-slider-runnable-track{background:linear-gradient(to right,#5c8dff 0 var(--p),#353535 var(--p) 100%)}
  .lw-progress input::-moz-range-track{background:linear-gradient(to right,#5c8dff 0 var(--p),#353535 var(--p) 100%)}
  .lw-progress input::-webkit-slider-thumb{background:#5c8dff}
  .lw-progress input::-moz-range-thumb{background:#5c8dff}
  /* 清屏底栏：选集 · 1X · ^ · 全屏（无音量；全屏图标白色） */
  .lw-stage.is-clear .lw-tool--vol{display:none!important}
  .lw-stage.is-clear .lw-hide-clear{display:grid}
  .lw-tool--speed{order:1}.lw-tools .lw-hide-clear{order:2}.lw-tool--full{order:3}
  .lw-tool--speed span,.lw-tool--speed [data-lw-speed-label]{font-size:13px;font-weight:400}
  .lw-tool--full,.lw-tool--full:hover{color:#fff}
  .lw-tool:hover:not(:disabled){color:#fff}
  /* 底部弹层底色 #191925 */
  .lw-side__panel,.lw-fb__panel,.lw-lite{background:#191925}
  .lw-compose{background:#191925}
  .lw-compose textarea{background:#252932}
  /* 标签下划线 #5C8DFF、与文字同宽；评论弹层标题「评论」无下划线 */
  .lw-tabs button[aria-selected=true]::after{left:0;right:0;width:auto;transform:none;background:#5c8dff}
  .lw-side[data-tab=comments] .lw-tabs button[aria-selected=true]::after{display:none}
  /* 简介：无评分；标签「#都市 #青春」蓝色；「推荐专题 [AI短剧]」；广告图标贴边无外框；底部标签灰底灰字 */
  .lw-ov__score{display:none}
  .lw-ov__genre{color:#5c8dff}
  .lw-ov__genre :is(span,a)::before,.lw-ov__genre :is(span,a)+:is(span,a)::before{content:"#"}
  .lw-topic{margin:12px 0 0;align-items:center;gap:8px;font-size:12px;color:#c6c8ce}
  .lw-side[data-tab=intro] .lw-topic{display:flex}
  .lw-chip{margin-top:12px;padding:3px 8px;border:0;border-radius:4px;background:#30303b;color:#9598a7;font-size:12px;font-weight:400}
  .lw-topic .lw-chip{margin:0}
  .lw-adicons{margin:12px -16px 0}
  .lw-adicons .lw-adicons__track{padding:0 16px;background:none;border:0;border-radius:0}
  /* 选集弹层只占下半屏（约 465），右上「正在播放 第 1 集」数字两侧留空格 */
  .lw-side[data-tab=eps] .lw-side__panel{height:min(465px,calc(100dvh - 52px))}
  .lw-eps__head small .ll-m-only{display:inline}
  .lw-eps__grid a{height:43px;border-color:transparent;background:#2e303c;color:#c6c8ce;font-size:13px}
  .lw-eps__grid a:hover{border-color:transparent;background:#2e303c;color:#fff}
  .lw-eps__grid a.is-active,.lw-eps__grid a.is-active:hover{background:#263051;border-color:#5c8dff;color:#5c8dff}
  .lw-eps__nav button{height:42px;border:0;border-radius:6px;background:#30303b;color:#fff;font-size:13px}
  .lw-eps__nav button[data-lw-next]{background:#263051;color:#5c8dff}
  .lw-eps__nav button:disabled{opacity:.5}
  .lw-epads{background:#191925}
  /* 评论：发送按钮 #5C8DFF 白字；回复提示条 #20253B，「回复 @xx」白字、「取消回复」蓝字 */
  .lw-compose__row>button{background:#5c8dff;color:#fff;font-weight:400}
  .lw-compose__ctx{background:#20253b}
  .lw-compose__ctx b{color:#fff;font-weight:400}
  .lw-compose__ctx button{color:#5c8dff;font-weight:400}
  /* 问题反馈：标题 18、作品行 14 白字、输入框 #252932 无字数统计可拖拽、底部胶囊按钮（取消 #30303B / 提交反馈常亮 #5C8DFF） */
  .lw-fb__head h2{font-size:18px}
  .lw-fb__work{font-size:14px;color:#fff}
  .lw-fb__note textarea{padding:10px 12px;border:0;background:#252932;resize:vertical;min-height:96px}
  .lw-fb__note textarea:focus{box-shadow:0 0 0 1px #5c8dff}
  .lw-fb__foot button{height:40px;border:0;border-radius:999px;background:#30303b;color:#fff;font-weight:400}
  .lw-fb__foot [data-lw-fb-submit],.lw-fb__foot [data-lw-fb-submit]:disabled{background:#5c8dff;color:#fff;opacity:1}
  /* 单选：选中为蓝色实心圆 + 白色对勾 */
  .lw-radio i{position:relative;display:grid;place-items:center}
  .lw-radio input:checked+i{border:0;background:#5c8dff}
  .lw-radio input:checked+i::after{content:"";width:8px;height:4px;margin-top:-2px;border:solid #fff;border-width:0 0 2px 2px;transform:rotate(-45deg)}
  /* 最新地址 / 选中项等主色统一 #5C8DFF */
  .lw-addr__list strong{font-weight:400}
  /* 轻量选集：圆底 ⊗ 关闭；格子无描边 #2E303C，选中 #263051 + 蓝描边蓝字 */
  .lw-lite__head{border-bottom-color:rgba(255,255,255,.06)}
  .lw-lite__row a{border-color:transparent;background:#2e303c;color:#c6c8ce}
  .lw-lite__row a.is-active{background:#263051;border-color:#5c8dff;color:#5c8dff}
  /* 暂停广告：竖版 168×222，左上「广告」，右上小 ⊗ */
  .lw-pause-ad{width:168px;min-height:222px;border-radius:6px}
  .lw-pause-ad__ph,.lw-pause-ad__ph.ll-adph{width:168px;height:222px}
  .lw-pause-ad .hg-ssp-slot{--ssp-icon:168px}
  .lw-pause-ad__x{width:36px;height:36px}
  .lw-pause-ad__x::before{width:20px;height:20px;background:rgba(0,0,0,.55)}
  .lw-pause-ad__x svg{width:11px;height:11px;color:#fff}
}

/* ============ Figma 对齐 R2（2026-10-21，短剧播放组）：数值来自 Figma 游客链接高倍截图逐像素实测 ============ */
/* 推荐卡片悬停：与全站卡片一致，只放大封面，标题不变色、无青色描边 */
.lw-rec__grid .ll-card:hover h3{color:var(--text)}
.lw-rec__grid .ll-card:hover .ll-card__art{box-shadow:none}
/* 分享弹窗「复制链接」：#5C8DFF 白字胶囊（与「发送 / 提交反馈 / 查看全部入口」同款） */
.lw-share [data-lw-share-copy]{background:#5c8dff;border-color:#5c8dff;border-radius:999px;color:#fff;font-weight:400}
.lw-share [data-lw-share-copy]:hover{background:#4d7ef0;border-color:#4d7ef0}

@media (min-width:1024px){
  /* 中心播放键（短剧）：100px 圆、黑色 60% 半透明、无描边；三角 36×41（web/短剧播放-01） */
  .lw:not(.is-gv) .lw-center{width:100px;height:100px;background:rgba(0,0,0,.6);border:0;box-shadow:none}
  .lw:not(.is-gv) .lw-center svg{width:62px;height:62px;margin-left:0}
  .lw:not(.is-gv) .lw-center:hover,.lw:not(.is-gv) .lw-center:focus-visible{background:rgba(0,0,0,.72);transform:translate(-50%,-50%) scale(1.06)}
  /* 侧栏作品信息：封面 84×114、间距 20；片名 20、题材 14 灰、评分 20 黄；剧情简介标题 18、正文 13/20 #A6A9B4 */
  .lw:not(.is-gv) .lw-side[data-tab=video] .lw-side__scroll{padding-top:16px}
  .lw:not(.is-gv) .lw-ov{grid-template-columns:84px 1fr;gap:20px}
  .lw:not(.is-gv) .lw-ov__poster{width:84px;height:114px;aspect-ratio:auto;border-radius:6px}
  .lw:not(.is-gv) .lw-ov h1{margin:1px 0 0;font-size:max(20px,var(--ll-fmin,0px));font-weight:700;line-height:max(28px,calc(var(--ll-fmin,0px)*1.25));color:#f1f2f7}
  .lw:not(.is-gv) .lw-ov__genre{margin:8px 0 0;font-size:max(14px,var(--ll-fmin,0px));line-height:max(20px,calc(var(--ll-fmin,0px)*1.25));color:#9397a3}
  .lw:not(.is-gv) .lw-ov__score{margin:8px 0 0;font-size:max(20px,var(--ll-fmin,0px));font-weight:400;line-height:max(28px,calc(var(--ll-fmin,0px)*1.25));color:#eaa80f}
  .lw:not(.is-gv) .lw-pane h2{font-size:max(18px,var(--ll-fmin,0px));font-weight:700;line-height:max(26px,calc(var(--ll-fmin,0px)*1.25));color:#f1f2f7}
  .lw:not(.is-gv) .lw-desc{margin-top:15px}
  .lw:not(.is-gv) .lw-desc h2{margin-bottom:7px}
  .lw:not(.is-gv) .lw-desc p{font-size:max(13px,var(--ll-fmin,0px));line-height:max(20px,calc(var(--ll-fmin,0px)*1.25));color:#a6a9b4}
  .lw:not(.is-gv) .lw-desc.is-clamp .lw-desc__more{font-size:max(13px,var(--ll-fmin,0px));line-height:max(20px,calc(var(--ll-fmin,0px)*1.25))}
  .lw:not(.is-gv) .lw-desc.is-clamp .lw-desc__more::before{color:#a6a9b4}
  .lw:not(.is-gv) .lw-eps__head{align-items:center}
  .lw:not(.is-gv) .lw-eps__head small{font-size:max(14px,var(--ll-fmin,0px));color:#a3a3a7}
}

@media (max-width:1023px){
  /* 中心播放键：48px 黑色 60% 半透明圆底，三角约 19×21（h5/短剧播放-01） */
  .lw-center{width:48px;height:48px;background:rgba(0,0,0,.6);border:0;box-shadow:none}
  .lw-center svg{width:32px;height:32px;margin-left:0}
  .lw-center:hover,.lw-center:focus-visible{background:rgba(0,0,0,.6);transform:translate(-50%,-50%)}

  /* 底部弹层统一头部：内容中心距面板顶 32、分隔线在 58 处（1px #242430，左右各缩进 16）；
     ⊗ 关闭：30px #3A3A3C 圆底 + 19px 白圈 + 7px 叉，圆右边距屏幕 15px（h5/短剧播放-04/07/09/14/17） */
  .lw-side__x{flex:none;width:44px;height:44px;margin:0 -8px 0 auto}
  .lw-side__x i{width:30px;height:30px;background:#3a3a3c}
  .lw-side__x svg{width:14px;height:14px;padding:1px;border:1.5px solid #fff;stroke-width:2.4}
  .lw-tabs{box-sizing:border-box;height:58px;min-height:58px;margin:0 16px;padding:6px 0 0;align-items:center;border-bottom:1px solid #242430}
  .lw-tabs button[aria-selected=true]::after{bottom:1px}
  .lw-fb__head,.lw-lite__head{box-sizing:border-box;min-height:58px;margin:0 16px;padding:6px 0 0;border-bottom:1px solid #242430}
  .lw-lite__head strong{font-size:18px;font-weight:700}

  /* 评论列表（h5/短剧播放-07/13）：头像 30、名字 13、正文 12/21、时间与回复 11 灰；条目上 20 下 9，分隔线 #212130 */
  .lw-side[data-tab=comments] .lw-side__scroll{padding:0 15px 16px}
  .lw-cmt{grid-template-columns:30px 1fr;gap:9px;padding:20px 0 9px;border-bottom-color:#212130}
  .lw-cmt__who{gap:6px;min-height:21px}
  .lw-cmt__who strong{font-size:13px;line-height:21px;font-weight:500;color:#cfd4dc}
  .lw-cmt p{margin:3px 0 0;font-size:12px;line-height:21px;color:#cfd4dc}
  .lw-cmt__meta{margin-top:2px}
  .lw-cmt__meta small{font-size:11px;color:#738498}
  .lw-cmt__meta button{font-size:11px;color:#738498}
  /* 本人审核中：#20253B 底 #5C8DFF 字 12px，46×27 */
  .lw-pending{display:inline-flex;align-items:center;height:27px;margin-left:0;padding:0 6px;border-radius:4px;font-size:12px;font-weight:400;line-height:1}
  /* 评论输入栏：上边线 #2C2C38；输入框 45 高 12px 字；「发送」46×42 圆角 6；字段错误 / 发送失败红字 #FF4638 12px 在输入框上方 */
  .lw-compose{padding:11px 15px calc(11px + env(safe-area-inset-bottom));border-top:1px solid #2c2c38}
  .lw-compose__row{gap:10px;align-items:center}
  .lw-compose textarea{height:45px;min-height:45px;padding:8px 11px 16px;border-radius:6px;font-size:12px;line-height:18px}
  .lw-compose textarea::placeholder{color:#748399}
  .lw-compose__field small{right:7px;bottom:4px;font-size:11px;color:#7d9cb9}
  .lw-compose__row>button{width:46px;min-width:46px;height:42px;min-height:42px;padding:0;border-radius:6px;font-size:12px}
  .lw-compose__err{margin:0 0 10px;font-size:12px;line-height:14px;color:#ff4638}
  /* 评论空态：Figma 原图「吉祥物抱评论卡」70×50 + 「还没有评论～」12px */
  .lw-cmts__art{width:70px;height:50px;margin:0 auto 11px}

  /* 问题反馈（h5/短剧播放-14/15）：面板按内容高度（最高到视频露出 54px 处）；作品行 14 #ACB9CD；
     分组标题 12 粗 #E7EBF1 +「必选/选填」10 #748399；单选行 42 高、圆 18 描边 #526074、文字 12；
     补充说明框 119 高、12px 字、占位 #748399；底部胶囊按钮 42 高 12px 字 */
  .lw-fb__panel{height:auto;max-height:calc(100dvh - var(--header-h) - 54px)}
  .lw-fb__scroll{flex:0 1 auto;padding:12px 16px 14px}
  .lw-fb__work{margin:0;font-size:14px;line-height:20px;color:#acb9cd}
  .lw-fb legend,.lw-fb__note>span{font-size:12px;line-height:18px;font-weight:700;color:#e7ebf1}
  .lw-fb legend{margin-top:17px;margin-bottom:4px}
  .lw-fb legend small,.lw-fb__note small{font-size:10px;font-weight:400;color:#748399}
  .lw-radio{min-height:42px;gap:10px;font-size:12px;color:#e7ebf1}
  .lw-radio i{width:18px;height:18px;border:1px solid #526074}
  .lw-fb__note{margin-top:15px}
  .lw-fb__note textarea{height:119px;min-height:96px;margin-top:8px;padding:10px 12px;border-radius:8px;font:12px/18px var(--font)}
  .lw-fb__note textarea::placeholder{color:#748399}
  .lw-fb__foot{padding:12px 16px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #222430}
  .lw-fb__foot button{height:42px;font-size:12px}

  /* 轻量选集（h5/短剧播放-17）：一行正好 5 格（63×46，间距 8，圆角 6，12px 字） */
  .lw-lite{padding-bottom:calc(12px + env(safe-area-inset-bottom))}
  .lw-lite__row{gap:8px;padding:12px 16px 0}
  .lw-lite__row a{flex:0 0 calc((100% - 32px) / 5);min-width:0;height:46px;padding:0;border-radius:6px;font-size:12px}
}
@media (max-width:1023px){
  /* R2 补：反馈「问题类型」与作品行间距（legend 的 margin 在 fieldset 内不生效，改在 fieldset 上） */
  .lw-fb legend{margin-top:0}
  .lw-fb fieldset{margin-top:17px}
  .lw-fb__note{margin-top:13px}
  /* 标签页下划线贴在分隔线上（h5/短剧播放-04/05/06） */
  .lw-tabs button[aria-selected=true]::after{bottom:-4px}
  .lw-tabs .lw-side__x{margin-right:-9px}
  /* 轻量选集：左右 16px 外不露出下一格 */
  .lw-lite__row{clip-path:inset(0 16px)}
  /* 简介弹层（h5/短剧播放-04）：片名 16 粗、简介 12/17；推荐图标 34px、间距 8、文字 10 */
  .lw-side[data-tab=intro] .lw-ov h1{font-size:16px;line-height:22px}
  .lw-side[data-tab=intro] .lw-desc p{font-size:12px;line-height:17px;font-weight:400}
  .lw-side[data-tab=intro] .lw-adicons .lw-adicons__track{gap:8px}
  .lw-side[data-tab=intro] .lw-adicons .lw-adicon{flex:0 0 41px}
  .lw-side[data-tab=intro] .lw-adicons .lw-adicon__img{width:34px;max-width:34px;margin:0 auto}
  .lw-side[data-tab=intro] .lw-adicons .lw-adicon em{font-size:10px}
}
@media (min-width:1024px){
  /* R2 补（web/短剧播放-01 高倍实测）：标签间距、题材分隔点、推荐图标文字 12 #9BA7B7、选集块上移 */
  .lw:not(.is-gv) .lw-tabs{gap:34px}
  .lw:not(.is-gv) .lw-ov__genre :is(span,a)+:is(span,a)::before{content:"·";margin:0 7px}
  .lw:not(.is-gv) .lw-adsq{margin-top:15px}
  .lw:not(.is-gv) .lw-adsq .lw-adicon em{font-size:max(12px,var(--ll-fmin,0px));font-weight:400;color:#9ba7b7}
  .lw:not(.is-gv) .lw-eps{margin-top:20px}
  .lw:not(.is-gv) .lw-eps__head{margin-bottom:11px}
}
@media (max-width:1023px){
  /* R2 补：输入栏内边距改为 11/15 后，回复提示条仍满宽贴边 */
  .lw-compose__ctx{margin:-11px -15px 11px;padding:0 15px}
}

/* ============ Figma 对齐 R2（2026-10-21，GV播放组）：web/GV单视频播放-01~05、web/短剧播放-08、h5/短剧播放-06 ============ */
/* 简介两行省略：「…展开」是接在截断文字后面的行内按钮（JS 按行宽截断），不再用遮罩盖住最后一个字 */
.lw-desc.is-cut p{display:block;-webkit-line-clamp:unset;overflow:visible}
.lw-desc.is-cut .lw-desc__more{position:static;display:inline;margin:0;padding:0;border:0;background:none;color:#5c8dff;font:inherit;font-weight:400;line-height:inherit;vertical-align:baseline;white-space:nowrap}
.lw-desc.is-cut .lw-desc__more::before{content:none}
.lw-desc .lw-desc__more[hidden]{display:none!important}
/* 评分：实心星形图标 + 数字（不再用字符「★」） */
.lw-ov__score{display:flex;align-items:center;gap:8px}
.lw-ov__star{flex:none;width:.75em;height:.75em;fill:currentColor}
/* GV 画框纯黑底：竖版片源 contain 时两侧露黑色，不是深蓝灰 */
.is-gv .lw-frame{background:#000}
@media (min-width:1024px){
  /* GV 横版片源铺满播放区（与封面一致，JS 判定 .is-fill：横版且裁切 ≤17%，依据 Figma 播放区 1470×981 下 16:9 只裁约 16%）；全屏时恢复完整画面 */
  .is-gv .lw-stage.is-fill:not(:fullscreen) .lw-frame__player video{object-fit:cover!important}
  /* 播放前海报与视频同一规则：只有 .is-fill 才 cover，否则 contain + 黑底（视频无尺寸时 JS 用海报 naturalWidth/Height 判定）；详情页无播放器脚本，保持原 cover */
  .is-gv:not(.is-detail) .lw-stage:not(.is-fill) .lw-frame__poster{object-fit:contain}
  /* GV 侧栏评分：黄星 15px + 「8.9」20px #EAA80F */
  .is-gv .lw-ov__score{margin:10px 0 0;font-size:max(20px,var(--ll-fmin,0px));font-weight:400;line-height:max(28px,calc(var(--ll-fmin,0px)*1.25));color:#eaa80f}
  .is-gv .lw-ov__star{width:15px;height:15px}
}
@media (min-width:1024px){
  /* R2 补（web/GV单视频播放-01/02 逐像素实测，侧栏 450 = Figma 0.396 倍图 ÷ 0.396）：
     片名紧贴封面（间距 12）、题材 14 #9397A3 用「·」分隔、评分紧跟题材；
     剧情简介 / 选集 / 相关推荐 标题 18 粗；简介正文 13/20 #A6A9B4，上距 10；广告图标上距 10；
     选集：标题行与格子间距 10、右侧「全 N 集」14 #A3A3A7、格子 50 高；
     相关推荐：分隔线上下各 20、卡片两列间距 15 行距 12，片名 14/20 白、标签 #1A2229 底 */
  .is-gv .lw-ov h1{margin-top:0}
  .is-gv .lw-ov__genre{margin:4px 0 0;font-size:max(14px,var(--ll-fmin,0px));line-height:max(20px,calc(var(--ll-fmin,0px)*1.25));color:#9397a3}
  .is-gv .lw-ov__genre :is(span,a)+:is(span,a)::before{content:"·";margin:0 7px}
  .is-gv .lw-ov__score{margin-top:3px}
  .is-gv .lw-pane h2{font-size:max(18px,var(--ll-fmin,0px));font-weight:700;line-height:max(26px,calc(var(--ll-fmin,0px)*1.25));color:#f1f2f7}
  .is-gv .lw-desc{margin-top:10px}
  .is-gv .lw-desc h2{margin-bottom:7px}
  .is-gv .lw-desc p{font-size:max(13px,var(--ll-fmin,0px));line-height:max(20px,calc(var(--ll-fmin,0px)*1.25));color:#a6a9b4}
  .is-gv .lw-adsq{margin-top:10px}
  .is-gv .lw-adsq .lw-adicon em{font-size:max(12px,var(--ll-fmin,0px));font-weight:400;color:#9ba7b7}
  .is-gv .lw-eps{margin-top:24px}
  .is-gv .lw-eps__head{align-items:center;margin-bottom:10px}
  .is-gv .lw-eps__head small{font-size:max(14px,var(--ll-fmin,0px));color:#a3a3a7}
  .is-gv .lw-rec{margin-top:20px;padding-top:20px}
  .is-gv .lw-rec h2{margin-bottom:14px}
  .is-gv .lw-rec__grid{gap:12px 15px}
  .is-gv .lw-rec__grid .ll-card h3{margin-top:8px;font-size:max(14px,var(--ll-fmin,0px));line-height:max(20px,calc(var(--ll-fmin,0px)*1.25))}
  .is-gv .lw-rec__grid .ll-card__tags{margin-top:7px}
  .is-gv .lw-rec__grid .ll-card__tags span,.is-gv .lw-rec__grid .ll-card__tags a{background:#1a2229}
}
@media (max-width:1023px){
  /* R2 补（h5/短剧播放-06 逐像素实测，232 宽图 ÷ 0.62）：「最新地址」弹层
     分隔线到小标题中心 24、小标题到列表 8；列表描边 #212332、行高 45、域名 13 白；列表到按钮 21、按钮 42 高 */
  .lw-side[data-tab=addr] .lw-side__scroll{padding-top:12px}
  .lw-addr__list{margin-top:8px;border-color:#212332}
  .lw-addr__list li+li{border-color:#212332}
  .lw-addr__list button{min-height:45px}
  .lw-addr__list strong{font-size:13px;color:#fff}
  .lw-addr__all{min-height:42px;height:42px;margin-top:21px}
  /* GV 底部信息条（h5/短剧播放-01 实测，距视口底）：片名中心 108、简介中心 81、进度条 57、底栏 27；
     左右边距 15；简介 13px 可铺到右侧边缘（操作列在其上方，不重叠）。进度条仍保留 44 高触控区，只与底栏上沿重叠 14 */
  .is-gv .lw-bottom{padding-left:15px;padding-right:15px}
  .is-gv .lw-film{max-width:100%;gap:6px;margin-bottom:-6px}
  .is-gv .lw-film span{font-size:13px;line-height:18px}
  .is-gv .lw-progress{margin-bottom:-14px}
}

/* ============ R3（2026-10-21，GV播放组）：web/GV单视频播放-02~05、h5/短剧播放-01 对齐 ============ */
@media (min-width:1024px){
  /* 面包屑 12px（GV-R3-08） */
  .is-gv .lw-crumb{font-size:max(12px,var(--ll-fmin,0px))}
  /* 侧栏标签：未选中偏蓝浅灰 #96A1B2、常规字重；选中「视频」保持白色粗体（GV-R3-09） */
  .is-gv .lw-tabs button{color:#96a1b2;font-weight:400}
  .is-gv .lw-tabs button[aria-selected=true]{color:#f6f7fb;font-weight:800}
  .is-gv .lw-tabs button:hover{color:#f6f7fb}
  /* 「评论 N」数字：小号上标、常规字重、灰色，不随标签加粗（GV-R3-01，按 GV-02 稿） */
  .is-gv .lw-tabs sup{margin-left:4px;font-size:max(10px,var(--ll-fmin,0px));font-weight:400;color:#96a1b2;vertical-align:super;line-height:0}
  /* 题材行 12px（GV-R3-05） */
  .is-gv .lw-ov__genre{font-size:max(12px,var(--ll-fmin,0px));line-height:max(17px,calc(var(--ll-fmin,0px)*1.25))}
  /* 简介正文接近白色（GV-R3-02） */
  .is-gv .lw-desc p{color:#e7e8ee}
  .is-gv .lw-desc.is-clamp .lw-desc__more::before{color:#e7e8ee}

  /* 播放区内元素按播放区宽度等比缩放（Figma 播放区 1470 宽：1cqw = 14.7px），窄屏不再显得过大（GV-R3-04） */
  .is-gv .lw-stage{container-type:inline-size}
  /* 中心播放键 100/1470 */
  .is-gv .lw-center{width:max(48px,6.803cqw);height:max(48px,6.803cqw)}
  .is-gv .lw-center svg{width:max(20px,2.721cqw);height:max(20px,2.721cqw);margin-left:max(2px,.34cqw)}
  /* 底部控制条：左下播放键 58、左右边距 38、底边距 21、间距 20（1920 下数值不变） */
  .is-gv .lw-bottom{gap:max(12px,1.361cqw);padding:30px max(16px,2.585cqw) max(12px,1.429cqw)}
  .is-gv .lw-tool--play{width:max(30px,3.946cqw);height:max(30px,3.946cqw);min-width:max(30px,3.946cqw)}
  .is-gv .lw-tool--play svg{width:max(14px,1.497cqw);height:max(14px,1.497cqw)}
  /* 时间、1X：字形约 17~18px 半粗（GV-R3-06）；音量实心喇叭 + 两道声波（模板图标已改） */
  /* R4（GV-R3-06）：按 GV-02 原图字形实测 ÷0.396 —— 时间约 19px、1X 字形约 21×15（字号 20）、音量/全屏可见字形约 24（svg 框 31）；
     下限降到 10/16，1280~1440 仍按播放区宽度等比缩小，不再停在 13px 下限显得偏大 */
  .is-gv .lw-time span{font-size:max(max(10px,1.293cqw),var(--ll-fmin,0px));font-weight:600;letter-spacing:.5px}
  .is-gv .lw-tool--speed span,.is-gv .lw-tool--speed [data-lw-speed-label]{font-size:max(max(10px,1.361cqw),var(--ll-fmin,0px));font-weight:600}
  .is-gv .lw-tool--vol svg,.is-gv .lw-tool--full svg{width:max(16px,2.109cqw);height:max(16px,2.109cqw)}
  /* R4：Figma 全屏键字形右缘距播放区右约 37、喇叭字形距时间约 32，右内边距 31，喇叭左侧多留 6 */
  .is-gv .lw-bottom{padding-right:max(14px,2.109cqw)}
  .is-gv .lw-tool--vol{margin-left:max(3px,.408cqw)}
  /* R4：音量 / 倍速 / 全屏按钮最小宽 28 也按比例缩（1470 下仍是 28），窄屏不再把右侧控件挤向左边 */
  .is-gv .lw-tool--vol,.is-gv .lw-tool--speed,.is-gv .lw-tool--full{min-width:1.905cqw}
}
@media (max-width:1023px){
  /* 返回键：约 30px 深色半透明圆底 + 细描边，与「反馈」胶囊同一风格（GV-R3-10）；GV 画面上下是黑底，原 .55 纯黑圆底看不见 */
  .is-gv .lw-mtop .lw-ctl::before{width:30px;height:30px;background:rgba(30,34,44,.78);border:1px solid rgba(255,255,255,.08);box-sizing:border-box}
  /* GV 横版画面：画框铺满顶栏到底栏，模糊封面打底，清晰画面完整居中（GV-R3-12）；播放后模糊底仍保留，不露大块黑边 */
  .is-gv .lw-frame{top:0;bottom:0;left:0;right:0;transform:none;width:100%;height:100%;max-width:none;max-height:none;aspect-ratio:auto}
  .is-gv .lw-frame__poster{object-fit:contain}
  .is-gv .lw-stage.is-started .lw-frame__bg{opacity:1}
  /* 右侧竖排操作：每项间距约 76（812 高）、圆底 36、半透明灰（GV-R3-11） */
  .is-gv .lw-actions{gap:clamp(4px,calc((100dvh - 500px)*.05),16px)}
  .is-gv .lw-act{height:clamp(46px,calc(100dvh*.074),60px)}
  .is-gv .lw-act__ic,.is-gv .lw-act.is-like .lw-act__ic,.is-gv .lw-act.is-favorite .lw-act__ic{width:36px;height:36px;background:rgba(38,40,48,.62)}
  .is-gv .lw-act__ic svg{width:21px;height:21px}
}

/* ============ Figma 对齐 R3（2026-10-21，短剧播放组 fix3）：h5/短剧播放-01~05/08/14、web/短剧播放-01/06 逐像素实测 ============ */
/* 加载中（短剧帧，PC/H5 同一组件）：12 根放射短线 #5C8DFF，亮头在右上、顺时针逐渐变淡（不再是同色点块） */
.lw:not(.is-gv) .lw-spin{width:30px;height:30px;border:0;border-radius:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none' stroke='%235c8dff' stroke-width='2.4' stroke-linecap='round'%3E%3Cline x1='15.00' y1='6.00' x2='15.00' y2='1.00' stroke-opacity='0.85'/%3E%3Cline x1='19.50' y1='7.21' x2='22.00' y2='2.88' stroke-opacity='0.925'/%3E%3Cline x1='22.79' y1='10.50' x2='27.12' y2='8.00' stroke-opacity='1.0'/%3E%3Cline x1='24.00' y1='15.00' x2='29.00' y2='15.00' stroke-opacity='0.175'/%3E%3Cline x1='22.79' y1='19.50' x2='27.12' y2='22.00' stroke-opacity='0.25'/%3E%3Cline x1='19.50' y1='22.79' x2='22.00' y2='27.12' stroke-opacity='0.325'/%3E%3Cline x1='15.00' y1='24.00' x2='15.00' y2='29.00' stroke-opacity='0.4'/%3E%3Cline x1='10.50' y1='22.79' x2='8.00' y2='27.12' stroke-opacity='0.475'/%3E%3Cline x1='7.21' y1='19.50' x2='2.88' y2='22.00' stroke-opacity='0.55'/%3E%3Cline x1='6.00' y1='15.00' x2='1.00' y2='15.00' stroke-opacity='0.625'/%3E%3Cline x1='7.21' y1='10.50' x2='2.88' y2='8.00' stroke-opacity='0.7'/%3E%3Cline x1='10.50' y1='7.21' x2='8.00' y2='2.88' stroke-opacity='0.775'/%3E%3C/svg%3E") center/100% 100% no-repeat;-webkit-mask:none;mask:none;animation:lwSpin 1s steps(12) infinite}
@media (min-width:1024px){
  /* SP3-08 侧栏评分星标与数字等高（星形实际约 17px，svg 框 22） */
  .lw:not(.is-gv) .lw-ov__star{width:22px;height:22px}
  /* SP3-13 评论一级条目比标签文字缩进 25px（分隔线仍满宽） */
  .lw:not(.is-gv) .lw-cmts .lw-cmt:not(.lw-cmt--reply){padding-left:25px}
}
@media (max-width:1023px){
  /* SP3-01 简介弹层：标题 → #标签 → 推荐专题，中间不出评分行 */
  .lw:not(.is-gv) .lw-side .lw-ov__score{display:none}
  /* SP3-12 底部弹层（简介 / 评论 / 最新地址）占视频区 87%，上方露出约 100px */
  .lw:not(.is-gv) .lw-side__panel{height:calc((100dvh - var(--header-h)) * .87);max-height:calc(100dvh - var(--header-h) - 44px)}
  /* SP3-02 选集弹层按内容高度，「上一集 / 下一集」完整显示在图标广告行上方 */
  .lw:not(.is-gv) .lw-side[data-tab=eps] .lw-side__panel{height:auto;max-height:calc((100dvh - var(--header-h)) * .87)}
  /* SP3-03 右侧操作栏：圆 34、圆心距右 36；圆底到文字中心约 16；每项间隔 76.6（矮屏按比例收紧）；812 高时「1X」中心距视口底 165、「分享」文字中心到「1X」中心 45 */
  .lw:not(.is-gv) .lw-actions{right:12px;bottom:calc(100dvh * .195 + env(safe-area-inset-bottom));gap:clamp(4px,calc((100dvh - 520px) * .066),19.3px)}
  .lw:not(.is-gv) .lw-act--speed{margin-top:11.3px}
  .lw:not(.is-gv) .lw-act{height:auto;gap:9px}
  /* SP3-04 底部片名 15/500、简介 12 白；距视口底：片名中心 108、简介 81、进度条 57、底栏 27 */
  .lw:not(.is-gv) .lw-bottom{padding-left:15px;padding-right:15px;padding-bottom:calc(5px + env(safe-area-inset-bottom))}
  .lw:not(.is-gv) .lw-film{max-width:100%;min-height:0;gap:5px;margin-bottom:-7px}
  .lw:not(.is-gv) .lw-film strong{font-size:15px;font-weight:500;line-height:22px}
  .lw:not(.is-gv) .lw-film span{font-size:12px;line-height:18px;color:#fff}
  .lw:not(.is-gv) .lw-progress{margin-bottom:-14px}
  /* SP3-05 底栏：「选集」12px 文字距左 39；展开键与全屏键相距 44，全屏键中心距右 25 */
  .lw:not(.is-gv) .lw-stage:not(.is-clear) .lw-tools{gap:0;margin-right:-12px}
  .lw:not(.is-gv) .lw-open-eps{gap:6px;padding:0;font-size:12px}
  /* SP3-09 播放失败：刷新图标约 26px；标题与副文案中心距 19，副文案白色 */
  .lw:not(.is-gv) .lw-status__ic svg{width:36px;height:36px;stroke-width:1}
  .lw:not(.is-gv) .lw-status--error strong{margin-top:6px;line-height:21px}
  .lw:not(.is-gv) .lw-status--error p{margin-top:0;line-height:18px;color:#fff}
  /* SP3-06/07 楼内回复：蓝字「回复 @xx：」前缀；无点赞；头像 22、昵称距左 77；紧贴上层评论，「收起回复」紧跟 */
  .lw-cmt__at{color:#5c8dff}
  .lw-cmt--reply .lw-cmt__like{display:none!important}
  .lw-cmt--reply{grid-template-columns:22px 1fr;gap:7px;margin:0 0 0 -7px;padding:0}
  .lw-cmt--reply .lw-avatar{width:22px;height:22px;font-size:10px}
  .lw-replies{margin-top:0}
  .lw-replies__toggle{display:flex;width:max-content;min-height:32px;margin-top:-8px;position:relative}
  .lw-replies>.lw-cmt--reply:first-child{margin-top:12px}
  /* SP3-11 问题反馈：作品行偏白；表单与底部按钮栏之间有分隔线（错误提示隐藏时也保留） */
  .lw-fb__work{color:#abb9cd}
  .lw-fb__err[hidden]+.lw-fb__foot{border-top:1px solid #2a303d}
}

/* ============ Figma 对齐 R4（2026-10-21，短剧播放组 fix4）：h5/短剧播放-01/04、web/短剧播放-04 逐行像素实测 ============ */
@media (max-width:1023px){
  /* 简介弹层（以 Tab 下划线中心为 0）：标题 +27、#标签 +50、推荐专题 +74、图标广告顶 +98、简介首行 +171；简介行高 16 */
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-side__scroll{padding-top:14px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-ov__genre{margin-top:4px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-topic{margin-top:3px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-topic .lw-chip{padding-top:1px;padding-bottom:1px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-adicons{margin-top:14px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-desc{margin-top:14px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-desc p{line-height:16px}
  /* 底栏：展开键 ^ 近白 #F7F7F7；全屏图标外框约 14×14、线宽约 1.6 */
  .lw:not(.is-gv) .lw-stage:not(.is-clear) .lw-tool[data-lw-open] svg{color:#f7f7f7}
  .lw:not(.is-gv) .lw-stage:not(.is-clear) .lw-tool--full svg{width:19px;height:19px}
}
@media (min-width:1024px){
  /* 评论 Tab：Tab 底线到「热门/最新」胶囊中心 52，胶囊中心到分隔线 30；分隔线到昵称中心 37；正文末行到操作行中心 37；操作行中心到下一条分隔线 31 */
  .lw:not(.is-gv) .lw-sort{padding-top:38px;padding-bottom:15px}
  .lw:not(.is-gv) .lw-cmts .lw-cmt:not(.lw-cmt--reply){padding-top:26px;padding-bottom:22px}
  .lw:not(.is-gv) .lw-cmts .lw-cmt:not(.lw-cmt--reply)>.lw-cmt__body>p{margin-bottom:17px}
}

/* ============ Figma 对齐 R5（2026-10-21，短剧播放组 fix5）：h5/短剧播放-03/04 逐行像素实测 ============ */
@media (max-width:1023px){
  /* 简介弹层：正文行距 17（原图 10/11px）；末行中心到「AI短剧」标签中心 24；标签高约 23；标签底到下方广告横幅顶 12 */
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-desc{margin-top:13.5px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-desc p{line-height:17px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-desc>.lw-chip{margin-top:4px;padding-top:2px;padding-bottom:2px;line-height:18.6px}
  .lw:not(.is-gv) .lw-side[data-tab=intro] .lw-adban .ll-adph-banners{margin-top:12px}
  /* 播放失败刷新图标：开口朝右的 C + 顶端实心三角，图形约 25px、线宽约 1.6；占位仍 36 保持文字位置 */
  .lw:not(.is-gv) .lw-status__ic svg{width:28px;height:28px;margin:4px;stroke-width:1.4}
}

/* ============ B5-U3（2026-10-22，播放组 Web/H5）：按 ~/Desktop/image/dx172-figma-audit/REPORT.md D1-01~10、D2-01~13 逐条对齐 Figma ============
   数值全部取自 Figma 导出 SVG（frames-svg/短剧播放-2、短剧播放-播放失败/正在加载、GV单视频播放-加载中、最新地址、复制作品链接、
   短剧播放-3、全屏清屏、播放器-评论/评论-1/发送失败/简介）的坐标；PC 播放区 1470 宽 = 100cqw。 */

/* 评论头像（D2-06，PC 同样适用）：每个用户色画成「上浅下深」的立体渐变圆（Figma 飞 #F0B982→#8C4730、青 #C6FFE7→#39E19B）。
   用户色由模板 / ll-c-watch.js 写进 --av（同时输出 data-av="#rrggbb"）；头像 20 色色板的逐色渐变端点由用户组（U4）统一定义为
   --av-top / --av-bot（按 [data-av] 匹配），这里只引用，没定义时按用户色自动混出上浅下深。无用户色的默认头像 = Figma「蓝」蓝色渐变。 */
.lw-avatar{background:linear-gradient(180deg,#6fc1ff,#5b8bff)}
.lw-avatar[data-av]{background:linear-gradient(180deg,var(--av-top,color-mix(in srgb,var(--av) 50%,#fff)),var(--av-bot,color-mix(in srgb,var(--av) 80%,#000)))}

/* 加载中图标（D1-08）：Figma 原路径——12 根长短渐变的放射短线（短剧 #5C8DFF、GV #00AFFA），32px，按 12 步旋转 */
.lw-spin,.lw:not(.is-gv) .lw-spin{width:32px;height:32px;border:0;border-radius:0;-webkit-mask:none;mask:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='721.5 651 32 32'%3E%3Cpath fill='%2300AFFA' d='M745.93 679.17C746.28 679.75 746.08 680.52 745.49 680.84C744.90 681.18 744.16 680.98 743.83 680.39C743.47 679.82 743.68 679.07 744.26 678.73C744.86 678.39 745.59 678.6 745.93 679.17V679.17ZM738.74 681.77C738.74 682.44 738.19 683 737.50 683C736.83 683 736.28 682.45 736.28 681.77V680.92C736.28 680.24 736.83 679.69 737.50 679.69C738.18 679.69 738.74 680.24 738.74 680.92V681.77ZM731.20 680.39C730.85 681.00 730.10 681.19 729.52 680.85C728.93 680.51 728.72 679.77 729.07 679.17L729.98 677.58C730.33 677.00 731.08 676.79 731.67 677.13C732.25 677.47 732.46 678.23 732.11 678.80L731.20 680.39H731.20ZM725.35 675.46C724.76 675.79 724.00 675.59 723.68 675.00C723.33 674.43 723.53 673.67 724.11 673.33L726.55 671.91C727.14 671.59 727.90 671.77 728.23 672.36C728.56 672.94 728.36 673.70 727.78 674.04L725.35 675.46ZM722.75 668.24C722.07 668.24 721.53 667.69 721.53 667.02C721.53 666.34 722.07 665.79 722.75 665.79H726.56C727.24 665.79 727.78 666.34 727.78 667.01C727.78 667.69 727.24 668.24 726.56 668.24H722.75ZM724.12 660.69C723.52 660.36 723.33 659.61 723.68 659.02C724.00 658.43 724.76 658.23 725.36 658.57L729.49 660.97C730.07 661.31 730.27 662.05 729.94 662.63C729.60 663.22 728.84 663.41 728.27 663.08L724.12 660.69ZM729.07 654.85L731.95 659.85C732.30 660.43 733.05 660.64 733.63 660.29C734.22 659.96 734.41 659.20 734.07 658.61L731.18 653.62C730.85 653.05 730.10 652.84 729.52 653.18C728.93 653.52 728.74 654.27 729.07 654.85ZM736.28 652.26C736.28 651.60 736.84 651.03 737.50 651.03C738.18 651.03 738.74 651.59 738.74 652.26V658.02C738.74 658.70 738.19 659.25 737.50 659.26C736.83 659.26 736.28 658.72 736.28 658.02V652.26ZM743.81 653.62C744.16 653.03 744.90 652.84 745.49 653.17C746.08 653.50 746.29 654.25 745.94 654.85L743.06 659.85C742.73 660.43 741.97 660.64 741.38 660.30C740.80 659.96 740.60 659.20 740.94 658.61L743.81 653.62ZM749.68 658.57L744.67 661.46C744.09 661.79 743.89 662.54 744.22 663.13C744.57 663.71 745.32 663.90 745.90 663.58L750.91 660.69C751.48 660.36 751.69 659.61 751.34 659.03C751.01 658.43 750.25 658.22 749.68 658.57ZM752.25 665.79C752.94 665.79 753.48 666.34 753.47 667.02C753.47 667.69 752.94 668.24 752.25 668.24H746.49C745.82 668.24 745.26 667.69 745.26 667.01C745.26 666.34 745.82 665.79 746.49 665.79H752.25Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;animation:lwSpin 1s steps(12) infinite}
.lw:not(.is-gv) .lw-spin{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='721.5 651 32 32'%3E%3Cpath fill='%235C8DFF' d='M745.93 679.17C746.28 679.75 746.08 680.52 745.49 680.84C744.90 681.18 744.16 680.98 743.83 680.39C743.47 679.82 743.68 679.07 744.26 678.73C744.86 678.39 745.59 678.6 745.93 679.17V679.17ZM738.74 681.77C738.74 682.44 738.19 683 737.50 683C736.83 683 736.28 682.45 736.28 681.77V680.92C736.28 680.24 736.83 679.69 737.50 679.69C738.18 679.69 738.74 680.24 738.74 680.92V681.77ZM731.20 680.39C730.85 681.00 730.10 681.19 729.52 680.85C728.93 680.51 728.72 679.77 729.07 679.17L729.98 677.58C730.33 677.00 731.08 676.79 731.67 677.13C732.25 677.47 732.46 678.23 732.11 678.80L731.20 680.39H731.20ZM725.35 675.46C724.76 675.79 724.00 675.59 723.68 675.00C723.33 674.43 723.53 673.67 724.11 673.33L726.55 671.91C727.14 671.59 727.90 671.77 728.23 672.36C728.56 672.94 728.36 673.70 727.78 674.04L725.35 675.46ZM722.75 668.24C722.07 668.24 721.53 667.69 721.53 667.02C721.53 666.34 722.07 665.79 722.75 665.79H726.56C727.24 665.79 727.78 666.34 727.78 667.01C727.78 667.69 727.24 668.24 726.56 668.24H722.75ZM724.12 660.69C723.52 660.36 723.33 659.61 723.68 659.02C724.00 658.43 724.76 658.23 725.36 658.57L729.49 660.97C730.07 661.31 730.27 662.05 729.94 662.63C729.60 663.22 728.84 663.41 728.27 663.08L724.12 660.69ZM729.07 654.85L731.95 659.85C732.30 660.43 733.05 660.64 733.63 660.29C734.22 659.96 734.41 659.20 734.07 658.61L731.18 653.62C730.85 653.05 730.10 652.84 729.52 653.18C728.93 653.52 728.74 654.27 729.07 654.85ZM736.28 652.26C736.28 651.60 736.84 651.03 737.50 651.03C738.18 651.03 738.74 651.59 738.74 652.26V658.02C738.74 658.70 738.19 659.25 737.50 659.26C736.83 659.26 736.28 658.72 736.28 658.02V652.26ZM743.81 653.62C744.16 653.03 744.90 652.84 745.49 653.17C746.08 653.50 746.29 654.25 745.94 654.85L743.06 659.85C742.73 660.43 741.97 660.64 741.38 660.30C740.80 659.96 740.60 659.20 740.94 658.61L743.81 653.62ZM749.68 658.57L744.67 661.46C744.09 661.79 743.89 662.54 744.22 663.13C744.57 663.71 745.32 663.90 745.90 663.58L750.91 660.69C751.48 660.36 751.69 659.61 751.34 659.03C751.01 658.43 750.25 658.22 749.68 658.57ZM752.25 665.79C752.94 665.79 753.48 666.34 753.47 667.02C753.47 667.69 752.94 668.24 752.25 668.24H746.49C745.82 668.24 745.26 667.69 745.26 667.01C745.26 666.34 745.82 665.79 746.49 665.79H752.25Z'/%3E%3C/svg%3E")}

/* 侧栏 / 简介 / 选集的方形广告占位（D1-09）：Figma 白底圆角 App 图标原图（images/ll/ad-app-icon.webp）+ 右上「广告」角标 + 下方「蓝果剧场」 */
.lw-adicon__img.ll-adph{border:0;border-radius:0;background:transparent;overflow:visible}
.lw-adicon__img.ll-adph>img{display:block;width:100%;height:100%;object-fit:contain}
.lw-adicon__img.ll-adph .ll-ad__tag{top:4px;right:4px;left:auto;display:grid;place-items:center;width:33px;height:19px;padding:0;border-radius:6px;background:rgba(9,10,38,.8);color:#f4f4f7;font-size:max(11px,var(--ll-fmin,0px));font-weight:400;line-height:1}

@media (min-width:1024px){
  /* D1-01 底部控制条：短剧沿用 GV 已对齐的同一套（Figma 两组控制条一致）——时间约 19px/600、1X 20px/600、音量/全屏 31px 框、播放键 58，
     按播放区宽度等比缩放；进度条轨道 5px（Figma stroke 5.06）、圆点 18（r=9） */
  .lw-stage{container-type:inline-size}
  .lw-bottom{gap:max(12px,1.361cqw);padding:30px max(14px,2.109cqw) max(12px,1.429cqw) max(16px,2.585cqw)}
  .lw-tool--play{width:max(30px,3.946cqw);height:max(30px,3.946cqw);min-width:max(30px,3.946cqw)}
  .lw-tool--play svg{width:max(14px,1.497cqw);height:max(14px,1.497cqw)}
  .lw-time span{font-size:max(max(10px,1.293cqw),var(--ll-fmin,0px));font-weight:600;letter-spacing:.5px}
  .lw-tool--speed span,.lw-tool--speed [data-lw-speed-label]{font-size:max(max(10px,1.361cqw),var(--ll-fmin,0px));font-weight:600}
  .lw-tool--vol svg,.lw-tool--full svg{width:max(16px,2.109cqw);height:max(16px,2.109cqw)}
  .lw-tool--vol{margin-left:max(3px,.408cqw)}
  .lw-tool--vol,.lw-tool--speed,.lw-tool--full{min-width:1.905cqw}
  /* 短剧控制条比 GV 高 12：Figma 短剧播放键中心距视口底 62（GV 为 50），底内边距 33 = 2.245cqw */
  .lw:not(.is-gv) .lw-bottom{padding-bottom:max(12px,2.245cqw)}
  .lw-progress input::-webkit-slider-runnable-track{height:5px;border-radius:3px}
  .lw-progress input::-moz-range-track{height:5px;border-radius:3px}
  .lw-progress input::-webkit-slider-thumb{width:18px;height:18px;margin-top:-6.5px}
  .lw-progress input::-moz-range-thumb{width:18px;height:18px}

  /* D1-02 短剧画面框：Figma 547×972，顶贴播放区、底部留 69（=6.63% 播放区高）给控制条；水平中心在播放区中线右侧 34（2.313cqw）。
     中心播放键、加载/失败遮罩都以画面框为中心；D1-10 遮罩只压画面框、40% 黑 */
  .lw:not(.is-gv) .lw-frame{top:0;bottom:6.63%;height:auto;left:calc(50% + 2.313cqw)}
  .lw:not(.is-gv) .lw-center{left:calc(50% + 2.313cqw);top:46.69%}
  .lw:not(.is-gv) .lw-status,.lw:not(.is-gv) .lw-status--loading{inset:auto;top:0;bottom:6.63%;left:calc(50% + 2.313cqw);transform:translateX(-50%);aspect-ratio:9/16;max-width:62%;background:rgba(0,0,0,.4)}

  /* D1-03 短剧右侧竖排操作：48 圆（黑 30%）右缘距播放区右 24、圆心间距 92，最后一项文字底距播放区底 158；文字 14px，紧贴圆底 4 */
  .lw:not(.is-gv) .lw-actions{top:auto;bottom:158px;right:20px;gap:22px;transform:none}
  .lw:not(.is-gv) .lw-act{gap:4px}
  .lw:not(.is-gv) .lw-act__ic{background:rgba(0,0,0,.3)}
  .lw:not(.is-gv) .lw-act em{font-size:max(14px,var(--ll-fmin,0px));line-height:18px}


  /* D1-05 最新地址：列表 #5C8DFF 8% 底 + 5% 白描边、圆角 12、行高 58、行间 10% 白分隔；线路名 13 #9BAFC4、域名白 600；「查看全部入口」15px */
  .lw-addr__list{border:1px solid rgba(255,255,255,.05);border-radius:12px;background:rgba(92,141,255,.08)}
  .lw-addr__list li+li{border-top:1px solid rgba(255,255,255,.1)}
  .lw-addr__list button{min-height:58px;color:#9bafc4;font-size:max(13px,var(--ll-fmin,0px))}
  .lw-addr__list strong{font-weight:600;color:#fff}
  .lw-addr__all{font-size:max(15px,var(--ll-fmin,0px));color:#f1f2f7}

  /* D1-06 分享弹窗：400×192、#191925 底 + 10% 白描边、圆角 16、内边距 24；标题 18；关闭为 10px 细线 ×（白）；
     链接框 352×40 #242832 全圆角、1px #242D39；「复制链接」91×36 13px；遮罩不透明 #060911 */
  .ll-overlay.lw-share{background:#060911;-webkit-backdrop-filter:none;backdrop-filter:none}
  .lw-share .ll-dialog{width:400px;padding:24px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#191925;box-shadow:none}
  .lw-share .ll-dialog h2{margin:0;font-size:max(18px,var(--ll-fmin,0px));font-weight:600;line-height:28px;color:#e8edf4}
  .lw-share .ll-dialog__close{top:22px;right:13px;display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:8px;color:#fff}
  .lw-share .ll-dialog__close svg{width:20px;height:20px;stroke-width:1.8}
  .lw-share__input{height:40px;margin-top:20px;padding:0 10px;border:1px solid #242d39;border-radius:20px;background:#242832;color:#e8edf4;font-size:max(13px,var(--ll-fmin,0px))}
  .lw-share .ll-dialog__actions{margin-top:20px}
  .lw-share [data-lw-share-copy]{min-width:91px;height:36px;padding:0 16px;font-size:max(13px,var(--ll-fmin,0px))}

  /* D1-07 评论区字号（web/短剧播放-评论与回复 / 回复输入 / 已有回复）：昵称 16 粗、正文 14、时间 / 回复 14；
     楼内回复昵称 16、时间 12；回复提示条标题 16 粗、原文 14 白；输入 14；「发送」60×44、16px */
  .lw-cmt__who strong,.lw-cmt--reply .lw-cmt__who strong{font-size:max(16px,var(--ll-fmin,0px));font-weight:700;color:#fff}
  .lw-cmt p{font-size:max(14px,var(--ll-fmin,0px));line-height:22px}
  .lw-cmt__meta small,.lw-cmt__meta button{font-size:max(14px,var(--ll-fmin,0px))}
  .lw-cmt--reply .lw-cmt__meta small{font-size:max(12px,var(--ll-fmin,0px))}
  .lw-compose__ctx b{font-size:max(16px,var(--ll-fmin,0px));font-weight:700}
  .lw-compose__ctx p{font-size:max(14px,var(--ll-fmin,0px));color:#fff}
  .lw-compose__ctx button{font-size:max(14px,var(--ll-fmin,0px))}
  .lw-compose textarea{font-size:max(14px,var(--ll-fmin,0px))}
  .lw-compose__row>button{min-width:60px;height:44px;padding:0 14px;font-size:max(16px,var(--ll-fmin,0px));font-weight:600}
}

@media (max-width:1023px){
  /* D2-01/02 右侧操作栏（h5/短剧播放-3）：圆 36（黑 60%）、圆心间距 77；标签 13px 紧贴圆底 4；第 5 项「1X」同样是 36 圆底、14px，
     「1X」圆心距视口底约 169（Figma 视口 774 高时） */
  .lw:not(.is-gv) .lw-actions{right:12px;bottom:calc(100dvh * .195 + env(safe-area-inset-bottom));gap:clamp(4px,calc((100dvh - 520px) * .083),21px)}
  .lw:not(.is-gv) .lw-act{gap:4px}
  .lw:not(.is-gv) .lw-act__ic,.lw:not(.is-gv) .lw-act.is-like .lw-act__ic,.lw:not(.is-gv) .lw-act.is-favorite .lw-act__ic{width:36px;height:36px;background:rgba(0,0,0,.6)}
  .lw:not(.is-gv) .lw-act em{font-size:13px;line-height:16px;font-weight:500}
  .lw:not(.is-gv) .lw-act--speed{width:36px;height:36px;min-height:0;margin-top:0;border-radius:50%;background:rgba(0,0,0,.6)}
  .lw:not(.is-gv) .lw-act--speed em{font-size:14px;line-height:1;font-weight:500}
  /* D2-03 左上返回 30 圆 / 右上「反馈」57×30 胶囊：黑 60%、无描边，字 13px */
  .lw-mtop .lw-ctl::before{background:rgba(0,0,0,.6)}
  .lw:not(.is-gv) .lw-feedback-entry{font-size:13px;font-weight:500}
  .lw:not(.is-gv) .lw-feedback-entry span{height:30px;padding:0 15px;border:0;border-radius:15px;background:rgba(0,0,0,.6)}
  /* D2-04 底栏「选集」图标：Figma 原图标（三横线 + 左上实心三角）13px，左缘距屏 18；当前集数字常规字重 */
  .lw-open-eps svg{width:14px;height:14px;margin-left:3px}
  .lw:not(.is-gv) .lw-open-eps{gap:7px}
  .lw-open-eps b{font-weight:400}
  /* D2-05 清屏底栏「1X / ^ / 全屏」紧凑排列：中心约 x280 / 311 / 350（375 宽） */
  .lw:not(.is-gv) .lw-stage.is-clear .lw-tools{gap:0;margin-right:-12px}
  .lw:not(.is-gv) .lw-stage.is-clear .lw-tool--speed,.lw:not(.is-gv) .lw-stage.is-clear .lw-tools .lw-hide-clear{width:32px;min-width:32px}
  .lw:not(.is-gv) .lw-stage.is-clear .lw-tool--full{width:44px;min-width:44px}
  .lw:not(.is-gv) .lw-stage.is-clear .lw-tool[data-lw-open] svg{color:#fff}
  /* D2-07 字数计数：已输入数字 #5C8DFF、「/300」#7D9CB9，约 10px */
  .lw-compose__field small{font-size:10px;color:#7d9cb9}
  .lw-compose__field small b{color:#5c8dff}
  /* D2-08 回复提示条「取消回复」12px 蓝，右侧留 25 */
  .lw-compose__ctx{padding-right:25px}
  .lw-compose__ctx button{font-size:12px;color:#5c8dff}
  /* D2-09 评论 / 简介 / 最新地址弹层高度 = 视频区 85%（Figma 570/671），空态插图随之下移到设计位置 */
  .lw:not(.is-gv) .lw-side__panel{height:calc((100dvh - var(--header-h)) * .85)}
  /* D2-10 底部按钮文字 14px 半粗：反馈「取消 / 提交反馈」、最新地址「查看全部入口」 */
  .lw-fb__foot button,.lw-addr__all{font-size:14px;font-weight:600}
  /* D2-11 补充说明框：1px #2F3542 描边 + 右下拖拽角标，底 #252932 */
  .lw-fb__note textarea{border:1px solid #2f3542;background:#252932;resize:vertical}
  /* D2-12 简介 · 相关推荐卡片：无底卡，封面圆角 8，片名 14 白，标签灰底灰字 */
  .lw-rec__grid{gap:16px 10px}
  .lw-rec__grid .ll-card{padding-bottom:0;background:none;border:0;border-radius:0;overflow:visible}
  .lw-rec__grid .ll-card__art{border-radius:8px}
  .lw-rec__grid .ll-card h3,.lw-rec__grid .ll-card__tags{padding:0}
  .lw-rec__grid .ll-card h3{font-size:14px;font-weight:500;color:#fff}
  .lw-rec__grid .ll-card__tags span,.lw-rec__grid .ll-card__tags a{background:#2a2d38;color:#8f93a0}
  /* D2-13 竖版海报满屏铺满（横版封面也裁成满屏，不再上下留模糊黑边） */
  .lw:not(.is-gv) .lw-frame__poster{object-fit:cover}
  /* 方形广告占位角标（H5 图标 34~48px）：按比例缩小 */
  .lw-adicon__img.ll-adph .ll-ad__tag{top:1px;right:1px;width:16px;height:10px;border-radius:3px;font-size:7px}
}

.lw-u4bar,.lw-u4info{display:none}
/* ============ U4 内核（夸克 / UC）兜底（html.is-u4，仅 H5）：
   U4 把 <video> 接管成系统层播放器，盖在视频矩形上的元素点不到。改为非沉浸：舞台按比例缩小并回到文档流，
   切集条 .lw-u4bar（选集 | 上一集 | 第N集 | 下一集）放在视频下方普通流里，选集列表在条内折叠展开；
   条下 .lw-u4info 补标题 / 简介 / 互动栏。夸克右下角固定悬浮球（约 72px 宽贴右边）会压住右端，故条与列表右侧统一留 88px。
   评论/简介弹层与分享框限高/贴底，保证在视频矩形之外可见可点。 ============ */
@media (max-width:1023px){
  html.is-u4:has(.lw){overflow:auto;height:auto}
  html.is-u4 .ll-watch-body{overflow:auto;height:auto;background:#0f0f18}
  html.is-u4 .lw-stage{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:100%;height:min(70vh,133.33vw)}
  html.is-u4 .is-gv .lw-stage{height:56.25vw}
  html.is-u4 .lw-stage .lw-actions,html.is-u4 .lw-bottom,html.is-u4 .lw-film,html.is-u4 .lw-pause-ad,html.is-u4 .lw-lite{display:none!important}
  html.is-u4 .lw-u4bar{display:block;padding:12px max(88px,env(safe-area-inset-right)) 12px var(--gutter,13px);background:#151521;color:#e6e8ee}
  .lw-u4bar__row{display:flex;align-items:center;gap:8px}
  .lw-u4bar__cur{flex:1;min-width:0;text-align:center;font-size:12px;color:#c6c8ce;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lw-u4bar__cur b{font-weight:700;color:#fff}
  .lw-u4bar__btn{flex:none;padding-inline:11px;background:#263051;border-color:#3a4a80;color:#dbe4ff}
  .lw-u4bar__btn--eps{background:#5c8dff;border-color:#5c8dff;color:#fff}
  .lw-u4bar__btn:disabled{opacity:.4;cursor:not-allowed}
  .lw-u4bar__list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;max-height:40vh;overflow-y:auto}
  .lw-u4bar__list[hidden]{display:none}
  .lw-u4bar__list a{display:grid;place-items:center;height:42px;border:1px solid transparent;border-radius:6px;background:#2e303c;color:#c6c8ce;font-size:12px;text-decoration:none}
  .lw-u4bar__list a.is-active{background:#263051;border-color:#5c8dff;color:#5c8dff}
  /* 条下信息区 */
  html.is-u4 .lw-u4info{display:block;padding:12px max(88px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) var(--gutter,13px);background:#0f0f18;color:#e6e8ee}
  .lw-u4info__title{margin:0;font-size:16px;font-weight:600;line-height:1.4;color:#fff;overflow-wrap:anywhere}
  .lw-u4info__desc{margin:12px 0 0;font-size:13px;line-height:1.55;color:#9aa0ad;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
  .lw-u4info__desc.is-open{display:block;-webkit-line-clamp:unset}
  .lw-u4info__acts{margin-top:12px}
  .lw-u4acts{display:flex;flex-wrap:wrap;gap:8px}
  .lw-u4act{display:inline-flex;align-items:center;justify-content:center;gap:5px;box-sizing:border-box;min-height:32px;padding:0 11px;border:1px solid #3a4a80;border-radius:999px;background:#263051;color:#dbe4ff;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;font-family:inherit}
  .lw-u4act em{font-style:normal}
  .lw-u4act__ic{display:grid;place-items:center}
  .lw-u4act__ic svg{width:16px;height:16px;fill:currentColor}
  .lw-u4act .lw-ic-on{display:none}
  .lw-u4act .lw-ic-off svg{fill:none}
  .lw-u4act[aria-pressed=true] .lw-ic-on{display:block}.lw-u4act[aria-pressed=true] .lw-ic-off{display:none}
  .lw-u4act.is-like[aria-pressed=true]{color:#ff6b6c;border-color:#ff6b6c}
  .lw-u4act.is-favorite[aria-pressed=true]{color:#ffd900;border-color:#ffd900}
  /* 弹层限高：不盖视频矩形（--u4-sheet-h 由 ll-c-player.js 在弹层打开时按视频底边量出） */
  html.is-u4 .lw-side__panel{height:var(--u4-sheet-h,40dvh)!important;max-height:var(--u4-sheet-h,40dvh)!important}
  html.is-u4 .lw-side__mask{background:rgba(0,0,0,.35)}
  html.is-u4 .ll-overlay.lw-share{align-items:flex-end;padding:0 0 env(safe-area-inset-bottom)}
  html.is-u4 .lw-share .ll-dialog{width:100%;max-width:100%;border-radius:14px 14px 0 0;padding-right:max(22px,88px)}
}
