/* 乐享影视网页版 · 样式（float 布局，兼容老内核 IE8/iOS4/安卓2.3） */
body { margin:0; padding:0; font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif; background:#f6f8fb; color:#1f2937; padding-bottom:64px; }
a { color:#2563eb; text-decoration:none; }
.clear { clear:both; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }

/* ---------- 顶部标题栏 ---------- */
.topbar { background:#fff; border-bottom:1px solid #e5e7eb; position:fixed; left:0; top:0; width:100%; z-index:100; }
.tb-inner { max-width:720px; margin:0 auto; padding:0 12px; height:52px; }
.logo { float:left; line-height:52px; font-size:18px; font-weight:bold; color:#1f2937; }
.logo i { display:inline-block; width:28px; height:28px; line-height:28px; margin-right:6px; text-align:center; font-style:normal; font-size:15px; color:#fff; background:#e11d48; border-radius:6px; vertical-align:middle; }
.tb-btn { float:right; margin:9px 0 0 8px; height:34px; padding:0 14px; border:1px solid #e5e7eb; border-radius:8px; background:#fff; color:#374151; font-size:14px; cursor:pointer; }
.tb-btn:hover { border-color:#e11d48; color:#e11d48; }

/* ---------- 搜索面板 ---------- */
.searchbox { display:none; background:#fff; border-bottom:1px solid #e5e7eb; padding:10px 12px; }
.searchbox.on { display:block; }
.sb-inner { max-width:720px; margin:0 auto; }
.sb-inner input { width:60%; padding:10px 12px; border:1px solid #d1d5db; border-radius:8px; font-size:15px; box-sizing:border-box; }
.sb-go { padding:10px 16px; border:none; border-radius:8px; background:#e11d48; color:#fff; font-size:15px; cursor:pointer; }
.sb-close { padding:10px 12px; border:1px solid #e5e7eb; border-radius:8px; background:#fff; color:#6b7280; font-size:14px; cursor:pointer; }

/* ---------- 容器 ---------- */
.container { max-width:720px; margin:0 auto; padding:64px 12px 12px; }
.container h1 { font-size:19px; margin:14px 0 8px; }
.sub { font-size:13px; color:#6b7280; margin:0 0 12px; }

/* ---------- 分类标签行（药丸） ---------- */
.cat-row { margin:6px 0 12px; }
.cat { display:inline-block; margin:4px 6px 4px 0; padding:6px 15px; border:1px solid #e5e7eb; border-radius:16px; background:#fff; font-size:13px; color:#374151; cursor:pointer; }
.cat.on { background:#ffe4e6; color:#e11d48; border-color:#e11d48; font-weight:bold; }

/* ---------- 影片网格（float） ---------- */
.grid { margin:0 -5px; }
.cell { float:left; width:50%; box-sizing:border-box; padding:5px; }
@media (min-width:520px) { .cell { width:33.33%; } }
.card { display:block; background:#fff; border:1px solid #e5e7eb; border-radius:10px; overflow:hidden; cursor:pointer; }
.card:hover { border-color:#e11d48; }
.poster { display:block; width:100%; height:180px; background:#eef2f7 center center no-repeat; background-size:cover; }
@media (max-width:380px) { .poster { height:150px; } }
.card .meta { padding:8px 10px; }
.card .ttl { display:block; font-size:14px; color:#1f2937; font-weight:bold; overflow:hidden; height:20px; white-space:nowrap; text-overflow:ellipsis; }
.card .rem { display:block; font-size:12px; color:#9ca3af; margin-top:3px; overflow:hidden; height:16px; white-space:nowrap; text-overflow:ellipsis; }

/* ---------- 列表项（横向：图 + 信息） ---------- */
.row { background:#fff; border:1px solid #e5e7eb; border-radius:10px; padding:10px; margin-bottom:10px; cursor:pointer; }
.row:hover { border-color:#e11d48; }
.row .thumb { float:left; width:90px; height:126px; background:#eef2f7 center center no-repeat; background-size:cover; border-radius:8px; }
.row .info { margin-left:102px; }
.row .info h3 { font-size:15px; margin:0 0 4px; color:#1f2937; }
.row .info .ln { font-size:12px; color:#6b7280; margin:0 0 4px; line-height:1.6; }
.row .info .ln b { color:#374151; font-weight:normal; }
.row .clear { clear:both; }

/* ---------- 简单列表（央视栏目 / 功能入口） ---------- */
.menu-item { display:block; background:#fff; border:1px solid #e5e7eb; border-radius:10px; padding:14px 16px; margin-bottom:8px; font-size:15px; color:#1f2937; cursor:pointer; }
.menu-item:hover { border-color:#e11d48; color:#e11d48; }
.menu-item .ar { float:right; color:#9ca3af; }
.menu-item .dsc { display:block; font-size:12px; color:#9ca3af; margin-top:3px; }

/* ---------- 分页 ---------- */
.pager { text-align:center; padding:14px 0; }
.pager button { padding:9px 20px; margin:0 6px; border:1px solid #d1d5db; border-radius:8px; background:#fff; color:#374151; font-size:14px; cursor:pointer; }
.pager button:disabled { color:#cbd5e1; }
.pager .pi { font-size:13px; color:#6b7280; margin:0 8px; }

/* ---------- 加载 / 空 ---------- */
.loading { color:#6b7280; font-size:14px; padding:22px 0; text-align:center; }

/* ---------- 详情页 ---------- */
.detail-head { background:#fff; border:1px solid #e5e7eb; border-radius:10px; padding:12px; }
.detail-head .dp { float:left; width:110px; height:154px; background:#eef2f7 center center no-repeat; background-size:cover; border-radius:8px; }
.detail-head .dd { margin-left:122px; }
.detail-head .dd h1 { font-size:17px; margin:0 0 6px; }
.detail-head .dd .ln { font-size:12px; color:#6b7280; line-height:1.7; margin:0; }
.detail-head .dd .ln b { color:#374151; font-weight:normal; }
.acts { margin:12px 0; }
.acts button { padding:10px 16px; margin:0 8px 8px 0; border:none; border-radius:8px; background:#e11d48; color:#fff; font-size:14px; cursor:pointer; }
.acts button.ghost { background:#fff; color:#374151; border:1px solid #d1d5db; }
.ep-title { font-size:15px; font-weight:bold; margin:16px 0 8px; }
.eps { margin:0 -4px; }
.eps .ep { float:left; width:25%; box-sizing:border-box; padding:4px; }
@media (min-width:520px) { .eps .ep { width:16.66%; } }
.eps .ep button { width:100%; padding:9px 4px; border:1px solid #e5e7eb; border-radius:8px; background:#fff; color:#374151; font-size:13px; cursor:pointer; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.eps .ep button.cur { background:#e11d48; color:#fff; border-color:#e11d48; }

/* ---------- 源切换 ---------- */
.src-row { margin:8px 0 14px; }
.src { display:inline-block; margin:4px 6px 4px 0; padding:7px 14px; border:1px solid #e5e7eb; border-radius:16px; background:#fff; font-size:13px; color:#374151; cursor:pointer; }
.src.on { background:#e11d48; color:#fff; border-color:#e11d48; }

/* ---------- 播放页 ---------- */
.player-wrap { background:#000; }
.player-wrap video { width:100%; display:block; background:#000; }
.play-acts { padding:12px; }
.play-acts button { padding:9px 15px; margin:0 8px 8px 0; border:1px solid #d1d5db; border-radius:8px; background:#fff; color:#374151; font-size:14px; cursor:pointer; }

/* ---------- 底部分类栏 ---------- */
.tabbar { position:fixed; left:0; bottom:0; width:100%; background:#fff; border-top:1px solid #e5e7eb; z-index:100; }
.tabbar-inner { max-width:720px; margin:0 auto; }
.tab { display:block; float:left; width:25%; text-align:center; padding:14px 0; font-size:15px; color:#6b7280; box-sizing:border-box; }
.tab.on { color:#e11d48; font-weight:bold; }

/* ---------- 页脚 / toast ---------- */
.footer { text-align:center; color:#9ca3af; font-size:12px; padding:20px 12px 30px; }
.footer .beian { margin-top:6px; }
.footer .beian a { color:#9ca3af; margin:0 8px; }
.toast { position:fixed; left:50%; bottom:90px; margin-left:-40%; width:80%; max-width:340px; background:rgba(17,24,39,.92); color:#fff; font-size:14px; padding:12px 16px; border-radius:8px; text-align:center; display:none; z-index:200; }
.toast.on { display:block; }

/* ---------- 我的页面 ---------- */
.user-card { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:18px; margin-bottom:14px; }
.user-card .avatar-wrap { float:left; width:64px; height:64px; margin-right:14px; }
.user-card .avatar { display:block; width:64px; height:64px; border-radius:50%; object-fit:cover; background:#f3f4f6; }
.user-card .avatar-ph { display:block; width:64px; height:64px; line-height:64px; text-align:center; border-radius:50%; background:#e11d48; color:#fff; font-size:26px; font-weight:bold; }
.user-card .user-main { overflow:hidden; }
.user-card .un { font-size:18px; font-weight:bold; }
.user-card .up { font-size:13px; color:#6b7280; margin-top:6px; line-height:1.8; }
.user-card .badge { display:inline-block; padding:2px 10px; border-radius:12px; font-size:12px; background:#fee2e2; color:#e11d48; margin-left:6px; }
.user-card .badge.no { background:#f3f4f6; color:#6b7280; }
.crumb { font-size:13px; color:#6b7280; margin:8px 0; line-height:1.9; word-break:break-all; }
.crumb .cl { color:#e11d48; cursor:pointer; }
.crumb .cs { margin:0 4px; color:#9ca3af; }
.fld { font-size:15px; }
.btn-block { display:block; width:100%; padding:13px; border:1px solid #d1d5db; border-radius:10px; background:#fff; color:#374151; font-size:15px; cursor:pointer; margin-bottom:10px; text-align:center; box-sizing:border-box; }
.btn-block.primary { background:#e11d48; color:#fff; border-color:#e11d48; }

/* ---------- 小片库刮削海报墙 ---------- */
.poster-grid { overflow:hidden; }
.poster-card { float:left; width:31.5%; margin:0 1.25% 16px; cursor:pointer; }
@media (max-width:420px) { .poster-card { width:47.5%; margin:0 1.25% 14px; } }
.poster-card .poster { display:block; position:relative; width:100%; padding-top:148%; height:0; border-radius:8px; background:#eef2f7 center center no-repeat; background-size:cover; overflow:hidden; }
.poster-card .poster .ph { position:absolute; left:0; top:0; width:100%; height:100%; line-height:150px; text-align:center; font-size:34px; color:#94a3b8; }
.poster-card .ptag { position:absolute; right:6px; top:6px; background:rgba(17,24,39,.72); color:#fff; font-size:11px; padding:2px 6px; border-radius:4px; }
.poster-card .ptitle { font-size:13px; color:#111827; margin-top:6px; line-height:1.4; max-height:2.8em; overflow:hidden; }
.poster-card .pmeta { font-size:12px; color:#9ca3af; margin-top:2px; }
.poster-card:focus { outline:2px solid #e11d48; outline-offset:2px; border-radius:8px; }
.cat-row .cat { display:inline-block; padding:6px 12px; margin:0 6px 6px 0; border:1px solid #e5e7eb; border-radius:16px; font-size:13px; color:#374151; background:#fff; cursor:pointer; }
.cat-row .cat.on { background:#e11d48; color:#fff; border-color:#e11d48; }
.src-row { margin:8px 0; overflow:hidden; }
.src-row button { padding:8px 14px; border:1px solid #d1d5db; border-radius:8px; background:#fff; color:#374151; font-size:13px; cursor:pointer; }

/* ---------- 小片库刮削海报墙（左右滑动 · 一分类一行） ---------- */
.sc-sec { margin-bottom: 10px; }
.sc-cat { font-size:15px; color:#111827; margin:14px 0 8px; padding-left:2px; }
.sc-cat .sc-num { font-size:12px; color:#9ca3af; font-weight:normal; margin-left:8px; }
.sc-row { overflow-x:auto; overflow-y:hidden; white-space:nowrap; -webkit-overflow-scrolling:touch; padding-bottom:6px; }
.sc-row::-webkit-scrollbar { height:4px; }
.sc-row::-webkit-scrollbar-thumb { background:#e5e7eb; border-radius:2px; }
.sc-card { display:inline-block; vertical-align:top; width:104px; margin-right:10px; white-space:normal; cursor:pointer; }
.sc-card:last-child { margin-right:2px; }
.sc-card .poster { display:block; position:relative; width:104px; height:154px; border-radius:8px; background:#eef2f7 center center no-repeat; background-size:cover; overflow:hidden; }
.sc-card .poster .ph { position:absolute; left:0; top:0; width:100%; height:100%; line-height:154px; text-align:center; font-size:30px; color:#94a3b8; }
.sc-card .ptag { position:absolute; right:5px; top:5px; background:rgba(17,24,39,.72); color:#fff; font-size:10px; padding:1px 5px; border-radius:3px; }
.sc-card .ptitle { font-size:12px; color:#111827; margin-top:5px; line-height:1.35; height:2.7em; overflow:hidden; }
.sc-card .pmeta { font-size:11px; color:#9ca3af; margin-top:1px; }
.sc-card:focus { outline:2px solid #e11d48; outline-offset:2px; border-radius:8px; }
