/* ============ 新增功能样式：相关推荐 / 榜单 / 广告位 / 护眼模式 ============ */
.related-movies-block { margin: 22px 0 8px; }
.related-movies-block .block-title { font-size: 18px; font-weight: 700; margin: 0 0 12px; color: var(--text, #e7e7ee); }
.related-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 12px; }
.related-card { text-decoration: none; color: inherit; }
.related-poster { aspect-ratio: 2/3; border-radius: 10px; overflow: hidden; background: #1c1c28; box-shadow: 0 2px 10px rgba(0,0,0,.25); }
.related-poster img { width: 100%; height: 100%; object-fit: cover; display: block; }
.related-name { font-size: 12px; margin-top: 6px; line-height: 1.3; color: var(--text,#e7e7ee); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.rank-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px 14px; }
.rank-item { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 8px; text-decoration: none; color: var(--text,#e7e7ee); background: rgba(255,255,255,.03); }
.rank-item:hover { background: rgba(255,255,255,.07); }
.rank-no { width: 22px; height: 22px; flex: 0 0 22px; border-radius: 6px; display: grid; place-items: center; font-size: 12px; font-weight: 700; background: #2a2a3a; color: #9aa0b4; }
.rank-no-1 { background: #e11d48; color: #fff; }
.rank-no-2 { background: #f59e0b; color: #1a1a2e; }
.rank-no-3 { background: #6366f1; color: #fff; }
.rank-name { flex: 1; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rank-type { font-size: 11px; color: #9aa0b4; }

.ad-slot { margin: 14px 0; text-align: center; }
.ad-slot ins, .ad-slot iframe, .ad-slot img { max-width: 100%; }

/* 护眼模式：降低亮度/蓝光 */
body.eye-care { filter: sepia(.18) brightness(.92) contrast(.98); }

@media (max-width: 600px) {
  .rank-grid { grid-template-columns: 1fr 1fr; }
  .related-grid { grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); }
}

/* ============ 弹幕 ============ */
.danmaku-layer { position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:5; }
.danmaku-item { position:absolute; left:100%; white-space:nowrap; font-size:14px; font-weight:600; text-shadow:0 1px 2px rgba(0,0,0,.85); will-change:transform; }
.danmaku-bar { position:absolute; left:0; right:0; bottom:8px; display:flex; gap:8px; padding:6px 10px; z-index:6; background:linear-gradient(180deg, transparent, rgba(0,0,0,.55)); }
.danmaku-toggle, .danmaku-send { flex:0 0 auto; border:none; border-radius:6px; padding:6px 10px; background:rgba(255,255,255,.15); color:#fff; cursor:pointer; font-size:13px; }
.danmaku-toggle.active { background:#e11d48; }
.danmaku-input { flex:1; min-width:0; border:none; border-radius:6px; padding:6px 10px; background:rgba(255,255,255,.9); color:#111; font-size:13px; }
.danmaku-input:focus { outline:none; }

/* ============ AI 找片弹窗 ============ */
.ai-search-modal { max-width:680px; }
.ai-search-bar { display:flex; gap:10px; margin:14px 0 8px; }
.ai-search-input { flex:1; padding:10px 12px; border-radius:8px; border:1px solid var(--border,#333); background:rgba(255,255,255,.06); color:var(--text,#e7e7ee); }
.ai-search-input:focus { outline:none; border-color:#6366f1; }
.ai-search-status, .ai-search-count { font-size:13px; color:#9aa0b4; margin:6px 0; }
.ai-search-results .ai-search-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:12px; margin-top:10px; }
.ai-search-empty { padding:20px; text-align:center; color:#9aa0b4; }

/* ============ PWA 安装横幅 ============ */
.pwa-install-banner { position:fixed; left:12px; right:12px; bottom:64px; z-index:999; display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:12px; background:rgba(20,20,32,.96); box-shadow:0 6px 24px rgba(0,0,0,.4); border:1px solid rgba(255,255,255,.08); }
.pwa-install-icon { font-size:22px; }
.pwa-install-text { flex:1; display:flex; flex-direction:column; line-height:1.3; }
.pwa-install-text strong { font-size:14px; }
.pwa-install-text span { font-size:12px; color:#9aa0b4; }
.pwa-install-btn { border:none; border-radius:8px; padding:8px 14px; background:#6366f1; color:#fff; font-weight:600; cursor:pointer; }
.pwa-install-close { border:none; background:transparent; color:#9aa0b4; font-size:16px; cursor:pointer; }

/* ============ 大家都在搜 ============ */
.hot-search-list { display:flex; flex-wrap:wrap; gap:8px; }
.hot-search-chip { display:inline-flex; align-items:center; gap:5px; padding:4px 10px; border-radius:20px; background:rgba(255,255,255,.05); color:var(--text,#e7e7ee); text-decoration:none; font-size:12px; border:1px solid rgba(255,255,255,.06); }
.hot-search-chip:hover { background:rgba(99,102,241,.18); border-color:#6366f1; }
.hot-search-count { font-size:10px; color:#9aa0b4; }

/* ============ 播放暂停位广告 ============ */
.ad-player-pause { position:absolute; inset:0; z-index:7; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.35); }
.ad-player-pause:empty { display:none; }

/* 播放容器需为定位上下文，弹幕层/暂停广告才能正确叠加 */
.player-container, .player-video-wrap, .tv-player-frame { position: relative; }

/* ============ 热搜榜落地页 ============ */
.hot-page { max-width: 1100px; margin: 0 auto; padding: 18px 14px 34px; }
.hot-title { font-size: 24px; margin: 6px 0 4px; }
.hot-sub { color: #9aa0b4; margin-bottom: 16px; font-size: 13px; }
.hot-cloud { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 26px; }
.hot-cloud-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 20px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.07); color: var(--text,#e7e7ee); text-decoration: none; font-size: 13px; }
.hot-cloud-chip:hover { border-color: #6366f1; }
.hot-cloud-chip-top { background: rgba(225,29,72,.16); border-color: #e11d48; color: #ffb4c4; font-weight: 600; }
.hot-rank-badge { font-size: 12px; }
.hot-count { font-size: 11px; color: #9aa0b4; }
.hot-rank-section { margin-bottom: 26px; }
.hot-rank-list { list-style: none; margin: 0; padding: 0; }
.hot-rank-item { display: flex; align-items: center; gap: 12px; padding: 9px 10px; border-bottom: 1px solid rgba(255,255,255,.05); }
.hot-rank-no { width: 26px; height: 26px; flex: 0 0 auto; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-weight: 700; background: rgba(255,255,255,.06); color: #9aa0b4; font-size: 13px; }
.hot-rank-no-1 { background: #e11d48; color: #fff; }
.hot-rank-no-2 { background: #f97316; color: #fff; }
.hot-rank-no-3 { background: #f59e0b; color: #111; }
.hot-rank-link { display: flex; justify-content: space-between; align-items: center; flex: 1; color: var(--text,#e7e7ee); text-decoration: none; }
.hot-rank-link:hover .hot-rank-q { color: #818cf8; }
.hot-rank-c { font-size: 12px; color: #9aa0b4; }
.hot-term-section { margin-bottom: 28px; }
.hot-search-more { display: block; margin-top: 8px; font-size: 12px; color: #818cf8; text-decoration: none; }
.hot-search-more:hover { text-decoration: underline; }
