/* ============================================================
   独立设计 · 「报头头版 · 多栏编辑版式」浅色报刊
   与 cinema-dark /  骨架无关：
   报头 masthead(双细线) / 头条 lead / 三栏分栏 cols /
   分类版面 / 文章式详情 / 放映间播放 / 报纸尾版 footer。
   浅色纸底 + 墨黑 + 红 #dc2626，衬线排版自成一体的选择器与规则。
   ============================================================ */
:root{
  --paper:#ffffff;
  --paper-2:#f6f5f1;
  --ink:#141414;
  --ink-2:#333333;
  --muted:#74746e;
  --rule:#141414;
  --rule-thin:#d6d4cd;
  --red:#dc2626;
  --red-d:#b91c1c;
  --gold:#b45309;
  --serif:Georgia,"Times New Roman","Songti SC","STSong","SimSun",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;overflow-x:hidden}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
ul{list-style:none}
::selection{background:var(--red);color:#fff}

/* ===== 布局通用 ===== */
.container{max-width:1684px;margin:0 auto;padding:0 22px}
.wrap{padding-top:14px}
.section{padding:28px 0}
.section:first-child{padding-top:6px}

/* ===== 报头 masthead ===== */
.np-masthead{background:var(--paper);border-top:3px solid var(--ink);border-bottom:1px solid var(--ink)}
.np-mast-top{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:8px 0;border-bottom:1px solid var(--rule-thin);font-size:11.5px;color:var(--muted);letter-spacing:.05em;flex-wrap:wrap}
.np-mast-top .np-ed{color:var(--ink);font-weight:700}
.np-mast-top .np-hot{color:var(--red);font-weight:700}
.np-brandrow{display:flex;flex-direction:column;align-items:center;padding:20px 0 16px}
.np-brand{font-family:var(--serif);font-size:46px;font-weight:800;letter-spacing:.16em;line-height:1;color:var(--ink)}
.np-brand .np-play{color:var(--red)}
.np-mast-sub{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted);letter-spacing:.24em;margin-top:10px;text-transform:uppercase}
.np-mast-sub::before,.np-mast-sub::after{content:"";flex:0 0 44px;height:1px;background:var(--ink)}

/* ===== 下划线导航 ===== */
.np-nav{position:sticky;top:0;z-index:100;background:var(--paper);border-bottom:2px solid var(--ink)}
.np-nav-inner{display:flex;align-items:center;gap:2px;height:50px}
.np-nav a{display:inline-flex;align-items:center;gap:5px;padding:0 13px;height:50px;color:var(--ink);font-size:14.5px;font-weight:600;white-space:nowrap;position:relative}
.np-nav a::after{content:"";position:absolute;left:13px;right:13px;bottom:11px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:.2s}
.np-nav a:hover{color:var(--red)}
.np-nav a:hover::after,.np-nav a.active::after{transform:scaleX(1)}
.np-nav a.active{color:var(--red);font-weight:800}
.np-nav .np-item{position:relative;display:inline-flex}
.np-nav .np-item>.np-link{display:inline-flex;align-items:center;gap:4px;padding:0 13px;height:50px;font-size:14.5px;font-weight:600;white-space:nowrap;position:relative}
.np-nav .np-item>.np-link::after{content:"";position:absolute;left:13px;right:13px;bottom:11px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:.2s}
.np-nav .np-item>.np-link:hover{color:var(--red)}
.np-nav .np-item>.np-link:hover::after,.np-nav .np-item.active>.np-link::after{transform:scaleX(1)}
.np-nav .np-item.active>.np-link{color:var(--red);font-weight:800}
.np-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;opacity:.55}
.np-drop{display:none;position:absolute;top:100%;left:0;min-width:172px;background:var(--paper);border:1px solid var(--ink);box-shadow:0 16px 40px rgba(0,0,0,.14);padding:6px;z-index:120}
.np-nav .np-item:hover .np-drop{display:block}
.np-drop a{display:block;padding:9px 12px;font-size:13.5px;color:var(--ink-2);border-bottom:1px solid var(--rule-thin);white-space:normal}
.np-drop a:hover{color:var(--red);background:var(--paper-2)}
.np-drop .np-drop-all{font-weight:800;color:var(--red)}
.np-nav .np-search{margin-left:auto;display:flex;align-items:center;flex:0 0 auto}
.np-nav .np-search form{display:flex;align-items:center;border:1.5px solid var(--ink);background:#fff}
.np-nav .np-search input{border:0;outline:0;padding:8px 12px;font-size:13px;width:168px;background:transparent;color:var(--ink)}
.np-nav .np-search input::placeholder{color:var(--muted)}
.np-nav .np-search button{border:0;background:var(--ink);color:#fff;width:34px;height:34px;cursor:pointer;font-size:13px;transition:.15s}
.np-nav .np-search button:hover{background:var(--red)}
.hamburger{display:none;margin-left:auto;background:none;border:none;color:var(--ink);font-size:24px;cursor:pointer;flex:0 0 auto;padding:2px 4px}

/* ===== 区块标题（双细线 + 衬线 + kicker）===== */
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:20px;padding-bottom:12px;border-bottom:3px double var(--ink)}
.sec-head h2{font-family:var(--serif);font-size:25px;font-weight:800;letter-spacing:.02em;line-height:1.2;display:flex;flex-direction:column;gap:4px}
.sec-head .kicker{font-size:10.5px;font-weight:700;letter-spacing:.26em;color:var(--red);text-transform:uppercase;font-family:var(--sans)}
.sec-head h2 a:hover{color:var(--red)}
.more{font-size:13px;font-weight:600;color:var(--muted);white-space:nowrap}
a.more:hover{color:var(--red)}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.tabs a{padding:5px 14px;border:1px solid var(--rule-thin);color:var(--ink-2);font-size:13px;transition:.15s;background:var(--paper)}
.tabs a:hover{border-color:var(--ink);color:var(--ink)}
.tabs a.active{background:var(--ink);color:#fff;border-color:var(--ink);font-weight:700}

/* ===== 护照签证页 passport visa page（首页顶部签名：浅纸护照页+红官方圆印章+2:3 照片位+签发字段格+机读区 MRZ）===== */
.vp97{max-width:none;margin:0;padding:26px 0 10px}
.vp97-passport{position:relative;background:#12100c;border:1.5px solid var(--ink);padding:0;box-shadow:0 14px 34px rgba(0,0,0,.3);min-height:440px;overflow:hidden}
.vp97-passport::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--red);z-index:4}
.vp97-band{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;letter-spacing:.2em;color:rgba(255,255,255,.86);font-weight:700;padding:12px 30px;margin-bottom:0;border-bottom:1px solid rgba(255,255,255,.3);flex-wrap:wrap}
.vp97-band .vp97-visa{color:#f87171}
.vp97-body{display:block;position:relative;z-index:3;padding:26px 30px 20px}
.vp97-photo{position:absolute;left:auto;top:auto;inset:0;border:none;padding:0;background:none;z-index:1}
.vp97-photo a{display:block;position:absolute;left:auto;top:auto;inset:0;aspect-ratio:auto;overflow:hidden;background:#12100c}
.vp97-photo a::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(100deg,rgba(14,12,9,.97) 0%,rgba(14,12,9,.9) 42%,rgba(14,12,9,.52) 74%,rgba(14,12,9,.2) 100%);pointer-events:none}
.vp97-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.vp97-photo:hover img{transform:scale(1.04)}
.vp97-photo .vp97-plabel{position:absolute;left:auto;right:16px;bottom:16px;z-index:3;background:rgba(14,12,9,.62);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:11px;padding:4px 10px;letter-spacing:.05em}
.vp97-fields{position:relative;z-index:3;min-width:0;padding-right:180px;max-width:min(980px,calc(100% - 200px))}
.vp97-kick{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.14em;color:#f87171;text-transform:uppercase;margin-bottom:12px}
.vp97-kick::before{content:"";width:24px;height:2px;background:#f87171}
.vp97-title{font-family:var(--serif);font-size:36px;font-weight:800;line-height:1.18;margin-bottom:14px;color:#fff}
.vp97-title a{color:#fff}
.vp97-title a:hover{color:#f87171}
.vp97-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:rgba(255,255,255,.82);font-size:13px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.3)}
.vp97-meta .vp97-score{color:#fbbf24;font-weight:800}
.vp97-data{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin-bottom:18px;max-width:520px}
.vp97-fd{border-top:1px solid rgba(255,255,255,.32);padding-top:8px}
.vp97-fd .fp{font-size:11px;letter-spacing:.16em;color:rgba(255,255,255,.62);text-transform:uppercase}
.vp97-fd .fv{font-family:var(--serif);font-size:16px;font-weight:700;color:#fff;margin-top:3px}
.vp97-desc{color:rgba(255,255,255,.84);font-size:14px;line-height:1.85;margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vp97-act{display:flex;gap:12px;flex-wrap:wrap}
.vp97-stamp{position:absolute;top:32px;right:0;width:132px;height:132px;border:3px double #f87171;border-radius:50%;color:#f87171;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(-13deg);opacity:.92;background:rgba(220,38,38,.12);line-height:1.5;z-index:3}
.vp97-stamp::before{content:"";position:absolute;inset:6px;border:1px solid rgba(248,113,113,.85);border-radius:50%}
.vp97-stamp .vp97-s1{font-size:10px;letter-spacing:.18em;font-weight:700}
.vp97-stamp .vp97-s2{font-family:var(--serif);font-size:15px;font-weight:800;margin:2px 0}
.vp97-mrz{position:relative;z-index:3;margin:0;padding:12px 170px 14px 30px;border-top:2px solid rgba(255,255,255,.4);font-family:ui-monospace,Consolas,monospace;font-size:12px;letter-spacing:.14em;color:rgba(255,255,255,.82);line-height:1.5}
.vp97-mrz div{white-space:nowrap;overflow:hidden}
@media (max-width:760px){.vp97{padding:18px 0 6px}.vp97-passport{min-height:380px}.vp97-band{padding:10px 18px;font-size:11px;letter-spacing:.12em}.vp97-body{padding:22px 18px 16px}.vp97-photo{width:auto;height:auto}.vp97-photo a{width:auto;height:auto}.vp97-photo a::after{background:linear-gradient(180deg,rgba(14,12,9,.96) 0%,rgba(14,12,9,.88) 46%,rgba(14,12,9,.62) 100%)}.vp97-fields{padding-right:104px;max-width:none}.vp97-stamp{top:26px;right:6px;width:92px;height:92px}.vp97-title{font-size:27px}.vp97-mrz{padding:12px 18px;font-size:10.5px}.vp97-photo .vp97-plabel{right:14px;bottom:12px}}

/* ===== 分栏 cols（最新/热播/口碑 三窄栏）===== */
.np-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.np-col{border-top:3px double var(--ink);padding-top:14px;min-width:0}
.np-col-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:8px}
.np-col-head .np-col-kicker{font-size:10px;letter-spacing:.22em;color:var(--red);font-weight:700;text-transform:uppercase;font-family:var(--sans)}
.np-col-head h3{font-family:var(--serif);font-size:19px;font-weight:800;margin-top:2px}
.np-col-head a.np-more{font-size:12px;color:var(--muted)}
.np-col-head a.np-more:hover{color:var(--red)}
.np-col-list{display:flex;flex-direction:column}
.np-row{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--rule-thin);break-inside:avoid;cursor:pointer;align-items:flex-start}
.np-row:last-child{border-bottom:none}
.np-row-img{flex:0 0 80px;width:80px;aspect-ratio:0.667/1;overflow:hidden;background:#e9e8e3;position:relative}
.np-row-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.np-row:hover .np-row-img img{transform:scale(1.06)}
.np-row-txt{min-width:0;flex:1}
.np-row-title{font-family:var(--serif);font-size:15.5px;font-weight:700;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.np-row:hover .np-row-title{color:var(--red)}
.np-row-desc{font-size:12.5px;color:var(--muted);line-height:1.55;margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.np-row-meta{font-size:11.5px;color:var(--muted);opacity:.85;margin-top:6px}
.np-row-meta .np-score{color:var(--gold);font-weight:700}

/* ===== 按钮 ===== */
.np-btn,.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 24px;font-size:14px;font-weight:700;cursor:pointer;border:1.5px solid var(--ink);transition:.15s;white-space:nowrap;font-family:var(--sans);line-height:1.4}
.np-btn-red,.btn-play{background:var(--red);color:#fff;border-color:var(--red)}
.np-btn-red:hover,.btn-play:hover{background:var(--red-d);border-color:var(--red-d)}
.np-btn-ink,.btn{background:var(--ink);color:#fff;border-color:var(--ink)}
.np-btn-ink:hover,.btn:hover{background:#000}
.np-btn-ghost,.btn-ghost{background:var(--paper);color:var(--ink);border-color:var(--ink)}
.np-btn-ghost:hover,.btn-ghost:hover{background:var(--ink);color:#fff}

/* ===== 卡片（报刊缩略图 · 细边框 · 方角）===== */
.card{position:relative;min-width:0;cursor:pointer;background:var(--paper);border:1px solid var(--rule-thin);transition:.18s}
.card:hover{border-color:var(--ink);box-shadow:0 12px 26px rgba(0,0,0,.12)}
.card .thumb{position:relative;overflow:hidden;height:0;padding-top:150%;background:#e9e8e3}
.card .thumb img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.card:hover .thumb img{transform:scale(1.05)}
.card .badge{position:absolute;bottom:6px;right:6px;z-index:2;background:rgba(20,20,20,.82);color:#fff;font-size:11px;padding:2px 8px;max-width:82%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card .badge.watch-badge{background:var(--red);font-weight:700}
.card .type-tag{position:absolute;top:6px;left:6px;z-index:2;background:rgba(20,20,20,.82);color:#fff;font-size:11px;padding:2px 8px;max-width:82%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card .type-tag:empty,.card .badge:empty{display:none}
.card .score{position:absolute;top:6px;right:6px;z-index:3;background:#fff;color:var(--gold);font-size:12px;font-weight:800;padding:2px 7px;border:1px solid var(--ink);line-height:1}
.card .name{margin-top:9px;padding:0 2px 3px}
.card .name h3{font-family:var(--serif);font-size:14.5px;font-weight:700;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.card:hover .name h3{color:var(--red)}
.cmeta{font-size:12px;color:var(--muted);line-height:1.45;margin-top:6px;height:1.45em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cpeople{font-size:12px;color:var(--muted);opacity:.78;line-height:1.45;margin-top:3px;height:1.45em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ===== 网格 ===== */
.grid,.result-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px 12px}
.row{display:grid;grid-template-columns:repeat(7,1fr);gap:20px 12px}
section[id^="index-vod"] .row{grid-template-columns:repeat(6,1fr);gap:20px 12px}
.row .card{min-width:0}
.row .card .name h3{-webkit-line-clamp:2}

/* ===== 排行榜（分栏横列）===== */
.rank-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 26px}
.rank-item{position:relative;display:flex;gap:12px;min-width:0;padding:13px 0;border-bottom:1px solid var(--rule-thin);cursor:pointer;align-items:flex-start;flex-direction:row}
.rank-no{font-family:var(--serif);font-size:22px;font-weight:800;color:var(--ink);width:32px;flex:0 0 auto;line-height:1;text-align:center}
.rank-item:nth-child(-n+3) .rank-no{color:var(--red)}
.rank-thumb{position:relative;flex:0 0 84px;width:84px;aspect-ratio:0.667/1;overflow:hidden;background:#e9e8e3}
.rank-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.rank-item:hover .rank-thumb img{transform:scale(1.05)}
.rank-thumb .score{position:absolute;top:5px;right:5px;z-index:2;background:#fff;color:var(--gold);border:1px solid var(--ink);font-size:11px;font-weight:800;padding:1px 6px}
.rank-info{min-width:0;flex:1}
.rank-info h4{font-family:var(--serif);font-size:15px;font-weight:700;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.rank-info h4 a:hover{color:var(--red)}
.rank-info .st{font-size:12px;color:var(--red);font-weight:700;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank-info .st:empty{display:none;margin-top:0}

/* ===== 详情（文章式）===== */
.np-article{border:1px solid var(--ink);padding:26px;background:var(--paper)}
.np-article-head{display:flex;gap:28px}
.np-article-cover{flex:0 0 224px;width:224px;aspect-ratio:2/3;overflow:hidden;background:#e9e8e3;position:relative}
.np-article-cover a{display:block;width:100%;height:100%;cursor:pointer}
.np-article-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.np-article-cover a:hover img{transform:scale(1.05)}
.np-article-main{flex:1;min-width:0}
.np-article-kicker{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--red);letter-spacing:.14em;margin-bottom:10px;text-transform:uppercase}
.np-article-kicker::before{content:"";width:20px;height:2px;background:var(--red)}
.np-article-kicker a{color:var(--red)}
.np-article-title{font-family:var(--serif);font-size:33px;font-weight:800;line-height:1.24;letter-spacing:.01em;margin-bottom:16px}
.np-article-scorebar{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:12px 16px;background:var(--paper-2);border:1px solid var(--rule-thin);margin-bottom:18px}
.np-article-score{font-family:var(--serif);font-size:28px;font-weight:800;color:var(--red);line-height:1}
.np-article-scoreratio{color:var(--muted);font-size:12px}
.np-article-sep{width:1px;height:16px;background:var(--rule-thin)}
.np-article-stat{color:var(--muted);font-size:13px}
.np-article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.np-article-tags .at{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border:1px solid var(--rule-thin);font-size:13px;color:var(--ink-2);background:var(--paper)}
.np-article-tags .at b{color:var(--muted);font-weight:500}
.np-article-tags .at a:hover{color:var(--red)}
.np-article-tags .at.hot{background:var(--red);border-color:var(--red);color:#fff;font-weight:700}
.np-article-tags .at.hot b{color:rgba(255,255,255,.85)}
.np-article-people{margin-bottom:22px}
.np-article-people div{font-size:14px;margin-bottom:9px;line-height:1.7;color:var(--ink)}
.np-article-people .pk{display:inline-block;min-width:42px;color:var(--muted);margin-right:8px}
.np-article-actions{display:flex;gap:12px;flex-wrap:wrap}
.np-article-content{margin-top:24px;padding-top:22px;border-top:1px solid var(--rule-thin);color:var(--ink-2);font-size:14.5px;line-height:1.95}

/* ===== 兼容 actor/role 详情页（沿用 d-* 命名 · 报刊风）===== */
.detail-hero{border:1px solid var(--ink);padding:26px;background:var(--paper)}
.detail-head{display:flex;gap:28px}
.d-cover{flex:0 0 224px;width:224px;aspect-ratio:2/3;overflow:hidden;background:#e9e8e3;position:relative}
.d-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.d-cover:hover img{transform:scale(1.05)}
.d-info{flex:1;min-width:0}
.d-info h1{font-family:var(--serif);font-size:30px;font-weight:800;line-height:1.24;letter-spacing:.01em;margin-bottom:16px}
.d-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.d-tag{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border:1px solid var(--rule-thin);font-size:13px;color:var(--ink-2);background:var(--paper)}
.d-tag b{color:var(--muted);font-weight:500}
.d-tag a:hover{color:var(--red)}
.d-tag.hot{background:var(--red);border-color:var(--red);color:#fff;font-weight:700}
.d-tag.hot b{color:rgba(255,255,255,.85)}
.d-people{margin-bottom:20px}
.d-people div{font-size:14px;margin-bottom:9px;line-height:1.7;color:var(--ink)}
.d-people .pk{display:inline-block;min-width:42px;color:var(--muted);margin-right:8px}
.d-people a:hover{color:var(--red)}
.d-actions{display:flex;gap:12px;flex-wrap:wrap}
.d-content{margin-top:24px;padding-top:22px;border-top:1px solid var(--rule-thin);color:var(--ink-2);font-size:14.5px;line-height:1.95}
.d-content p{margin-bottom:12px}
.d-tip{color:var(--muted);font-size:13px;margin:0 0 16px}

/* ===== 播放（放映间）===== */
.np-player{border:1px solid var(--ink);padding:22px;background:var(--paper)}
.np-player-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:12px;margin-bottom:14px;border-bottom:3px double var(--ink)}
.np-player-title{font-family:var(--serif);font-size:24px;font-weight:800}
.np-player-title a:hover{color:var(--red)}
.np-player-type{font-size:13px;color:var(--muted);white-space:nowrap}
.np-player-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:13px;margin-bottom:14px}
.np-player-meta .np-score{color:var(--gold);font-weight:800}
.player-wrap{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;border:1px solid var(--ink)}
.player-wrap .FeifeiPlayer{width:100%;height:100%;min-height:100%!important}
.player-wrap table{width:100%;height:100%;border-collapse:collapse}
.player-wrap td{height:100%;vertical-align:middle}
.np-player-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.play-tabs{margin-bottom:12px}
.play-tabs .src{display:inline-block;font-family:var(--serif);font-size:15px;font-weight:800;color:var(--ink);border-bottom:2px solid var(--red);padding-bottom:4px}
.play-tabs .src-tip{margin-left:12px;color:var(--muted);font-size:12px;font-weight:400}
.eps{display:flex;flex-wrap:wrap;gap:9px}
.eps a{padding:8px 15px;border:1px solid var(--rule-thin);color:var(--ink-2);font-size:13px;transition:.15s;background:var(--paper)}
.eps a:hover{border-color:var(--ink);color:var(--ink)}
.eps a.active{background:var(--red);color:#fff;border-color:var(--red);font-weight:700}
.play-src .eps{margin-bottom:16px}

/* ===== 分享 ===== */
.share-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:14px;border-top:1px dashed var(--rule-thin)}
.share-bar .share-title{color:var(--muted);font-size:13px}
.share-bar .share-btn{cursor:pointer;padding:6px 14px;border:1px solid var(--rule-thin);background:var(--paper);color:var(--ink-2);font-size:13px;transition:.15s}
.share-bar .share-btn:hover{border-color:var(--red);color:var(--red)}

/* ===== 分集剧情 ===== */
.plot-list{display:flex;flex-direction:column}
.plot-item{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--rule-thin)}
.plot-item:last-child{border-bottom:none}
.plot-ep{font-family:var(--serif);font-weight:800;color:var(--red);flex:0 0 auto;white-space:nowrap}
.plot-desc{color:var(--ink-2);font-size:13.5px;line-height:1.7}

/* ===== 演员/角色/专题 卡片 ===== */
.pcard-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px 16px}
.pcard{border:1px solid var(--rule-thin);padding:12px;transition:.18s;min-width:0;cursor:pointer;background:var(--paper)}
.pcard:hover{border-color:var(--ink);box-shadow:0 12px 26px rgba(0,0,0,.1)}
.p-thumb{position:relative;overflow:hidden;height:0;padding-top:112%;background:#e9e8e3;margin-bottom:10px}
.p-thumb img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}
.p-sex{position:absolute;bottom:8px;right:8px;z-index:2;background:rgba(20,20,20,.7);color:#fff;font-size:11px;padding:2px 8px}
.p-name{font-family:var(--serif);font-size:15px;font-weight:700;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.p-name a:hover{color:var(--red)}
.p-meta{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.p-blurb{color:var(--muted);font-size:12px;line-height:1.6;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ===== 筛选 ===== */
.filter{border:1px solid var(--ink);padding:18px 22px;margin-bottom:18px;background:var(--paper)}
.filter-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px;padding-bottom:12px;border-bottom:3px double var(--ink)}
.filter-head .ft{font-family:var(--serif);font-size:20px;font-weight:800}
.filter-head .f-count{color:var(--muted);font-size:13px}
.filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid var(--rule-thin)}
.filter-row:last-child{border-bottom:none}
.filter-row .fl{flex:0 0 44px;font-size:11px;font-weight:700;color:var(--muted);letter-spacing:.14em;text-transform:uppercase}
.filter-row a{color:var(--ink-2);font-size:13px;padding:3px 10px;border:1px solid transparent;transition:.15s}
.filter-row a:hover{color:var(--red);border-color:var(--rule-thin)}
.filter-row a.active{color:#fff;background:var(--red);font-weight:700;border-color:var(--red)}

/* ===== 分页 ===== */
.paging{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:30px}
.paging a,.paging span{padding:8px 15px;border:1px solid var(--rule-thin);color:var(--ink-2);font-size:13px;background:var(--paper);transition:.15s}
.paging a:hover{border-color:var(--ink);color:var(--ink)}
.paging .active{background:var(--ink);color:#fff;border-color:var(--ink);font-weight:700}
.paging .dis{opacity:.45;cursor:default}
.no-result{text-align:center;color:var(--muted);padding:70px 0}

/* ===== 评论/留言 表单 ===== */
.cm-form{border:1px solid var(--rule-thin);padding:18px;margin-bottom:20px;background:var(--paper-2)}.cm-form-row{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px;}.cm-form-text{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:10px;font-size:14px;outline:none;background:var(--card);color:var(--text);resize:vertical;font-family:inherit;line-height:1.6;}.cm-form-text:focus{border-color:var(--accent);}.cm-form-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}.cm-code{height:40px;border-radius:8px;border:1px solid var(--line);}.cm-count{font-size:12.5px;color:var(--muted);}.cm-count em{font-style:normal;color:var(--accent);}
.cm-form-text{width:100%;min-height:72px;resize:vertical;background:#fff;border:1px solid var(--rule-thin);padding:12px 14px;color:var(--ink);font-size:14px;line-height:1.6;font-family:inherit}
.cm-form-text:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 2px rgba(220,38,38,.12)}
.cm-form-foot{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}
.cm-verify{width:120px;background:#fff;border:1px solid var(--rule-thin);padding:8px 12px;color:var(--ink);font-size:14px}
.cm-verify:focus{outline:none;border-color:var(--red)}
.cm-code{height:38px;border:1px solid var(--rule-thin);cursor:pointer}
.cm-count{margin-left:auto;color:var(--muted);font-size:12px}
.cm-count em{color:var(--red);font-style:normal;font-weight:700}
.cm-nodata,.u-nodata{color:var(--muted);text-align:center;padding:34px 0}
.cm-more{margin-top:14px;text-align:center}
.cm-more a{color:var(--muted);font-size:13px}
.cm-more a:hover{color:var(--red)}

/* ===== 评论/留言 列表 ===== */
.cm-list{display:flex;flex-direction:column;gap:14px}
.cm-item,.gb-item{display:flex;gap:14px;border:1px solid var(--rule-thin);padding:16px;background:var(--paper)}
.cm-ava,.gb-ava{width:42px;height:42px;border-radius:50%;flex:0 0 auto;background:var(--paper-2);object-fit:cover}
.cm-body,.gb-body{flex:1;min-width:0}
.cm-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.cm-name{font-weight:700;font-size:14px}
.cm-time{color:var(--muted);font-size:12px}
.cm-text{color:var(--ink);font-size:14px;line-height:1.75;word-break:break-word}
.cm-act{display:flex;gap:10px;margin-top:9px}
.cm-digg{background:var(--paper-2);border:1px solid var(--rule-thin);color:var(--muted);padding:5px 12px;font-size:12px;cursor:pointer;transition:.15s}
.cm-digg:hover{color:var(--ink);border-color:var(--ink)}
.digg-num{font-style:normal;font-weight:700;margin-left:4px}
.cm-sub{margin-top:12px;padding-left:14px;border-left:2px solid var(--rule-thin);display:flex;flex-direction:column;gap:10px}
.cm-reply{display:flex;gap:10px}
.cm-reply-ava{width:30px;height:30px;border-radius:50%;flex:0 0 auto;background:var(--paper-2);object-fit:cover}
.cm-reply-body{flex:1;min-width:0}
.cm-ref{color:var(--muted);font-size:12px;margin-top:8px}
.gb-reply{margin-top:10px;background:var(--paper-2);border:1px solid var(--rule-thin);padding:10px 12px}
.gb-reply-tag{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;margin-bottom:6px}

/* ===== 站点地图 ===== */
.map-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.map-cat{border:1px solid var(--rule-thin);padding:16px;background:var(--paper)}
.map-cat h3{font-family:var(--serif);font-size:16px;font-weight:800;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--ink)}
.map-cat h3 a:hover{color:var(--red)}
.map-children{display:flex;flex-wrap:wrap;gap:8px}
.map-children a{color:var(--ink-2);font-size:13px;padding:4px 11px;border:1px solid var(--rule-thin);transition:.15s}
.map-children a:hover{color:var(--red);border-color:var(--red)}
.map-children a.map-all{color:var(--red);font-weight:700;border-color:var(--red)}

/* ===== 关于我们 ===== */
.about-box{border:1px solid var(--rule-thin);padding:26px;background:var(--paper);max-width:860px}
.about-box p{color:var(--ink-2);font-size:14.5px;line-height:2;margin:0 0 14px}
.about-box p:last-child{margin-bottom:0}
.about-quick{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.about-quick a{display:inline-flex;align-items:center;padding:8px 16px;border:1px solid var(--ink);color:var(--ink);font-size:13px;font-weight:600;transition:.15s}
.about-quick a:hover{background:var(--ink);color:#fff}

/* ===== 空态 / 广告位 ===== */
.empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:70px 20px;text-align:center}
.empty-ico{opacity:.5;color:var(--muted)}
.empty p{font-size:16px;font-weight:700;color:var(--ink)}
.empty span{font-size:13px;color:var(--muted)}
.ad-slot{padding:12px 0}
.ad-slot:empty{display:none}

/* ===== 举报弹窗 ===== */
.report-box{display:flex;justify-content:center;padding:40px 0}
.report-card{background:var(--paper);border:1px solid var(--ink);padding:30px;max-width:520px;width:100%}
.report-ico{font-size:40px;color:var(--red)}
.report-card h2{margin:12px 0 8px;font-size:22px;font-family:var(--serif)}
.report-tip{color:var(--muted);font-size:13px;margin-bottom:14px}
.report-form textarea{width:100%;min-height:80px;background:var(--paper-2);border:1px solid var(--rule-thin);padding:12px;color:var(--ink);font-size:14px;font-family:inherit;resize:vertical}
.report-form textarea:focus{outline:none;border-color:var(--red)}
.report-note{color:var(--muted);font-size:13px;margin-bottom:12px;line-height:1.7}
.report-foot{display:flex;justify-content:flex-end;gap:12px;margin-top:14px}
.report-done{margin-top:14px;color:var(--red);font-weight:700}

/* ===== 404 / 跳转 ===== */
.err{padding:90px 20px;text-align:center}
.err h1{font-family:var(--serif);font-size:72px;font-weight:800;color:var(--red);line-height:1}
.err p{color:var(--muted);margin:18px 0 30px}
.jump-wait{color:var(--muted);font-size:13px;margin-bottom:16px}
.jump-wait b{color:var(--red);margin:0 3px}
.jump-wait a{color:var(--red)}

/* ===== 分集剧情入口（plot 页）===== */
.plot-entry{display:flex;flex-direction:column;align-items:center;text-align:center;padding:52px 28px;background:var(--paper-2);border:1px solid var(--rule-thin)}
.plot-entry-ico{font-size:46px;line-height:1;margin-bottom:14px;color:var(--red)}
.plot-entry p{color:var(--muted);font-size:14px;line-height:1.9;margin:0 0 22px;max-width:520px}
.plot-search{display:flex;gap:10px;width:100%;max-width:440px}
.plot-search input{flex:1;background:#fff;border:1px solid var(--ink);padding:12px 16px;font-size:14px;outline:none;color:var(--ink);transition:.15s}
.plot-search input:focus{border-color:var(--red);box-shadow:0 0 0 2px rgba(220,38,38,.12)}
.plot-search button{background:var(--red);color:#fff;border:none;padding:0 22px;font-size:14px;font-weight:700;cursor:pointer;transition:.15s;white-space:nowrap}
.plot-search button:hover{background:var(--red-d)}
.plot-entry+.plot-list{max-width:880px;margin:14px auto 0}

/* ===== 返回顶部 ===== */
.backtop{position:fixed;right:22px;bottom:32px;width:44px;height:44px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s;box-shadow:0 10px 26px rgba(0,0,0,.28);z-index:90;border:1px solid var(--ink)}
.backtop.show{opacity:1;visibility:visible;transform:translateY(0)}
.backtop:hover{background:var(--red);border-color:var(--red)}

/* ===== 报纸尾版 footer ===== */
.np-footer{margin-top:24px;background:var(--paper);border-top:3px double var(--ink);padding:34px 0 22px}
.np-foot-cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.7fr;gap:30px;padding-bottom:22px;border-bottom:1px solid var(--rule-thin)}
.np-foot-brand{font-family:var(--serif);font-size:24px;font-weight:800;letter-spacing:.1em;margin-bottom:12px}
.np-foot-brand .np-play{color:var(--red)}
.np-foot-blurb{color:var(--muted);font-size:13px;line-height:1.8}
.np-foot-col h4{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--rule-thin)}
.np-foot-col a{display:block;color:var(--muted);font-size:13px;padding:4px 0}
.np-foot-col a:hover{color:var(--red)}
.np-foot-copy{margin-top:18px;color:var(--muted);font-size:12px;line-height:1.9;text-align:center}

/* ===== 兼容 footer（user 中心页沿用 .footer）===== */
.footer{margin-top:24px;background:var(--paper);border-top:3px double var(--ink);padding:28px 0 22px;text-align:center;color:var(--muted);font-size:13px;line-height:2}
.footer .links{margin-bottom:10px}
.footer .links a{margin:0 11px}
.footer .links a:hover{color:var(--red)}
.footer .copy{margin-top:6px;opacity:.75}

/* ===== 排行榜：CSS-only radio tabs ===== */
.rank-tabs{position:relative}
.rank-tabs>input{position:absolute;opacity:0;pointer-events:none}
.rank-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.rank-nav li{list-style:none}
.rank-nav label{display:inline-block;padding:9px 24px;background:var(--paper);border:1.5px solid var(--rule-thin);color:var(--muted);font-size:14px;font-weight:700;cursor:pointer;transition:.16s;user-select:none}
.rank-nav label:hover{color:var(--ink);border-color:var(--ink)}
#rank-day:checked~.rank-nav label[for="rank-day"],
#rank-week:checked~.rank-nav label[for="rank-week"],
#rank-month:checked~.rank-nav label[for="rank-month"],
#rank-total:checked~.rank-nav label[for="rank-total"]{background:var(--red);color:#fff;border-color:var(--red)}
.rank-panel{display:none}
#rank-day:checked~#panel-day,
#rank-week:checked~#panel-week,
#rank-month:checked~#panel-month,
#rank-total:checked~#panel-total{display:block;animation:fadeUp .3s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ===== 用户中心 · 顶栏 ===== */
.u-header{background:var(--paper);border-bottom:2px solid var(--ink)}
.u-header .bar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:56px}
.u-header .logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:19px;font-family:var(--serif);letter-spacing:.08em;white-space:nowrap}
.u-header .logo img{width:28px;height:28px}
.u-crumb{color:var(--muted);font-size:15px;font-weight:600}
.u-head-right{display:flex;align-items:center;gap:12px}
.u-ucard{display:flex;align-items:center;gap:8px}
.u-ucard img{width:30px;height:30px;border-radius:50%;background:var(--paper-2);object-fit:cover}
.u-ucard em{font-style:normal;font-weight:700;font-size:14px}
.u-logout{color:var(--muted);font-size:13px;padding:6px 12px;border:1px solid var(--rule-thin)}
.u-logout:hover{color:var(--red);border-color:var(--red)}
.u-ghost,.u-btn{font-size:13px;padding:7px 16px;border:1px solid var(--ink);color:var(--ink);transition:.15s}
.u-btn{background:var(--red);color:#fff;border-color:var(--red)}
.u-btn:hover{background:var(--red-d)}

/* ===== 用户中心 · 登录/注册/找回 ===== */
.u-auth-wrap{display:flex;justify-content:center;padding:50px 16px 70px}
.u-auth-box{background:var(--paper);border:1px solid var(--ink);padding:34px;width:100%;max-width:420px}
.u-auth-head{text-align:center;margin-bottom:24px;padding-bottom:20px;border-bottom:3px double var(--ink)}
.u-auth-logo{display:inline-block;margin-bottom:12px}
.u-auth-logo img{width:52px;height:52px}
.u-auth-head h2{font-size:22px;font-weight:800;margin-bottom:6px;font-family:var(--serif)}
.u-auth-head p{color:var(--muted);font-size:13px}
.u-field{margin-bottom:16px}
.u-field label{display:block;font-size:13px;color:var(--muted);margin-bottom:7px}
.u-field input{width:100%;background:var(--paper-2);border:1px solid var(--rule-thin);padding:12px 14px;color:var(--ink);font-size:14px;font-family:inherit}
.u-field input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 2px rgba(220,38,38,.12)}
.u-field-code{display:flex;align-items:flex-end;gap:10px}
.u-field-code .u-code-input{flex:1}
.u-code-img{height:44px;border:1px solid var(--rule-thin);cursor:pointer}
.u-auth-btn{width:100%;margin-top:6px;justify-content:center}
.u-auth-links{display:flex;justify-content:center;gap:16px;margin-top:18px;flex-wrap:wrap}
.u-auth-links a{color:var(--muted);font-size:13px}
.u-auth-links a:hover{color:var(--red)}

/* ===== 用户中心 · 布局 ===== */
.u-member{display:flex;gap:20px;padding-top:20px;align-items:flex-start}
.u-left{flex:0 0 240px;width:240px;position:sticky;top:70px}
.u-user{background:var(--paper);border:1px solid var(--rule-thin);padding:20px;text-align:center;margin-bottom:14px}
.u-user-ava{width:72px;height:72px;border-radius:50%;margin-bottom:10px;background:var(--paper-2);object-fit:cover}
.u-user-name{font-size:17px;font-weight:800;font-family:var(--serif)}
.u-user-meta{display:flex;justify-content:center;gap:10px;margin-top:8px;flex-wrap:wrap}
.u-points{background:var(--red);color:#fff;font-size:12px;font-weight:700;padding:3px 10px}
.u-group{color:var(--muted);font-size:12px}
.u-nav{background:var(--paper);border:1px solid var(--rule-thin);padding:8px 0}
.u-nav-t{color:var(--muted);font-size:11px;font-weight:700;padding:10px 16px 4px;letter-spacing:1px}
.u-nav-item{display:block;padding:11px 16px;color:var(--muted);font-size:14px;border-left:3px solid transparent;transition:.15s}
.u-nav-item:hover{color:var(--ink);background:var(--paper-2);border-left-color:var(--red)}
.u-nav-item.active{color:var(--ink);font-weight:700;background:var(--paper-2);border-left-color:var(--red)}
.u-right{flex:1;min-width:0}
.u-panel{background:var(--paper);border:1px solid var(--rule-thin);padding:22px;margin-bottom:18px}
.u-panel-t{font-size:18px;font-weight:800;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid var(--ink);font-family:var(--serif)}
.u-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.u-panel-head .u-panel-t{margin-bottom:0;padding-bottom:0;border:none}
.u-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}
.u-info-grid p{display:flex;flex-direction:column;font-size:14px}
.u-info-grid p span{color:var(--muted);font-size:12px;margin-bottom:3px}
.u-quick{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.u-quick-item{background:var(--paper-2);border:1px solid var(--rule-thin);padding:16px;transition:.16s;display:block}
.u-quick-item:hover{border-color:var(--red);transform:translateY(-2px)}
.u-quick-item b{display:block;font-size:15px;margin-bottom:6px}
.u-quick-item span{color:var(--muted);font-size:12px;line-height:1.6}

/* ===== 用户中心 · 表单/列表 ===== */
.u-form .u-form-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px dashed var(--rule-thin)}
.u-form .u-form-row label{flex:0 0 80px;color:var(--muted);font-size:14px}
.u-form .u-form-row input{flex:1;min-width:0;background:var(--paper-2);border:1px solid var(--rule-thin);padding:10px 13px;color:var(--ink);font-size:14px;font-family:inherit}
.u-form .u-form-row input:focus{outline:none;border-color:var(--red)}
.u-form .u-form-row input:disabled{opacity:.6}
.u-form-tip{color:var(--muted);font-size:12px;line-height:1.7;padding:12px 0}
.u-form-foot{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.u-ulog{display:flex;flex-direction:column;gap:12px}
.u-ulog-item{display:flex;align-items:center;gap:14px;padding:12px;background:var(--paper-2);border:1px solid var(--rule-thin);transition:.15s}
.u-ulog-item:hover{border-color:var(--ink)}
.u-ulog-thumb{flex:0 0 90px;width:60px;height:90px;overflow:hidden;background:var(--paper-2)}
.u-ulog-thumb img{width:100%;height:100%;object-fit:cover}
.u-ulog-info{flex:1;min-width:0}
.u-ulog-name{font-weight:700;font-size:14px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.u-ulog-name:hover{color:var(--red)}
.u-ulog-meta{color:var(--muted);font-size:12px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.u-ulog-del,.u-del-all{flex:0 0 auto;background:none;border:1px solid var(--rule-thin);color:var(--muted);font-size:12px;padding:6px 12px;cursor:pointer;transition:.15s}
.u-del-all{font-size:13px;padding:7px 16px}
.u-ulog-del:hover,.u-del-all:hover{color:var(--red);border-color:var(--red)}
.u-tbl{display:flex;flex-direction:column}
.u-tbl-head,.u-tbl-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 64px;gap:12px;align-items:center;padding:13px 10px;border-bottom:1px solid var(--rule-thin);font-size:14px}
.u-tbl-head{color:var(--muted);font-size:12px;font-weight:700}
.u-tbl-row:last-child{border-bottom:none}
.u-tbl-main{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.u-tbl-val{color:var(--ink)}
.u-tbl-val.plus{color:#2f855a;font-weight:700}
.u-tbl-val.minus{color:var(--red);font-weight:700}
.u-tbl-time{color:var(--muted);font-size:12px}
.u-ok{color:#2f855a;font-style:normal;font-weight:700}
.u-wait{color:var(--gold);font-style:normal;font-weight:700}
.u-pay{background:var(--red);color:#fff;font-size:12px;padding:6px 12px;display:inline-block;white-space:nowrap}
.u-pay:hover{background:var(--red-d)}
.js-fav-done{background:var(--paper-2);color:var(--red);border-color:var(--rule-thin)}

/* ===== 移动菜单 ===== */
.mnav{display:none}

/* ===== 响应式 ===== */
@media (max-width:1024px){
  .grid,.result-grid{grid-template-columns:repeat(4,1fr)}
  .row{grid-template-columns:repeat(4,1fr)}
  section[id^="index-vod"] .row{grid-template-columns:repeat(4,1fr)}
  .pcard-grid{grid-template-columns:repeat(4,1fr)}
  .rank-list{grid-template-columns:repeat(2,1fr)}
  .np-lead{grid-template-columns:1fr 300px}
}
@media (max-width:860px){
  .np-nav a:not(.np-link),.np-nav .np-item{display:none}
  .np-nav .np-search{display:none}
  .hamburger{display:block}
  .mnav{display:block;position:fixed;top:0;right:100%;width:100%;height:100%;background:var(--paper);z-index:99;padding:16px 16px 40px;overflow-y:auto;transition:right .28s ease}
  .mnav.open{right:0}
  .mnav>a{display:block;padding:13px 12px;font-size:16px;font-weight:600;border-bottom:1px solid var(--rule-thin)}
  .mnav>a.active{color:var(--red)}
  .mnav-item>a{display:flex;align-items:center;justify-content:space-between;padding:13px 12px;font-size:16px;font-weight:600;border-bottom:1px solid var(--rule-thin)}
  .mnav-item.active>a{color:var(--red)}
  .mcaret{width:0;height:0;border-top:5px solid currentColor;border-left:5px solid transparent;border-right:5px solid transparent;transition:transform .22s}
  .mnav-item.open>.mcaret{transform:rotate(180deg)}
  .mnav-sub{display:none;padding:2px 0 8px}
  .mnav-item.open .mnav-sub{display:block}
  .mnav-sub a{display:block;font-size:14px;color:var(--muted);padding:10px 12px 10px 24px}
  .mnav-sub a:hover{color:var(--red)}
  .np-lead{grid-template-columns:1fr;gap:20px;padding:20px}
  .np-lead-img{order:1}
  .np-lead-txt{order:2}
  .np-lead-title{font-size:27px}
  .np-cols{grid-template-columns:1fr;gap:22px}
  .grid,.result-grid{grid-template-columns:repeat(3,1fr)}
  .row{grid-template-columns:repeat(3,1fr)}
  section[id^="index-vod"] .row{grid-template-columns:repeat(3,1fr)}
  .np-article-head,.detail-head{flex-direction:column}
  .np-article-cover,.d-cover{flex-basis:auto;width:200px}
  .np-player-title{font-size:20px}
}
@media (max-width:600px){
  .vp97-fields{padding-right:88px}
  .vp97-stamp{top:20px;width:78px;height:78px}
  .vp97-stamp .vp97-s2{font-size:12.5px}
  .vp97-title{font-size:23px}
  .vp97-data{gap:12px 14px}
  .container{padding:0 14px}
  .np-brand{font-size:34px}
  .np-mast-sub{letter-spacing:.12em}
  .grid,.result-grid{grid-template-columns:repeat(2,1fr);gap:16px 12px}
  .row{grid-template-columns:repeat(2,1fr);gap:16px 12px}
  section[id^="index-vod"] .row{grid-template-columns:repeat(2,1fr);gap:16px 12px}
  .pcard-grid{grid-template-columns:repeat(2,1fr)}
  .rank-list{grid-template-columns:1fr}
  .section{padding:22px 0}
  .np-lead{padding:18px}
  .np-lead-title{font-size:24px}
  .np-article,.detail-hero{padding:18px}
  .np-article-title{font-size:24px}
  .np-article-cover,.d-cover{width:160px}
  .np-player{padding:16px}
  .np-foot-cols{grid-template-columns:1fr 1fr;gap:20px}
  .filter{padding:14px 16px}
  .filter-row .fl{flex-basis:38px}
  .err h1{font-size:52px}
}
@media (max-width:900px){
  .u-member{flex-direction:column}
  .u-left{width:100%;flex-basis:auto;position:static}
  .u-form .u-form-row{flex-direction:column;align-items:stretch;gap:8px}
  .u-form .u-form-row label{flex-basis:auto}
}
@media (max-width:600px){
  .u-info-grid,.u-quick{grid-template-columns:1fr}
  .u-tbl-head,.u-tbl-row{grid-template-columns:1.2fr 1fr .9fr 48px}
  .u-ulog-item{flex-wrap:wrap}
  .u-ulog-thumb{flex-basis:70px;width:70px}
  .cm-form-foot{gap:10px}
  .cm-form-foot .btn,.cm-form-foot .np-btn{flex:1;justify-content:center}
  .plot-entry{padding:40px 18px}
  .plot-search{flex-direction:column}
  .plot-search button{padding:11px}
  .about-box{padding:16px 18px}
  .about-box p{font-size:14px}
}

.vp97-body{overflow:hidden}
.vp97-body-bg{position:absolute;inset:-70px;background-size:cover;background-position:center 30%;filter:blur(42px) saturate(1.25) brightness(.78);transform:scale(1.18);z-index:0}
.vp97-body-bg::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,rgba(12,16,24,.9) 0%,rgba(12,16,24,.62) 46%,rgba(12,16,24,.18) 100%)}
.vp97-photo{z-index:2}
.vp97-photo img{object-fit:contain;object-position:right center;transform:none}

.u-auth-form{display:flex;flex-direction:column;gap:14px}
.u-auth-head h2{margin:8px 0 6px;font-family:var(--serif);font-size:25px;font-weight:800;letter-spacing:.02em;line-height:1.2}
.u-auth-head p{margin:0;font-size:12px;color:var(--muted);line-height:1.45}
.u-cash-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 18px}
.gb-list{margin:0;padding:0;list-style:none}
.gb-form{display:flex;flex-direction:column;gap:12px;max-width:620px;margin:0 0 20px}
.header{background:var(--paper);border-top:3px solid var(--ink);border-bottom:1px solid var(--ink)}

:root{--accent:var(--red);--card:#e9e8e3;--line:#d5d5d5;--text:var(--ink)}

.qc-h1 { margin-top: 0.83em; margin-bottom: 0.83em; }
.sec-head h1 { font-family:var(--serif);font-size:25px;font-weight:800;letter-spacing:.02em;line-height:1.2;display:flex;flex-direction:column;gap:4px }
.report-card h1 { margin:12px 0 8px;font-size:22px;font-family:var(--serif) }

h1.np-brand-name { margin: 0; font-size: inherit; font-weight: inherit; }
h2.vp97-title { margin-top: 0.67em; }

.qc-h1-97 { margin-top: 0.83em; margin-bottom: 0.83em; }

h1.u-panel-t { margin-top: 0.83em; }
.u-auth-head h1 { font-size:22px;font-weight:800;margin-bottom:6px;font-family:var(--serif) }
.u-auth-head h1 { margin:8px 0 6px;font-family:var(--serif);font-size:25px;font-weight:800;letter-spacing:.02em;line-height:1.2 }

.u-ucard img{flex:none}

@media(max-width:600px){
  .u-header .bar{gap:8px}
  .u-header .bar{height:46px}
  .header .u-crumb{display:none}
  .header .u-head-right{gap:6px}
  .header .u-logout{white-space:nowrap;font-size:12px}
  .header .u-ghost,.header .u-btn{white-space:nowrap;font-size:12px}
  .header .u-ucard em{white-space:nowrap;font-size:12px}
  .header .u-ucard em{white-space:nowrap;max-width:90px;overflow:hidden;text-overflow:ellipsis}
  .header .u-ucard{gap:6px}
  .header .u-header .logo{font-size:17px}
}

header.header.u-header a.u-logout{color:#383635 !important}
header.header.u-header span.u-crumb{color:#383635 !important}
