/*
Theme Name: 剧情吧-魔改Pro版
Theme URI: https://cs.xzv.cc/
Author: A先生
Author URI: https://cs.xzv.cc/
Description: 剧情资料站主题（米质Ady mizhiady 影视模板风格）。电视剧 / 电影 / 综艺 / 动漫的剧情介绍、明星、分集剧情。内置「剧集」自定义文章类型、栏目分类法、明星与分集剧情管理，完整保留原站 URL 结构（/dianshiju/、/dsj/{短ID}.html、/mingxing/{文章ID}.html、/search/?q=）。
Version: 2.0.0
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: juqingba
Tags: dark, custom-post-type, custom-taxonomy, two-columns, right-sidebar
*/

/* ============================================================
 * 本文件只承担三件事：
 *   1) WP 主题头（上面）
 *   2) mizhiady-site.css 依赖的 CSS 变量与工具类
 *   3) 少量 WP 环境的胶水样式
 * 主体样式在 statics/css/mizhiady-site.css（由 inc/setup.php 加载）。
 * 旧版全部自定义样式备份在主题目录外的 style-legacy-backup.css。
 * ============================================================ */

:root {
    --theme-color: #2862e5;
    --theme-high: 133%;
    --theme-highwide: 56%;
    --theme-radius: 6px;
    --gonggao_speed: 20s;
}

/* ---- bootstrap 式显隐工具类（mizhiady 模板依赖，未引入 bootstrap） ---- */
@media (max-width: 767.98px) {
    .hidden-xs { display: none !important; }
}
@media (min-width: 768px) {
    .visible-xs { display: none !important; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .hidden-md { display: none !important; }
}

/* ---- 原模板里 new.png 引用的是失效绝对路径，改用纯 CSS 角标 ---- */

/* 手机端底部导航：桌面隐藏（原模板靠 WAP 站分离实现，本站单模板需自行处理） */
@media (min-width: 768px) {
    .mzadywapdbfoot { display: none !important; }
}

/* 胶囊（筛选/热词/标签复用）：.page 默认 32px 固定宽会挤爆文字 */
a.page.jq-chip,
span.page.jq-chip {
    width: auto;
    height: auto;
    min-width: 32px;
    padding: 6px 16px;
    border-radius: 20px;
    display: inline-flex;
    margin: 0;
    font-size: 13px;
    text-decoration: none;
}

/* 详情页：带文字的收藏位按钮（原样式是 68px 纯图标方钮） */
.other-box .top .btn.jq-btn-text,
.other-box .top .collect-btn.jq-btn-text {
    width: auto;
    height: 48px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    white-space: nowrap;
    color: #fff;
}
.new-box .tag {
    background-image: none;
    background: linear-gradient(135deg, #ff4d6a 0%, #ff7a45 100%);
    border-radius: 0 4px 0 4px;
    position: relative;
}
.new-box .tag::after {
    content: "NEW";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .5px;
}

/* ---- WP 胶水 ---- */
/* 登录条（管理员预览时 WP 会插 admin bar，别让 fixed 头被盖住） */
body.admin-bar .myui-header__top { top: 32px; }
@media (max-width: 782px) {
    body.admin-bar .myui-header__top { top: 46px; }
}

/* 详情页简介折叠控件在暗色下的文字色 */
.vod-content .intro { color: var(--font-color); }

/* ---- 文字 logo（原模板用图片 logo，这里保留站点文字品牌） ---- */
.jq-logo-link { height: 100%; display: flex; align-items: center; }
.jq-logo { display: flex; align-items: center; gap: 8px; }
.jq-logo-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px; height: 34px;
    border-radius: 9px;
    background: linear-gradient(135deg, var(--theme-color), #6f8cff);
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    flex: 0 0 auto;
}
.jq-logo-name {
    color: var(--font-color);
    font-size: 19px;
    font-weight: 700;
    white-space: nowrap;
    letter-spacing: .5px;
}

/* ---- 详情页：明星卡片 ---- */
.jq-actor-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
    gap: 16px;
    padding: 14px 0;
}
.jq-actor-card { text-align: center; }
.jq-actor-avatar {
    position: relative;
    width: 84px; height: 112px;
    margin: 0 auto 8px;
    border-radius: 8px;
    overflow: hidden;
    background: var(--basic-bg, #141821);
    display: flex; align-items: center; justify-content: center;
    color: var(--font-color);
    font-size: 30px; font-weight: 700; opacity: .95;
}
.jq-actor-avatar img {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
}
.jq-actor-name { color: var(--font-color); font-size: 14px; font-weight: 600; }
.jq-actor-role { color: var(--font-color); opacity: .55; font-size: 12px; margin-top: 2px; }

/* ---- 详情页：分集剧情手风琴 ---- */
.jq-eps { padding: 10px 0; display: flex; flex-direction: column; gap: 8px; }
.jq-ep-item {
    border: 1px solid var(--line-color, rgba(255,255,255,.08));
    border-radius: 8px;
    overflow: hidden;
    background: transparent;
}
.jq-ep-head {
    display: flex; align-items: center; gap: 10px;
    padding: 12px 14px;
    cursor: pointer;
    color: var(--font-color);
    list-style: none;
    user-select: none;
}
.jq-ep-head::-webkit-details-marker { display: none; }
.jq-ep-head::after {
    content: "";
    margin-left: auto;
    width: 7px; height: 7px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    opacity: .5;
    transition: transform .2s;
    flex: 0 0 auto;
}
.jq-ep-item[open] .jq-ep-head::after { transform: rotate(225deg); }
.jq-ep-no { color: var(--theme-color); font-weight: 700; font-size: 14px; flex: 0 0 auto; }
.jq-ep-title { font-size: 14px; opacity: .9; }
.jq-ep-body {
    padding: 0 14px 14px;
    color: var(--font-color);
    opacity: .82;
    font-size: 14px;
    line-height: 1.9;
}
.jq-muted { opacity: .55; }

/* ============================================================
 * 后台功能扩展组件（公告/弹窗/广告位/收藏/APP按钮/热词轮播）
 * ============================================================ */

/* ---- 图片 Logo ---- */
.jq-logo-img img { height: 40px; width: auto; display: block; }

/* ---- APP 下载按钮（导航右侧） ---- */
.jq-app-btn {
    display: inline-flex; align-items: center; gap: 4px;
    margin-left: 10px; padding: 5px 14px;
    border: 1px solid var(--theme-color, #2862e5);
    border-radius: 20px;
    color: var(--theme-color, #2862e5) !important;
    font-size: 13px; white-space: nowrap;
    transition: all .2s;
}
.jq-app-btn:hover { background: var(--theme-color, #2862e5); color: #fff !important; }

/* ---- 顶部滚动公告 ---- */
.jq-notice-bar {
    display: flex; align-items: center; gap: 10px;
    max-width: 1400px; margin: 10px auto 0; padding: 0 16px;
    color: var(--font-color);
}
.jq-notice-bar > .iconfont { color: var(--theme-color, #2862e5); font-size: 18px; flex: 0 0 auto; }
.jq-notice-viewport { overflow: hidden; flex: 1; }
.jq-notice-scroll { display: inline-block; white-space: nowrap; }
.jq-notice-scroll.jq-rolling { animation: jqMarquee linear infinite; }
@keyframes jqMarquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ---- 广告位容器 ---- */
.jq-ad-slot { margin: 18px 0; overflow: hidden; }
.jq-ad-slot img { max-width: 100%; height: auto; }
.jq-ad-slot .mizhiady-carousel { margin: 0; }

/* ---- 弹窗公告 ---- */
.jq-pop-mask {
    position: fixed; inset: 0; z-index: 99999;
    background: rgba(0, 0, 0, .6);
    display: flex; align-items: center; justify-content: center;
    padding: 20px;
}
.jq-pop-mask.hidden { display: none; }
.jq-pop {
    width: 100%; max-width: 420px;
    background: var(--basic-bg, #141821);
    border-radius: 12px; overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .4);
}
.jq-pop-head {
    display: flex; align-items: center; gap: 8px;
    padding: 14px 18px; font-size: 16px; font-weight: 700;
    color: var(--theme-color, #2862e5);
    border-bottom: 1px solid rgba(128, 128, 128, .15);
}
.jq-pop-head .iconfont { font-size: 20px; }
.jq-pop-close { margin-left: auto; cursor: pointer; opacity: .5; font-size: 14px; }
.jq-pop-close:hover { opacity: 1; }
.jq-pop-body {
    padding: 18px; line-height: 1.8; font-size: 14px;
    color: var(--font-color); word-break: break-word;
}
.jq-pop-link {
    display: block; margin: 0 18px 6px;
    color: var(--theme-color, #2862e5); font-size: 14px;
    text-decoration: underline;
}
.jq-pop-btn {
    display: block; width: calc(100% - 36px);
    margin: 10px 18px 18px; padding: 10px 0;
    background: var(--theme-color, #2862e5); color: #fff;
    border: none; border-radius: 8px;
    font-size: 15px; cursor: pointer;
}
.jq-pop-btn:hover { filter: brightness(1.1); }

/* ---- 轻提示 toast ---- */
#jqToast {
    position: fixed; left: 50%; bottom: 120px; z-index: 100000;
    transform: translateX(-50%) translateY(20px);
    background: rgba(0, 0, 0, .8); color: #fff;
    padding: 9px 18px; border-radius: 20px; font-size: 13px;
    opacity: 0; pointer-events: none;
    transition: all .25s;
}
#jqToast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* ---- 收藏按钮状态 ---- */
.other-box .btn.jq-collect { color: var(--font-color); }
.other-box .btn.jq-collect.collected { color: var(--theme-color, #2862e5); }
.other-box .btn.jq-collect.collected .iconfont { animation: jqPop .3s; }
@keyframes jqPop { 50% { transform: scale(1.35); } }

/* ---- 我的收藏页空态 ---- */
.jq-empty-state { text-align: center; padding: 60px 0; color: var(--font-color); }
.jq-empty-state.hidden { display: none; }
.jq-empty-state .ico .iconfont { font-size: 52px; opacity: .3; }
.jq-empty-state p { margin: 12px 0 0; font-size: 15px; }
.jq-empty-state .jq-empty-tip { font-size: 13px; opacity: .55; }
.jq-empty-state .jq-empty-btn {
    display: inline-flex; margin-top: 16px;
}

/* ---- 免责声明 ---- */
.footer-disclaimer {
    font-size: 12px; opacity: .55;
    max-width: 720px; margin: 0 auto 6px;
    line-height: 1.7;
}

/* ---- 移动端 ---- */
@media (max-width: 768px) {
    .jq-app-btn { display: none; }
    .jq-notice-bar { margin-top: 6px; }
    .jq-pop { max-width: 340px; }
}
/* ============================================================
 * 明星人物库（/star/）—— 版式参照 mjcfpp.com/star
 *   左：筛选行 + 5 列头像网格 + 分页；右：最新 / 热门排行
 * ============================================================ */
.jq-star-wrap{display:flex;gap:20px;align-items:flex-start;margin-top:16px}
.jq-star-main{flex:1;min-width:0}
.jq-star-side{flex:0 0 310px;width:310px;border:1px solid rgba(127,127,127,.25);border-radius:8px;padding:12px 14px}
.jq-star-side h2{font-size:18px;font-weight:700;margin:6px 0 12px}
.jq-star-total{font-size:13px;opacity:.6}

/* 筛选行：尺寸与配色 1:1 对齐 mjcfpp.com/star（35px 行高 / 红底 #d80a04 圆角 5px） */
.jq-star-filter{margin:0 0 14px}
.jq-filter-row{display:flex;align-items:center;min-height:35px;line-height:35px}
.jq-filter-row h2{flex:0 0 auto;margin:0;padding-right:5px;font-size:15px;font-weight:700;opacity:.72}
.jq-filter-row ul{flex:1;min-width:0;display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.jq-filter-row li{margin:0;color:inherit}
.jq-filter-row .templink{display:inline-block;padding:2px 8px;border-radius:5px;font-size:14px;opacity:.85;white-space:nowrap;color:inherit}
.jq-filter-row .templink:hover{opacity:1;background:rgba(127,127,127,.14);text-decoration:none}
.jq-filter-row .templink.templinkactive{background:#d80a04;color:#fff;opacity:1}
.jq-filter-row .templink.templinkactive:hover{background:#c00904}

.jq-star-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:14px 10px}
.jq-star-grid li{text-align:center;min-width:0}
.jq-star-grid li>a{display:block}
.jq-star-grid li img{width:100%;aspect-ratio:160/215;object-fit:cover;border-radius:8px;display:block;background:rgba(127,127,127,.08)}
.jq-star-grid li p{margin:8px 0 2px;font-size:15px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jq-star-grid li p a:hover{color:var(--theme-color)}
.jq-star-works{display:block;font-size:12px;opacity:.55}
.jq-star-pager{margin-top:18px}

.jq-star-rank{list-style:none;margin:0;padding:0}
.jq-star-rank li{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px dashed rgba(127,127,127,.18)}
.jq-star-rank li:last-child{border-bottom:0}
.jq-star-rank li i{flex:0 0 20px;width:20px;font-style:normal;text-align:center;font-size:14px;opacity:.5}
.jq-star-rank li i.top{color:var(--theme-color);opacity:1;font-weight:700}
.jq-star-rank .cir{flex:0 0 44px}
.jq-star-rank .cir img{width:44px;height:44px;object-fit:cover;border-radius:50%;display:block;background:rgba(127,127,127,.08)}
.jq-star-rank .nm{flex:1;min-width:0;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jq-star-rank .nm:hover{color:var(--theme-color)}
.jq-star-rank .cnt{font-size:12px;opacity:.55}

/* ---- 明星详情页 ---- */
.jq-star-detail{display:flex;gap:22px;padding:2px 0 6px}
.jq-star-pic{flex:0 0 200px}
.jq-star-pic img{width:200px;aspect-ratio:160/215;object-fit:cover;border-radius:10px;display:block;background:rgba(127,127,127,.08)}
.jq-star-info{flex:1;min-width:0}
.jq-star-info h1{font-size:24px;margin:0 0 6px}
.jq-star-info .alias{margin:0 0 10px;font-size:13px;opacity:.6}
.jq-star-basic{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 16px}
.jq-star-basic li{font-size:14px}
.jq-star-basic label{display:inline-block;min-width:64px;opacity:.55}
.jq-star-basic span{font-weight:600}
.jq-star-intro h3{font-size:16px;margin:6px 0 8px}
.jq-star-intro .txt{font-size:14px;line-height:1.8;opacity:.85}

@media (max-width:991px) {
    .jq-star-wrap{flex-direction:column}
    .jq-star-side{flex:1 1 auto;width:100%}
    .jq-star-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:600px) {
    .jq-star-grid{grid-template-columns:repeat(2,1fr)}
    .jq-star-detail{flex-direction:column}
    .jq-star-pic{flex:0 0 auto}
    .jq-star-pic img{width:160px}
}

/* ============================================================
 * 明星库卡片重排（2026-09-26 第二版）
 * ============================================================ */
.jq-star-grid{gap:18px 12px}
.jq-star-grid li{position:relative;border-radius:10px;transition:transform .22s ease}
.jq-star-grid li:hover{transform:translateY(-4px)}
.jq-star-grid li>a:first-child{position:relative;display:block;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.jq-star-grid li:hover>a:first-child{box-shadow:0 8px 20px rgba(0,0,0,.35)}
.jq-star-grid li>a:first-child::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.45));opacity:0;transition:opacity .22s}
.jq-star-grid li:hover>a:first-child::after{opacity:1}
.jq-star-grid li img{transition:transform .3s ease}
.jq-star-grid li:hover img{transform:scale(1.04)}
.jq-star-grid li p{margin:9px 0 3px;font-size:15px;font-weight:600}
.jq-star-works{display:inline-block;font-size:11px;line-height:1;padding:4px 8px;border-radius:999px;background:rgba(127,127,127,.14);opacity:.75}
.jq-star-grid li:hover .jq-star-works{background:var(--theme-color);color:#fff;opacity:1}
.jq-star-rank .cir{border-radius:50%;overflow:hidden;flex:0 0 44px}
