



/* ===================== 基础 ===================== */



:root{



  --bg:#0b0b16;



  --bg-2:#10101e;



  --card:#14141f;



  --card-2:#1a1a2b;



  --line:rgba(255,255,255,.08);



  --line-2:rgba(255,255,255,.16);



  --text:#f2f2f8;



  --text-2:#a9a9c2;



  --text-3:#6f6f8a;



  --rose:#ff2e7e;



  --violet:#8b5cf6;



  --grad:linear-gradient(135deg,#ff2e7e 0%,#8b5cf6 100%);



  --grad-soft:linear-gradient(135deg,rgba(255,46,126,.16),rgba(139,92,246,.16));



  --glow:rgba(168,85,247,.38);



  --ok:#34d399;



  --warn:#fbbf24;



  --err:#f87171;



  --r-lg:18px;



  --r-md:13px;



  --r-sm:9px;



  --nav-h:64px;



  --tab-h:60px;



  --sans:"Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;



  --serif:"Noto Serif SC",Georgia,"Songti SC","SimSun",serif;



  --wiki-link:#36c;



  --wiki-line:#a2a9b1;



  --wiki-th:#eaecf0;



  --wiki-bg:#f8f9fa;



}



*{margin:0;padding:0;box-sizing:border-box}



html{-webkit-text-size-adjust:100%}



body{



  background:var(--bg);



  color:var(--text);



  font-family:var(--sans);



  font-size:15px;



  line-height:1.7;



  min-height:100vh;



  overflow-x:hidden;



}



::selection{background:rgba(255,46,126,.35)}



a{color:inherit;text-decoration:none}



button{font-family:inherit;border:none;background:none;color:inherit;cursor:pointer}



input,select,textarea{font-family:inherit;font-size:16px;color:inherit}



img{display:block;max-width:100%}



:focus-visible{outline:2px solid var(--violet);outline-offset:2px;border-radius:4px}



svg{display:block}







/* 颗粒材质层 */



#grain{



  position:fixed;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:1;opacity:.05;



  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E");



}



/* 背景氛围光 */



#ambient{



  position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;



  background:



    radial-gradient(720px 480px at 82% -8%,rgba(139,92,246,.16),transparent 62%),



    radial-gradient(620px 420px at -6% 22%,rgba(255,46,126,.12),transparent 60%),



    radial-gradient(900px 640px at 50% 118%,rgba(56,89,255,.10),transparent 62%);



}



.wrap{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:0 22px}



.wrap-wide{position:relative;z-index:2;max-width:1440px;margin:0 auto;padding:0 22px}







/* ===================== 顶部导航 ===================== */



header#topnav{



  position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:60;



  background:rgba(11,11,22,.66);



  backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);



  border-bottom:1px solid var(--line);



}



.nav-inner{height:var(--nav-h);display:flex;align-items:center;gap:26px}



.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}



.brand-logo{width:34px;height:34px;border-radius:10px;background:var(--grad);display:grid;place-items:center;box-shadow:0 6px 18px -6px var(--glow)}



.brand-name{font-weight:900;font-size:19px;letter-spacing:.5px}



.brand-name em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}



.nav-links{display:flex;gap:4px;flex:1}



.nav-link{



  padding:8px 16px;border-radius:10px;color:var(--text-2);font-weight:500;font-size:15px;



  transition:color .2s,background .2s;



}



.nav-link:hover{color:var(--text);background:rgba(255,255,255,.06)}



.nav-link.active{color:#fff;background:var(--grad-soft);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}



.nav-right{display:flex;align-items:center;gap:12px;margin-left:auto}



/* 移动端：隐藏桌面导航链接（改用底部标签栏），防止顶部溢出 */



@media(max-width:767px){



  .nav-links{display:none}



  .nav-inner{gap:12px}



  .brand-name{font-size:17px}



}



.icon-btn{



  width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:var(--text-2);



  background:rgba(255,255,255,.05);border:1px solid var(--line);transition:.2s;



}



.icon-btn:hover{color:#fff;border-color:var(--line-2);background:rgba(255,255,255,.09)}



.btn{



  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 18px;



  border-radius:12px;font-weight:700;font-size:14px;transition:.22s;cursor:pointer;



}



.btn-primary{background:var(--grad);color:#fff;box-shadow:0 8px 22px -8px var(--glow)}



.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 28px -8px var(--glow)}



.btn-ghost{background:rgba(255,255,255,.06);border:1px solid var(--line-2);color:var(--text)}



.btn-ghost:hover{border-color:var(--violet);color:#fff}



.btn-sm{min-height:32px;padding:0 12px;border-radius:9px;font-size:13px}







/* 头像 */



.avatar-wrap{position:relative}



.avatar{



  width:38px;height:38px;border-radius:50%;background:var(--grad);display:grid;place-items:center;



  font-weight:900;color:#fff;font-size:15px;border:2px solid rgba(255,255,255,.25);cursor:pointer;



}



.avatar-menu{



  position:absolute;right:0;top:48px;min-width:240px;background:#16161f;border:1px solid var(--line-2);



  border-radius:16px;padding:10px;box-shadow:0 24px 60px -12px rgba(0,0,0,.7);display:none;z-index:80;



}



.avatar-menu.open{display:block;animation:popIn .18s ease}



.avatar-menu .am-head{padding:10px 12px;border-bottom:1px solid var(--line);margin-bottom:6px}



.avatar-menu .am-name{font-weight:800;font-size:15px}



.avatar-menu .am-sub{color:var(--text-3);font-size:12.5px}



.avatar-menu .am-item{



  display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--text-2);



  font-size:14px;cursor:pointer;width:100%;text-align:left;



}



.avatar-menu .am-item:hover{background:rgba(255,255,255,.07);color:#fff}



.avatar-menu .am-item .badge-dot{margin-left:auto;width:6px;height:6px;border-radius:50%;background:var(--rose)}







/* ===================== 视图切换 ===================== */



main{position:relative;z-index:2;padding-top:var(--nav-h);padding-bottom:60px;min-height:100vh}



.view{display:none}



.view.active{display:block;animation:viewIn .38s cubic-bezier(.22,1,.36,1)}



@keyframes viewIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}



@keyframes popIn{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}



@keyframes fadeIn{from{opacity:0}to{opacity:1}}



@keyframes riseIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}







/* ===================== 首页 Hero ===================== */



.hero{



  position:relative;overflow:hidden;border-radius:26px;margin:0;



  border:1px solid var(--line-2);



  background:



    radial-gradient(900px 420px at 78% -20%,rgba(139,92,246,.34),transparent 60%),



    radial-gradient(700px 380px at 8% 120%,rgba(255,46,126,.22),transparent 60%),



    linear-gradient(120deg,#12101f 0%,#1a1330 52%,#251438 100%);



  min-height:420px;



}



.hero::after{



  content:"";position:absolute;inset:0;pointer-events:none;



  background:linear-gradient(90deg,rgba(11,11,22,.92) 0%,rgba(11,11,22,.55) 46%,transparent 72%);



}



.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:18px;padding:34px 26px 46px;align-items:center;min-height:420px;height:500px}



.hero-tag{



  display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:6px 14px;border-radius:999px;



  background:var(--grad-soft);border:1px solid rgba(255,255,255,.2);font-size:12.5px;font-weight:700;color:#ffd7e8;



}



.hero-tag .dot{width:7px;height:7px;border-radius:50%;background:var(--rose);box-shadow:0 0 10px var(--rose)}



.hero-title{



  font-family:var(--serif);font-weight:900;font-size:clamp(34px,5.4vw,58px);line-height:1.12;letter-spacing:1px;



  margin:14px 0 6px;



}



.hero-title .grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}



.hero-en{color:var(--text-2);font-weight:500;font-size:15px;letter-spacing:2px;text-transform:uppercase}



.hero-tagline{color:#dcdcf0;font-size:16px;max-width:560px;margin:14px 0 4px;font-weight:500}



.hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}



.meta-chip{



  display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;



  background:rgba(255,255,255,.07);border:1px solid var(--line);font-size:12.5px;color:var(--text-2);



}



.hero-score{display:inline-flex;align-items:center;gap:10px;margin:16px 0 22px}



.hero-score .num{font-size:44px;font-weight:900;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}



.hero-score .cap{color:var(--text-3);font-size:12.5px}



.hero-actions{display:flex;gap:12px;flex-wrap:wrap}



.hero-poster{display:none}



@media(min-width:900px){



  .hero-inner{grid-template-columns:minmax(0,1fr) 300px}



  .hero-poster{display:block;position:relative;z-index:2;justify-self:center;width:280px;height:420px}



  .hero-poster .ph{



    width:280px;aspect-ratio:2/3;border-radius:18px;overflow:hidden;position:relative;



    box-shadow:0 30px 70px -18px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.16);



  }



  .hero-poster img{width:280px;height:420px;object-fit:cover;border-radius:18px;box-shadow:0 24px 60px -20px rgba(0,0,0,.55)}



  .hero-poster .float-badge{



    position:absolute;left:-18px;bottom:26px;background:rgba(16,16,26,.86);backdrop-filter:blur(10px);



    border:1px solid var(--line-2);border-radius:14px;padding:10px 14px;display:flex;align-items:center;gap:8px;



    box-shadow:0 14px 34px -10px rgba(0,0,0,.7);



  }



  .hero-poster .float-badge b{font-size:19px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}



}







/* 统计条 */



.stats-strip{



  display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0;



}



@media(min-width:768px){.stats-strip{grid-template-columns:repeat(4,1fr)}}



.stat-card{



  background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;



  display:flex;flex-direction:column;gap:2px;transition:.22s;



}



.stat-card:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:0 14px 34px -16px var(--glow)}



.stat-card .v{font-size:30px;font-weight:900;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.2}



.stat-card .k{color:var(--text-2);font-size:13px;font-weight:500}







/* 区块 */



.sec{margin-top:44px}



.sec-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}



.sec-title{font-size:22px;font-weight:900;display:flex;align-items:center;gap:12px}



.sec-title::before{content:"";width:5px;height:22px;border-radius:3px;background:var(--grad);box-shadow:0 0 14px var(--glow)}



.sec-more{color:var(--text-2);font-size:13.5px;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:9px;transition:.2s}



.sec-more:hover{color:#fff;background:rgba(255,255,255,.06)}







/* 标签切换 */



.tabs{display:flex;gap:6px;flex-wrap:wrap}



.tab{



  padding:7px 16px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--text-2);



  background:rgba(255,255,255,.05);border:1px solid var(--line);transition:.2s;cursor:pointer;white-space:nowrap;



}



.tab:hover{color:#fff;border-color:var(--line-2)}



.tab.active{color:#fff;background:var(--grad);border-color:transparent;box-shadow:0 8px 20px -8px var(--glow)}



@media(max-width:640px){



  .tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}



  .tabs::-webkit-scrollbar{display:none}



  .tab{flex-shrink:0;padding:7px 14px;font-size:13px}



}







/* 横向滚动区 */



.hscroll{display:flex;gap:16px;overflow-x:auto;padding:6px 2px 16px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}



.hscroll::-webkit-scrollbar{height:8px}



.hscroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:8px}



.hscroll::-webkit-scrollbar-track{background:transparent}



.hscroll .movie-card{flex:0 0 172px;scroll-snap-align:start}







/* ===================== 电影卡片 ===================== */



.movie-grid{



  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px;



}



@media(min-width:640px){.movie-grid{grid-template-columns:repeat(3,1fr)}}



@media(min-width:1000px){.movie-grid{grid-template-columns:repeat(5,1fr)}}



/* 两列时最后一张奇数卡片横跨整行，避免末行孤卡 */



@media(max-width:639px){



  .movie-grid > .movie-card:last-child:nth-child(odd){grid-column:1/-1;flex-basis:auto}



}



.movie-card{



  position:relative;border-radius:var(--r-lg);cursor:pointer;transition:transform .26s cubic-bezier(.22,1,.36,1),box-shadow .26s;



  background:var(--card);border:1px solid var(--line);



}



.movie-card:hover{



  transform:translateY(-6px);



  box-shadow:0 22px 44px -18px var(--glow),0 0 0 1px rgba(255,255,255,.12);



  border-color:transparent;



}



.movie-card:hover .poster-frame::before{opacity:1}



.movie-card:hover .poster-frame img{transform:scale(1.05)}



.poster-frame{



  position:relative;margin:9px 9px 0;border-radius:calc(var(--r-lg) - 6px);overflow:hidden;



  aspect-ratio:2/3;background:#0d0d18;



}



.poster-frame::before{



  content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;



  background:linear-gradient(160deg,rgba(255,46,126,.55),rgba(139,92,246,.45) 55%,transparent 75%);



  opacity:0;transition:opacity .3s;mix-blend-mode:screen;



}



.poster-frame::after{



  content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;



  border:1px solid rgba(255,255,255,.14);



}



.poster-frame img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.22,1,.36,1)}



.score-badge{



  position:absolute;right:8px;top:8px;z-index:3;background:rgba(10,10,18,.82);backdrop-filter:blur(8px);



  border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:3px 9px;font-weight:900;font-size:14.5px;



  color:#ffd166;display:flex;align-items:center;gap:4px;



}



.score-badge::before{content:"★";font-size:11px;color:#ffc93d}



.hot-tag{



  position:absolute;left:8px;top:8px;z-index:3;background:var(--grad);color:#fff;font-size:11px;font-weight:800;



  padding:3px 9px;border-radius:999px;letter-spacing:.5px;box-shadow:0 6px 14px -4px var(--glow);



}



.movie-card .mc-body{padding:11px 13px 14px}



.mc-title{font-size:15.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}



.mc-sub{display:flex;justify-content:space-between;align-items:center;margin-top:5px;color:var(--text-3);font-size:12.5px}



.mc-sub .g{color:var(--violet)}







/* ===================== 电影库工具条 ===================== */



.lib-toolbar{



  display:grid;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);



  padding:16px;margin:24px 0 20px;



}



@media(min-width:900px){.lib-toolbar{grid-template-columns:minmax(220px,1fr) repeat(4,auto);align-items:center}}



.search-box{position:relative}



.search-box svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-3)}



.search-box input{



  width:100%;height:44px;border-radius:12px;border:1px solid var(--line-2);background:rgba(255,255,255,.05);



  padding:0 16px 0 42px;color:var(--text);transition:.2s;



}



.search-box input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(139,92,246,.18)}



.search-box input::placeholder{color:var(--text-3)}



.select-box{position:relative}



.select-box select{



  appearance:none;-webkit-appearance:none;height:44px;border-radius:12px;border:1px solid var(--line-2);



  background:rgba(255,255,255,.05);padding:0 36px 0 14px;color:var(--text);cursor:pointer;min-width:110px;width:100%;



}



.select-box select:focus{outline:none;border-color:var(--violet)}



.select-box::after{



  content:"";position:absolute;right:14px;top:50%;width:8px;height:8px;border-right:2px solid var(--text-2);



  border-bottom:2px solid var(--text-2);transform:translateY(-70%) rotate(45deg);pointer-events:none;



}



.sort-group{display:flex;gap:6px;align-items:center}



.sort-pill{



  padding:7px 13px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text-2);



  background:rgba(255,255,255,.05);border:1px solid var(--line);cursor:pointer;transition:.2s;white-space:nowrap;



}



.sort-pill:hover{color:#fff}



.sort-pill.active{color:#fff;border-color:var(--violet);background:rgba(139,92,246,.16)}



.sort-pill .arr{font-size:11px;margin-left:2px;opacity:.75}



.lib-result{color:var(--text-3);font-size:13px;margin:0 0 14px}



.empty-state{



  text-align:center;padding:70px 20px;color:var(--text-3);border:1px dashed var(--line-2);border-radius:var(--r-lg);



}



.empty-state .big{font-size:44px;margin-bottom:10px;opacity:.6}



.empty-state p{font-size:15px}







/* ===================== 排行榜 ===================== */



.rank-card{



  display:flex;flex-direction:column;gap:14px;background:var(--card);border:1px solid var(--line);



  border-radius:var(--r-lg);padding:18px;margin-top:22px;



}



.rank-list{display:flex;flex-direction:column}



.rank-row{



  display:grid;grid-template-columns:44px 46px minmax(0,1fr) auto auto;align-items:center;gap:14px;



  padding:12px 8px;border-bottom:1px solid var(--line);cursor:pointer;border-radius:12px;transition:background .2s;



}



.rank-row:last-child{border-bottom:none}



.rank-row:hover{background:rgba(255,255,255,.05)}



.rank-no{



  font-size:20px;font-weight:900;color:var(--text-3);text-align:center;font-variant-numeric:tabular-nums;



}



.rank-no.top1{color:#ffd166;text-shadow:0 0 16px rgba(255,209,102,.5)}



.rank-no.top2{color:#c7d3e6}



.rank-no.top3{color:#e8a87c}



.rank-thumb{width:46px;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:#0d0d18;box-shadow:0 4px 12px -4px rgba(0,0,0,.6)}



.rank-thumb img{width:100%;height:100%;object-fit:cover}



.rank-info{min-width:0}



.rank-info .t{font-weight:800;font-size:15.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}



.rank-info .m{color:var(--text-3);font-size:12.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}



.rank-score{text-align:right;min-width:56px}



.rank-score b{font-size:17px;font-weight:900;color:#ffd166}



.rank-score span{display:block;color:var(--text-3);font-size:11px}



.rank-bar{display:none}



@media(min-width:768px){



  .rank-row{grid-template-columns:44px 60px minmax(0,1fr) 150px auto auto}



  .rank-thumb{width:60px}



  .rank-bar{display:block;width:150px;height:7px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden}



  .rank-bar i{display:block;height:100%;border-radius:4px;background:var(--grad);box-shadow:0 0 10px var(--glow)}



}







/* ===================== 影人卡片 ===================== */



.people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}



.people-grid > *{min-width:0}



@media(min-width:640px){.people-grid{grid-template-columns:repeat(3,1fr)}}



@media(min-width:1000px){.people-grid{grid-template-columns:repeat(5,1fr)}}



.person-card{



  background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 16px 16px;



  display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;



  transition:transform .26s cubic-bezier(.22,1,.36,1),box-shadow .26s,border-color .26s;



}



.person-card:hover{transform:translateY(-6px);border-color:transparent;box-shadow:0 22px 44px -18px var(--glow),0 0 0 1px rgba(255,255,255,.12)}



.p-avatar{



  width:92px;height:92px;border-radius:50%;overflow:hidden;border:3px solid transparent;position:relative;



  background:linear-gradient(#14141f,#14141f) padding-box,var(--grad) border-box;



  margin-bottom:12px;box-shadow:0 10px 26px -10px rgba(0,0,0,.7);



}



.p-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}



.p-role{



  position:absolute;bottom:-2px;left:50%;transform:translateX(-50%);background:var(--grad);color:#fff;



  font-size:10.5px;font-weight:800;padding:2px 10px;border-radius:999px;white-space:nowrap;



}



.p-name{font-size:16px;font-weight:800}



.p-en{color:var(--text-3);font-size:11.5px;margin-top:1px;letter-spacing:.3px}



.p-works{color:var(--text-2);font-size:12.5px;margin-top:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}







/* ===================== 页脚 ===================== */



footer.site-footer{



  position:relative;z-index:2;border-top:1px solid var(--line);margin-top:70px;background:rgba(255,255,255,.02);



  padding:40px 0 90px;



}



@media(min-width:768px){footer.site-footer{padding:40px 0 34px}}



.footer-grid{display:grid;gap:26px;grid-template-columns:1fr}



@media(min-width:820px){.footer-grid{grid-template-columns:1.4fr 1fr}}



.footer-grid h4{font-size:14px;font-weight:800;margin-bottom:12px;color:var(--text)}



.footer-grid p,.footer-grid a{color:var(--text-3);font-size:13px;line-height:2}



.footer-grid a:hover{color:#fff}



.footer-links{display:flex;flex-direction:column}



.footer-note{color:var(--text-3);font-size:12px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}







/* ===================== 移动端底部标签栏 ===================== */



#tabbar{



  position:fixed;left:0;right:0;bottom:0;z-index:59;height:calc(var(--tab-h) + env(safe-area-inset-bottom));



  padding-bottom:env(safe-area-inset-bottom);



  background:rgba(11,11,22,.82);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);



  border-top:1px solid var(--line);display:flex;display:none;



}



#tabbar .tb-item{



  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;



  color:var(--text-3);font-size:11px;font-weight:600;cursor:pointer;transition:.2s;



}



#tabbar .tb-item.active{color:#fff}



#tabbar .tb-item.active svg{filter:drop-shadow(0 0 8px var(--glow))}



@media(max-width:767px){



  #tabbar{display:flex}



  main{padding-bottom:110px}



  footer.site-footer{padding-bottom:110px}



}







/* ===================== 通用弹窗 ===================== */



.overlay{



  position:fixed;inset:0;z-index:100;display:none;align-items:flex-start;justify-content:center;



  background:rgba(6,6,12,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);



  overflow-y:auto;padding:0;



}



.overlay.open{display:flex;animation:fadeIn .22s ease}



.overlay.close{animation:fadeOut .18s ease}



@keyframes fadeOut{from{opacity:1}to{opacity:0}}



.overlay .panel{animation:panelIn .3s cubic-bezier(.22,1,.36,1)}



@keyframes panelIn{from{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}







/* ===================== 维基式词条弹窗 ===================== */



#wikiOverlay{align-items:flex-start;padding:14px 0}



.wiki-panel{



  width:min(1080px,100%);min-height:calc(100vh - 28px);margin:0 auto;



  background:#fff;color:#202122;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;



  box-shadow:0 40px 120px -20px rgba(0,0,0,.85);



}



.wiki-top{



  display:flex;align-items:center;gap:12px;padding:14px 22px;border-bottom:1px solid var(--wiki-line);



  background:#fefefe;position:sticky;top:0;z-index:5;



}



.wiki-top .crumb{color:#54595d;font-size:12.5px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}



.wiki-top .crumb a{color:var(--wiki-link)}



.wiki-top .close{



  width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#54595d;flex-shrink:0;



  transition:.2s;



}



.wiki-top .close:hover{background:#eaecf0;color:#202122}



.wiki-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1}



.wiki-scroll::-webkit-scrollbar{width:11px}



.wiki-scroll::-webkit-scrollbar-thumb{background:#c8ccd1;border-radius:6px;border:3px solid #fff}



.wiki-article{max-width:860px;margin:0 auto;padding:30px 22px 40px}



.wiki-article h1{



  font-family:var(--serif);font-size:30px;line-height:1.3;border-bottom:1px solid var(--wiki-line);



  padding-bottom:10px;margin-bottom:4px;



}



.wiki-article h2{



  font-family:var(--serif);font-size:21px;border-bottom:1px solid var(--wiki-line);padding-bottom:6px;



  margin:34px 0 14px;



}



.wiki-article h2 .anchor{scroll-margin-top:70px}



.wiki-lead{color:#3a3c40;font-size:15.5px;line-height:1.8;margin:10px 0 16px}



.wiki-body{display:grid;grid-template-columns:minmax(0,1fr);gap:26px}



@media(min-width:860px){.wiki-body{grid-template-columns:minmax(0,1fr) 316px}}



.wiki-main{min-width:0}



.wiki-main p{margin:12px 0;line-height:1.95;font-size:15px}



.wiki-main p.lead{font-size:15.5px;color:#202122}



sup.ref{



  font-size:11px;color:var(--wiki-link);margin-left:2px;cursor:pointer;user-select:none;



}



sup.ref:hover{text-decoration:underline}







/* TOC */



.toc-box{



  border:1px solid var(--wiki-line);background:var(--wiki-bg);border-radius:8px;padding:12px 16px;margin:18px 0;



  display:inline-block;min-width:230px;



}



.toc-box .toc-head{



  display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700;font-size:14px;user-select:none;



  justify-content:space-between;



}



.toc-box .toc-head .toc-toggle{color:#54595d;font-size:12px;transition:transform .2s}



.toc-box.closed .toc-toggle{transform:rotate(-90deg)}



.toc-list{margin-top:8px;padding-left:0;list-style:none;border-top:1px solid var(--wiki-line);padding-top:8px}



.toc-box.closed .toc-list{display:none}



.toc-list li{line-height:1.9}



.toc-list li.lv2{padding-left:14px;font-size:13px;color:#54595d}



.toc-list a{color:var(--wiki-link)}



.toc-list a:hover{text-decoration:underline}







/* Infobox */



.infobox{



  border:1px solid var(--wiki-line);background:var(--wiki-bg);font-size:13px;align-self:start;



  border-radius:8px;overflow:hidden;



}



.infobox .ib-title{background:#eaecf0;text-align:center;font-weight:800;padding:9px 10px;font-size:15px}



.infobox .ib-img{background:#fff;text-align:center;padding:8px}



.infobox .ib-img img{width:190px;max-width:100%;margin:0 auto;border:1px solid #c8ccd1;border-radius:4px}



.infobox .ib-cap{font-size:12px;color:#54595d;margin-top:4px}



.infobox table{width:100%;border-collapse:collapse}



.infobox th,.infobox td{



  border-top:1px solid var(--wiki-line);padding:7px 10px;vertical-align:top;line-height:1.6;text-align:left;



}



.infobox th{font-weight:700;width:84px;background:transparent;color:#202122}



.infobox td{color:#333}



.infobox a{color:var(--wiki-link)}



.infobox .ib-score{



  display:flex;align-items:baseline;gap:6px;



}



.infobox .ib-score b{font-size:26px;color:#b8860b;font-weight:900}



.infobox .ib-score span{color:#54595d;font-size:12px}







/* wikitable */



.wikitable{



  width:100%;border-collapse:collapse;font-size:14px;margin:10px 0;table-layout:fixed;



}



.wikitable th,.wikitable td{border:1px solid var(--wiki-line);padding:7px 10px;text-align:left;line-height:1.6;vertical-align:top}



.wikitable th{background:var(--wiki-th);font-weight:700}



.wikitable tr:nth-child(2n) td{background:#f8f9fa}



.wikitable a{color:var(--wiki-link)}



.wikitable td.res-ok{color:#1a7f37;font-weight:700}



.wikitable td.res-no{color:#b02a37;font-weight:700}







/* 短评 */



.review-list{display:grid;gap:10px}



.review{



  border:1px solid #d9dde1;border-radius:8px;padding:12px 14px;background:#fcfcfd;



}



.review .rv-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}



.review .rv-user{font-weight:700;font-size:13.5px}



.review .rv-stars{color:#f5a623;font-size:12px;letter-spacing:1px}



.review .rv-stars .off{color:#d5d9de}



.review p{font-size:14px;color:#333;line-height:1.8}







/* 评分分布 */



.dist-bars{display:grid;gap:8px;margin:12px 0}



.dist-row{display:grid;grid-template-columns:52px minmax(0,1fr) 44px;align-items:center;gap:10px;font-size:13px}



.dist-row .lbl{color:#54595d;white-space:nowrap}



.dist-row .lbl b{color:#202122}



.dist-track{height:12px;border-radius:6px;background:#eaecf0;overflow:hidden}



.dist-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,#ffc93d,#f5a623)}



.dist-row .pct{color:#54595d;text-align:right;font-variant-numeric:tabular-nums}







/* 参见 & 分类 */



.seealso{display:flex;flex-wrap:wrap;gap:8px}



.seealso a{



  border:1px solid #c8ccd1;background:#f8f9fa;color:var(--wiki-link);border-radius:999px;



  padding:5px 14px;font-size:13px;transition:.2s;



}



.seealso a:hover{border-color:var(--wiki-link);background:#eaf3ff}



.cat-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}



.cat-tags span{



  border:1px solid #c8ccd1;background:#fff;color:#54595d;border-radius:999px;padding:3px 12px;font-size:12px;



}



.refs-list{font-size:13px;color:#333}



.refs-list ol{padding-left:24px}



.refs-list li{margin:6px 0;word-break:break-all}



.refs-list a{color:var(--wiki-link)}



.wiki-footer{



  margin-top:36px;border-top:1px solid var(--wiki-line);padding-top:14px;font-size:12.5px;color:#54595d;



  display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;



}







/* 词条内人物/影片内链卡片 */



.mini-card{



  display:inline-flex;align-items:center;gap:8px;border:1px solid #d9dde1;border-radius:8px;padding:6px 12px 6px 6px;



  background:#f8f9fa;color:#202122;transition:.2s;margin:0 8px 8px 0;



}



.mini-card:hover{border-color:var(--wiki-link);box-shadow:0 4px 14px -6px rgba(51,102,204,.35)}



.mini-card img{width:36px;height:48px;object-fit:cover;border-radius:5px}



.mini-card .t{font-size:13px;font-weight:700}



.mini-card .s{font-size:11.5px;color:#54595d;display:block}







/* 统计卡（影人词条） */



.wiki-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:8px 0 4px}



@media(min-width:560px){.wiki-stats{grid-template-columns:repeat(4,1fr)}}



.ws-card{



  border:1px solid #d9dde1;border-radius:10px;padding:12px;text-align:center;background:#fcfcfd;



}



.ws-card b{font-size:22px;font-weight:900;background:linear-gradient(135deg,#ff2e7e,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent;display:block}



.ws-card span{font-size:12px;color:#54595d}







/* ===================== 登录弹窗 ===================== */



#loginOverlay{align-items:center;padding:20px}



.login-panel{



  width:min(420px,100%);background:#14141f;border:1px solid var(--line-2);border-radius:24px;padding:30px 28px 26px;



  box-shadow:0 40px 100px -20px rgba(0,0,0,.8);position:relative;



}



.login-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}



.login-head h3{font-size:22px;font-weight:900;display:flex;align-items:center;gap:10px}



.login-head h3 .logo-mini{width:30px;height:30px;border-radius:9px;background:var(--grad);display:grid;place-items:center}



.login-sub{color:var(--text-3);font-size:13px;margin-bottom:18px}



.ltabs{display:grid;grid-template-columns:1fr 1fr;background:rgba(255,255,255,.05);border-radius:12px;padding:4px;margin-bottom:20px}



.ltab{padding:9px;text-align:center;border-radius:9px;font-weight:700;font-size:14px;color:var(--text-2);cursor:pointer;transition:.2s}



.ltab.active{background:var(--grad);color:#fff;box-shadow:0 8px 18px -8px var(--glow)}



.field{margin-bottom:15px}



.field label{display:block;font-size:13px;font-weight:600;color:var(--text-2);margin-bottom:7px}



.field .input-wrap{position:relative;display:flex;align-items:center}



.field input{



  width:100%;height:46px;border-radius:12px;border:1px solid var(--line-2);background:rgba(255,255,255,.05);



  padding:0 14px;color:var(--text);transition:.2s;



}



.field input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(139,92,246,.18)}



.field input.err{border-color:var(--err)}



.field .eye-btn{position:absolute;right:6px;width:38px;height:38px;display:grid;place-items:center;color:var(--text-3)}



.field .code-btn{



  position:absolute;right:6px;top:50%;transform:translateY(-50%);background:rgba(139,92,246,.16);color:#c4b5fd;



  border:1px solid rgba(139,92,246,.4);font-size:12.5px;font-weight:700;padding:8px 12px;border-radius:9px;



  transition:.2s;white-space:nowrap;



}



.field .code-btn:disabled{opacity:.5;cursor:not-allowed}



.field .hint{font-size:12px;color:var(--err);margin-top:5px;display:none}



.field .hint.show{display:block}



.field-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--text-2);margin:2px 0 18px}



.checkbox{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none}



.checkbox input{width:16px;height:16px;accent-color:var(--violet)}



.link-btn{color:#c4b5fd;font-size:13px;cursor:pointer}



.link-btn:hover{text-decoration:underline}



.login-submit{



  width:100%;height:48px;border-radius:13px;background:var(--grad);color:#fff;font-weight:800;font-size:15.5px;



  box-shadow:0 10px 26px -10px var(--glow);transition:.2s;



}



.login-submit:hover{transform:translateY(-1px);box-shadow:0 14px 30px -10px var(--glow)}



.login-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}



.agree-line{font-size:12px;color:var(--text-3);text-align:center;margin-top:16px;line-height:1.8}



.agree-line a{color:#c4b5fd}







/* 足迹面板 */



.history-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}



.history-item{



  display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;cursor:pointer;



  transition:background .2s;



}



.history-item:hover{background:rgba(255,255,255,.06)}



.history-item img{width:34px;aspect-ratio:2/3;object-fit:cover;border-radius:6px}



.history-item .t{font-size:13.5px;font-weight:700}



.history-item .s{font-size:11.5px;color:var(--text-3)}



.history-empty{color:var(--text-3);font-size:13px;text-align:center;padding:16px 0}







/* ===================== Toast ===================== */



#toasts{position:fixed;top:calc(var(--nav-h) + 14px);left:50%;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;gap:10px;align-items:center;pointer-events:none}



.toast{



  background:rgba(22,22,31,.94);border:1px solid var(--line-2);color:var(--text);border-radius:13px;



  padding:11px 20px;font-size:14px;font-weight:600;box-shadow:0 18px 44px -12px rgba(0,0,0,.7);



  display:flex;align-items:center;gap:9px;animation:toastIn .3s cubic-bezier(.22,1,.36,1);max-width:88vw;



}



.toast.ok{border-color:rgba(52,211,153,.5)}



.toast.ok .t-ic{color:var(--ok)}



.toast.err{border-color:rgba(248,113,113,.5)}



.toast.err .t-ic{color:var(--err)}



.toast .t-ic{color:#c4b5fd}



@keyframes toastIn{from{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:none}}







/* 无障碍动效降级 */



@media(prefers-reduced-motion:reduce){



  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}



}







/* ===== 多页版补充样式 ===== */



.page-main{min-height:70vh}



.page-wiki{padding:40px 0 50px}



.page-wiki .wiki-panel{min-height:0;margin-top:10px;margin-bottom:0}



.page-wiki .wiki-top{top:72px;border-radius:20px 20px 0 0}



.page-wiki .wiki-top .close{display:none}



.wiki-main h2{scroll-margin-top:120px}



.toc-list a{color:var(--wiki-link,#36c)}



/* 榜单 / 影人切换 */



.rank-hidden{display:none}



.people-hidden{display:none}



/* 登录页 */



.auth-page{padding:120px 20px 70px;display:flex;justify-content:center}



.auth-card{width:100%;max-width:420px;background:var(--card,#17152a);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:18px;padding:26px;box-shadow:0 24px 60px rgba(0,0,0,.4)}



.auth-tabs{display:flex;gap:6px;margin-bottom:20px;background:rgba(255,255,255,.05);border-radius:11px;padding:4px}



.atab{flex:1;padding:9px;border:none;background:none;color:var(--text-3,#847d9c);cursor:pointer;font-size:14px;font-family:inherit;border-radius:8px;transition:.2s}



.atab.active{background:linear-gradient(135deg,var(--accent,#ff2e7e),var(--accent2,#8b5cf6));color:#fff}



.af-item{margin-bottom:14px}



.af-item label{display:block;font-size:12.5px;color:var(--text-3,#847d9c);margin-bottom:6px}



.af-item input{width:100%;background:rgba(255,255,255,.06);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:10px;padding:11px 13px;color:var(--text,#f2f2f8);font-size:14px;outline:none;font-family:inherit;box-sizing:border-box}



.af-item input:focus{border-color:var(--accent2,#8b5cf6)}



.auth-msg{padding:9px 13px;border-radius:9px;font-size:13px;margin-bottom:14px}



.auth-msg.err{background:rgba(244,63,94,.12);color:#ff8fa3}



.auth-msg.ok{background:rgba(45,212,167,.12);color:#6ee7c0}



.auth-tip{color:var(--text-3,#847d9c);font-size:12.5px;text-align:center;margin-top:14px}



/* 头像菜单 */



.avatar-wrap{position:relative}



.avatar-mini{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent,#ff2e7e),var(--accent2,#8b5cf6));display:grid;place-items:center;font-weight:700;font-size:14px;cursor:pointer;color:#fff}



.avatar-menu{position:absolute;right:0;top:44px;min-width:190px;background:var(--card,#17152a);border:1px solid rgba(255,255,255,.1);border-radius:13px;padding:10px;display:none;z-index:60;box-shadow:0 18px 44px rgba(0,0,0,.5)}



.avatar-menu.show{display:block}



.am-head{padding:8px 10px 10px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:6px}



.am-name{font-weight:600;font-size:14px}



.am-sub{color:var(--text-3,#847d9c);font-size:12px;margin-top:2px}



.am-item{display:block;padding:9px 10px;border-radius:9px;font-size:13.5px;color:var(--text-2,#b7b0cc);text-decoration:none}



.am-item:hover{background:rgba(255,255,255,.06);color:var(--text,#f2f2f8)}



/* 电影库工具栏 */



.lib-toolbar{margin:6px 0 22px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}



.lib-search{flex:1;min-width:220px;background:rgba(255,255,255,.06);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:11px;padding:11px 15px;color:var(--text,#f2f2f8);font-size:14px;outline:none;font-family:inherit}



.lib-search:focus{border-color:var(--accent2,#8b5cf6)}



.lib-filters{display:flex;gap:10px;flex-wrap:wrap}



.select-box{background:rgba(255,255,255,.06);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:10px;padding:10px 13px;color:var(--text,#f2f2f8);font-size:13.5px;outline:none;font-family:inherit}



.select-box option{background:var(--card,#17152a);color:var(--text,#f2f2f8)}



.lib-empty{text-align:center;color:var(--text-3,#847d9c);padding:40px 0;font-size:14px}



.sec-count{color:var(--text-3,#847d9c);font-size:13.5px;margin-left:6px}



/* TOC 折叠 */



.toc-box.collapsed .toc-list{display:none}



/* 移动端 */



@media(max-width:760px){



  .page-wiki{padding:24px 0 44px}



  .page-wiki .wiki-top{top:66px}



  .lib-toolbar{flex-direction:column;align-items:stretch}



  .lib-filters{display:grid;grid-template-columns:1fr 1fr}



  .auth-page{padding:100px 16px 60px}



}







/* ===== 维基词条详情页：暗色版（与全站主题一致） ===== */



.page-wiki{--wiki-link:#8ab4f8;--wiki-line:rgba(255,255,255,.14);--wiki-th:rgba(255,255,255,.07);--wiki-bg:rgba(255,255,255,.045)}



.page-wiki .wiki-panel{background:#14141f;border:1px solid rgba(255,255,255,.09);box-shadow:0 30px 80px rgba(0,0,0,.5)}



.page-wiki .wiki-article{color:#e8e6f2}



.page-wiki .wiki-top{background:#1a1728;border-bottom:1px solid var(--wiki-line)}



.page-wiki .wiki-top .crumb{color:#b7b0cc}



.page-wiki .wiki-article h1{color:#f2eef9;border-bottom-color:var(--wiki-line)}



.page-wiki .wiki-article h2{color:#f2eef9;border-bottom-color:var(--wiki-line)}



.page-wiki .wiki-article p{color:#d6d2e4}



.page-wiki .wiki-lead{color:#b7b0cc}



.page-wiki .toc-box{background:var(--wiki-bg);border-color:var(--wiki-line)}



.page-wiki .toc-box .toc-head{color:#d6d2e4}



.page-wiki .toc-list{border-top-color:var(--wiki-line)}



.page-wiki .toc-list a{color:var(--wiki-link)}



.page-wiki .infobox{background:var(--wiki-bg);border-color:var(--wiki-line)}



.page-wiki .infobox .ib-title{background:#221e3a;color:#f2eef9}



.page-wiki .infobox th,.page-wiki .infobox td{border-top-color:var(--wiki-line)}



.page-wiki .infobox th{color:#b7b0cc}



.page-wiki .infobox td{color:#d6d2e4}



.page-wiki .infobox .ib-cap{color:#847d9c}



.page-wiki .infobox .ib-score b{color:#f2eef9}



.page-wiki .infobox .ib-score span{color:#847d9c}



.page-wiki .wikitable th,.page-wiki .wikitable td{border-color:var(--wiki-line);color:#d6d2e4}



.page-wiki .wikitable th{background:var(--wiki-th)}



.page-wiki .wikitable tr:nth-child(2n) td{background:rgba(255,255,255,.03)}



.page-wiki .wikitable td.res-ok{color:#3ddc97}



.page-wiki .wikitable td.res-no{color:#ff8fa3}



.page-wiki .review{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.1)}



.page-wiki .review .rv-user{color:#e8e6f2}



.page-wiki .review .rv-stars{color:#ffc93d}



.page-wiki .review p{color:#cfcadf}



.page-wiki .dist-row .lbl{color:#b7b0cc}



.page-wiki .dist-track{background:#2a2740}



.page-wiki .dist-row .pct{color:#b7b0cc}



.page-wiki .see-chip,.page-wiki .mini-chip{background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.32);color:#c4b5fd}



.page-wiki .see-chip:hover,.page-wiki .mini-chip:hover{background:rgba(139,92,246,.22);border-color:#8b5cf6}



.page-wiki .seealso a{background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.32);color:#c4b5fd}



.page-wiki .seealso a:hover{background:rgba(139,92,246,.22);border-color:#8b5cf6}



.page-wiki .cat-tags span{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:#b7b0cc}



.page-wiki .refs-list{color:#cfcadf}



.page-wiki .refs-list a{color:var(--wiki-link)}



.page-wiki .wiki-footer{border-top-color:var(--wiki-line);color:#847d9c}



.page-wiki .mini-card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);color:#e8e6f2}



.page-wiki .mini-card:hover{border-color:#8b5cf6;box-shadow:0 4px 16px -6px rgba(139,92,246,.5)}



.page-wiki .mini-card .s{color:#847d9c}



.page-wiki sup.ref{color:var(--wiki-link)}



.page-wiki .wiki-main h2 .anchor{color:#f2eef9}







/* ===== 详情页排版优化 v2 ===== */



.page-wiki .wiki-panel{background:linear-gradient(180deg,#181527 0%,#14141f 100%)}







/* 标题区 + 头部徽章 */



.page-wiki .wiki-article h1{font-size:33px;letter-spacing:.5px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08);position:relative}



.page-wiki .wiki-article h1::after{content:"";position:absolute;left:0;bottom:-1px;width:160px;height:2px;border-radius:2px;background:linear-gradient(90deg,#ff2e7e,#8b5cf6)}



.page-wiki .head-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 2px}



.page-wiki .head-chips span{background:rgba(139,92,246,.13);border:1px solid rgba(139,92,246,.32);color:#d8c8ff;border-radius:999px;padding:3px 13px;font-size:12.5px;font-weight:600;letter-spacing:.3px}







/* 导语 */



.page-wiki .wiki-lead{font-size:15.5px;line-height:1.95;color:#cfcadf;margin:14px 0 18px;padding-left:14px;border-left:3px solid rgba(139,92,246,.55)}







/* TOC 目录 */



.page-wiki .toc-box{border-radius:12px;padding:14px 18px;min-width:280px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.028));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}



.page-wiki .toc-box .toc-head{font-size:14.5px;color:#f2eef9;letter-spacing:.5px}



.page-wiki .toc-box .toc-toggle{color:#9a93b8;transition:transform .25s}



.page-wiki .toc-list{margin-top:10px;padding-top:10px}



.page-wiki .toc-list a{display:block;padding:3px 10px;border-radius:7px;transition:background .18s,color .18s,padding-left .18s;font-size:13.5px}



.page-wiki .toc-list a:hover{background:rgba(139,92,246,.17);text-decoration:none;color:#fff;padding-left:14px}







/* 章节标题：渐变竖线 */



.page-wiki .wiki-article h2{font-size:22px;margin:36px 0 16px;padding:0 0 8px 14px;border-bottom:1px solid rgba(255,255,255,.09);position:relative}



.page-wiki .wiki-article h2::before{content:"";position:absolute;left:0;top:3px;bottom:11px;width:4px;border-radius:4px;background:linear-gradient(180deg,#ff2e7e,#8b5cf6)}







/* 正文段落 */



.page-wiki .wiki-main p{line-height:2;font-size:15px;color:#d6d2e4}







/* 表格 */



.page-wiki .wikitable{border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.09);box-shadow:0 10px 28px -14px rgba(0,0,0,.55);margin:12px 0 8px}



.page-wiki .wikitable th{background:rgba(139,92,246,.16);color:#ece6fb;font-weight:700;border:none;padding:9px 12px}



.page-wiki .wikitable td{border-color:rgba(255,255,255,.07);padding:9px 12px}



.page-wiki .wikitable tr:nth-child(2n) td{background:rgba(255,255,255,.028)}



.page-wiki .wikitable tr:hover td{background:rgba(255,46,126,.05)}



.page-wiki .wikitable td.res-ok{color:#3ddc97;font-weight:700;white-space:nowrap}



.page-wiki .wikitable td.res-no{color:#ff8fa3;font-weight:700;white-space:nowrap}







/* 短评 */



.page-wiki .review{border-radius:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));transition:transform .2s,border-color .2s}



.page-wiki .review:hover{transform:translateY(-2px);border-color:rgba(139,92,246,.4)}



.page-wiki .review .rv-user{display:inline-flex;align-items:center;gap:8px;color:#f2eef9;font-size:13.5px}



.page-wiki .review .rv-user::before{content:attr(data-initial);width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(135deg,#ff2e7e,#8b5cf6)}



.page-wiki .review .rv-stars{color:#ffc93d}



.page-wiki .review p{font-size:14px;color:#cfcadf}







/* 评分分布 */



.page-wiki .dist-row{grid-template-columns:56px minmax(0,1fr) 48px;gap:12px;font-size:13.5px}



.page-wiki .dist-row .lbl{color:#9a93b8}



.page-wiki .dist-row .lbl b{color:#f2eef9}



.page-wiki .dist-track{height:14px;border-radius:8px;background:rgba(255,255,255,.08)}



.page-wiki .dist-fill{border-radius:8px;background:linear-gradient(90deg,#ff2e7e,#8b5cf6)}



.page-wiki .dist-row .pct{color:#d8d0ea;font-weight:700;font-variant-numeric:tabular-nums}







/* 参见 / 分类标签 */



.page-wiki .wk-sub{color:#9a93b8;font-size:13px;margin:8px 0 10px;font-weight:500;letter-spacing:.3px}



.page-wiki .seealso a{transition:transform .2s,box-shadow .2s,border-color .2s}



.page-wiki .seealso a:hover{transform:translateY(-2px);box-shadow:0 8px 18px -8px rgba(139,92,246,.55)}



.page-wiki .cat-tags span{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);color:#b7b0cc}







/* Infobox 信息卡：sticky 跟随 + 精致化 */



.page-wiki .infobox{position:sticky;top:88px;align-self:start;border-radius:14px;box-shadow:0 22px 50px -20px rgba(0,0,0,.65)}



.page-wiki .infobox .ib-title{background:linear-gradient(135deg,rgba(255,46,126,.92),rgba(139,92,246,.92));color:#fff;font-size:16px;padding:12px 10px;letter-spacing:.6px;border-bottom:1px solid rgba(255,255,255,.14)}



.page-wiki .infobox .ib-img{background:rgba(0,0,0,.28);padding:12px 12px 6px}



.page-wiki .infobox .ib-img img{width:200px;border:1px solid rgba(255,255,255,.18);border-radius:10px;box-shadow:0 12px 26px -10px rgba(0,0,0,.8)}



.page-wiki .infobox .ib-cap{color:#847d9c;font-size:11.5px;margin-top:6px}



.page-wiki .infobox th,.page-wiki .infobox td{padding:8px 11px;line-height:1.65}



.page-wiki .infobox th{width:96px;padding:8px 8px;color:#9a93b8;font-weight:600;white-space:nowrap}



.page-wiki .infobox td{color:#e2deef}



.page-wiki .infobox .ib-score{flex-direction:column;align-items:flex-start;gap:3px}



.page-wiki .infobox .ib-score b{font-size:30px;line-height:1.1;font-weight:900;background:linear-gradient(120deg,#ffd166,#ff9f43);-webkit-background-clip:text;background-clip:text;color:transparent}



.page-wiki .infobox .ib-score span{color:#847d9c;font-size:12px}







/* 影人数据统计卡片 */



.page-wiki .wiki-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}



.page-wiki .ws-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:14px 10px;text-align:center}



.page-wiki .ws-card b{display:block;font-size:22px;font-weight:900;background:linear-gradient(120deg,#ff2e7e,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:4px}



.page-wiki .ws-card span{color:#9a93b8;font-size:12px}







/* 页脚标注 */



.page-wiki .wiki-footer{font-size:12.5px;color:#847d9c}







/* 详情页宽度统一：与全站 1280px 容器及导航对齐，消除右列留白 */



.page-wiki .wiki-panel{width:min(1280px,100%)}



.page-wiki .wiki-article{max-width:none}



@media(min-width:860px){.page-wiki .wiki-body{grid-template-columns:minmax(0,1fr) 320px}}







/* 顶部间距收紧：导航与正文间隙、面包屑条瘦身 */



.page-wiki{padding-top:24px;padding-bottom:16px}



.page-wiki .wiki-panel{margin-top:8px;margin-bottom:0}



.page-wiki .wiki-article{padding-bottom:24px}



body.page-detail main{padding-bottom:20px}



body.page-detail footer.site-footer{margin-top:16px;padding-top:24px}



.page-wiki .wiki-top{position:static;top:72px;padding:9px 22px}



.page-wiki .wiki-top .crumb{font-size:13px}







/* 移动端：信息框不 sticky，并提前到正文之前（片名+封面置顶） */



@media(max-width:860px){



  .page-wiki .infobox{position:static;order:-1;margin-bottom:24px}



  .page-wiki .wiki-stats{grid-template-columns:repeat(2,1fr)}



}







/* ===== 广告位（对接百度联盟等 JS 广告代码） ===== */



.ad-box{margin:20px 0;display:flex;flex-direction:column;align-items:center;gap:5px}



.ad-label{font-size:11px;color:rgba(255,255,255,.32);letter-spacing:.28em;font-weight:500}



.ad-inner{max-width:100%;overflow:hidden;display:flex;justify-content:center}



.ad-inner iframe{max-width:100%}



/* 平台控制：仅 PC / 仅移动 / 通用 */



.ad-pc{display:none}



@media(min-width:768px){.ad-pc{display:flex}}



.ad-mobile{display:flex}



@media(min-width:768px){.ad-mobile{display:none}}



.ad-all{display:flex}



/* 详情页内广告位适配 */



.page-wiki .wiki-main .ad-box{margin:20px 0 26px}



.page-wiki .infobox .ad-box{margin:10px 10px 0;background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.12);border-radius:10px;padding:8px 6px 6px}



.page-wiki .infobox .ad-box .ad-label{color:rgba(255,255,255,.3)}



/* 栏目列表内（第 6 项后）广告占满整行 */



.movie-grid .ad-box{grid-column:1/-1;margin:18px 0}



.people-grid .ad-box{grid-column:1/-1;margin:18px 0}



.rank-list .ad-box{margin:16px 0}



@media(max-width:768px){



  .movie-grid .ad-box{margin:14px 0}



}

/* 栏目页（电影库/电视剧/影人/排行榜）顶部紧凑 */

.sec-page{margin-top:8px}

/* tabs 容器内含广告：通栏展示 */

#rankTabs > .ad-box,

#peopleTabs > .ad-box{margin:0 0 18px}
/* ===== 首页本周推荐轮播 ===== */
.hero-bg{display:none}
.hero-slides{position:relative;z-index:1}
.hero-slide{display:none}
.hero-slide.active{display:block;animation:heroFade .45s ease}
@keyframes heroFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(15,13,30,.5);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;backdrop-filter:blur(6px)}
.hero-arrow:hover{background:var(--grad);border-color:transparent;box-shadow:0 8px 20px -6px var(--glow)}
.hero-prev{left:14px}
.hero-next{right:14px}
.hero-dots{position:absolute;bottom:16px;left:0;right:0;z-index:6;display:flex;justify-content:center;gap:8px;pointer-events:none}
.hero-dots .hd{pointer-events:auto}
.hd{width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.15);padding:0;cursor:pointer;transition:.25s}
.hd.active{width:22px;border-radius:999px;background:var(--grad);border-color:transparent}
/* 移动端：封面图半透明模糊背景 */
@media(max-width:900px){
  .hero-bg{display:block;position:absolute;inset:0;z-index:0;overflow:hidden}
  .hero-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05);transform:scale(1.05)}
  .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,8,22,.26) 0%,rgba(10,8,22,.4) 45%,rgba(10,8,22,.85) 100%)}
  .hero-inner{min-height:340px;padding:26px 20px;height:auto}
  .hero-copy h1,.hero-copy .hero-en,.hero-copy .hero-tag,.hero-copy .hero-meta,.hero-copy .hero-score{text-shadow:0 2px 16px rgba(0,0,0,.6)}
  .hero-arrow{width:34px;height:34px}
  .hero-prev{left:10px}
  .hero-next{right:10px}
}
@media(max-width:640px){
  .hero-inner{min-height:320px;padding:24px 18px}
  .hero-arrow{display:none}
}


/* ===== v20261031：详情页目录与封面调换 + 在线观看 + 预告片 ===== */
@media(min-width:860px){
  .wiki-body{grid-template-columns:316px minmax(0,1fr)}
  .infobox{grid-column:1;grid-row:1}
  .wiki-main{grid-column:2;grid-row:1}
}
.watch-row{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin:2px 0 16px}
.btn-watch{display:inline-flex;align-items:center;gap:7px;padding:10px 22px;border-radius:999px;background:var(--grad);color:#fff;font-weight:700;font-size:14px;text-decoration:none;box-shadow:0 8px 22px -6px var(--glow);transition:transform .18s ease,box-shadow .18s ease;border:0;cursor:pointer}
.btn-watch:hover{transform:translateY(-2px);box-shadow:0 12px 28px -6px var(--glow);color:#fff}
.watch-row .ad-box{flex:0 0 auto}
.trailer-badge{display:inline-block;vertical-align:4px;margin-left:10px;font-size:12px;font-weight:700;color:#fff;background:var(--grad);padding:3px 12px;border-radius:999px;letter-spacing:.5px}
.trailer-player{margin:20px 0 24px;border-radius:18px;overflow:hidden;border:1px solid var(--line-2);background:#000;aspect-ratio:16/9;position:relative}
.trailer-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.trailer-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,.45);background:linear-gradient(180deg,#151226,#0d0b1a)}
.trailer-empty p{margin:0;font-size:16px;color:rgba(255,255,255,.75)}
.trailer-empty span{font-size:12px}
.trailer-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 26px;padding:14px 18px;border:1px solid var(--line-2);border-radius:16px;background:var(--card)}
.tm-info{display:flex;align-items:center;gap:14px;min-width:0}
.tm-info img{width:56px;height:84px;object-fit:cover;border-radius:10px;box-shadow:0 6px 16px -6px #000}
.tm-t{font-size:16px;font-weight:800}
.tm-s{font-size:12px;color:rgba(255,255,255,.5);margin:2px 0 4px}
.tm-score b{color:var(--accent)}
@media(max-width:640px){.trailer-meta .btn-primary{width:100%;justify-content:center}}


/* ===== v20261031：详情页目录与封面调换 + 在线观看 + 预告片 ===== */
@media(min-width:860px){
  .wiki-body{grid-template-columns:316px minmax(0,1fr)}
  .infobox{grid-column:1;grid-row:1}
  .wiki-main{grid-column:2;grid-row:1}
}
.watch-row{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin:2px 0 16px}
.btn-watch{display:inline-flex;align-items:center;gap:7px;padding:10px 22px;border-radius:999px;background:var(--grad);color:#fff;font-weight:700;font-size:14px;text-decoration:none;box-shadow:0 8px 22px -6px var(--glow);transition:transform .18s ease,box-shadow .18s ease;border:0;cursor:pointer}
.btn-watch:hover{transform:translateY(-2px);box-shadow:0 12px 28px -6px var(--glow);color:#fff}
.watch-row .ad-box{flex:0 0 auto}
.trailer-badge{display:inline-block;vertical-align:4px;margin-left:10px;font-size:12px;font-weight:700;color:#fff;background:var(--grad);padding:3px 12px;border-radius:999px;letter-spacing:.5px}
.trailer-player{margin:20px 0 24px;border-radius:18px;overflow:hidden;border:1px solid var(--line-2);background:#000;aspect-ratio:16/9;position:relative}
.trailer-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.trailer-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,.45);background:linear-gradient(180deg,#151226,#0d0b1a)}
.trailer-empty p{margin:0;font-size:16px;color:rgba(255,255,255,.75)}
.trailer-empty span{font-size:12px}
.trailer-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 26px;padding:14px 18px;border:1px solid var(--line-2);border-radius:16px;background:var(--card)}
.tm-info{display:flex;align-items:center;gap:14px;min-width:0}
.tm-info img{width:56px;height:84px;object-fit:cover;border-radius:10px;box-shadow:0 6px 16px -6px #000}
.tm-t{font-size:16px;font-weight:800}
.tm-s{font-size:12px;color:rgba(255,255,255,.5);margin:2px 0 4px}
.tm-score b{color:var(--accent)}
@media(max-width:640px){.trailer-meta .btn-primary{width:100%;justify-content:center}}


/* ===== v20261032：详情页信息框左图右信息 ===== */
@media(min-width:860px){
  .wiki-body{grid-template-columns:500px minmax(0,1fr)}
  .ib-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:start}
  .ib-layout .ib-img{margin:0;padding:10px}
  .ib-layout .ib-img img{width:100%;height:auto}
  .ib-layout table{min-width:0}
}
@media(max-width:859px){.ib-layout .ib-img{margin:0 0 10px}}


/* ===== v20261033：详情页信息框横贯 + 正文下移（单列） ===== */
@media(min-width:860px){
  .wiki-body{grid-template-columns:minmax(0,1fr);gap:0}
  .wiki-main{grid-column:1;grid-row:auto}
  .infobox{grid-column:1;grid-row:auto;order:-1;width:100%;max-width:none}
  .ib-layout{grid-template-columns:250px minmax(0,1fr);gap:22px}
  .ib-layout .ib-img{padding:12px}
  .ib-layout .ib-img img{width:100%;height:auto}
}
.infobox .ib-title{text-align:left}
@media(max-width:859px){.ib-layout .ib-img{margin:0 0 10px}}


/* ===== v20261034：目录右列 + 封面2:3长版 ===== */
@media(min-width:1024px){
  .wiki-body{grid-template-columns:minmax(0,1fr) 250px;gap:26px}
  .infobox{grid-column:1/-1;grid-row:1}
  .wiki-main{grid-column:1;grid-row:2}
  .toc-rail{grid-column:2;grid-row:2}
  .toc-rail .toc-box{position:sticky;top:80px;width:100%;display:block;min-width:0;margin:0}
}
@media(max-width:1023px){
  .infobox{order:-1}
}
.ib-layout .ib-img img{aspect-ratio:2/3;object-fit:cover;object-position:center 20%}


/* ===== v20261035：移动端目录置于信息框后 ===== */
@media(max-width:1023px){
  .infobox{order:-1}
  .toc-rail{order:0}
  .wiki-main{order:1}
}


/* ===== v20261036：目录与信息框同一排 ===== */
@media(min-width:1024px){
  .infobox{grid-column:1;grid-row:1}
  .toc-rail{grid-column:2;grid-row:1}
  .wiki-main{grid-column:1/-1;grid-row:2}
}


/* ===== v20261037：剧情简介下在线观看区块 ===== */
.watch-section{margin:20px 0 26px;padding:18px 20px;border:1px solid var(--line-2);border-radius:16px;background:var(--card)}
.ws-title{font-size:16px;font-weight:800;margin-bottom:12px}
.watch-section .btn-watch{font-size:15px;padding:12px 28px}
.watch-hint{font-size:12.5px;color:rgba(255,255,255,.45);margin-left:14px}
.ep-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.ep-btn{min-width:52px;text-align:center;padding:7px 10px;border-radius:9px;border:1px solid var(--line-2);background:rgba(255,255,255,.05);color:var(--text);font-size:12.5px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.ep-btn:hover{border-color:var(--accent);color:#fff;background:var(--grad-soft)}
.ep-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:rgba(20,20,31,.95);border:1px solid var(--line-2);color:#fff;padding:10px 18px;border-radius:999px;font-size:13px;z-index:999;box-shadow:0 10px 30px -8px #000;white-space:nowrap}
@media(max-width:640px){.watch-hint{display:block;margin:10px 0 0}}


/* ===== v20261038：预告片播放器覆盖广告 ===== */
.player-cover-ad{position:absolute;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:rgba(10,8,20,.38)}
.player-cover-ad .ad-box{margin:0;padding:0;background:transparent;border:none;box-shadow:none}
.player-cover-ad .ad-inner{margin:0;padding:0}
.player-cover-ad .ad-label{display:none}
@media(max-width:640px){.player-cover-ad{background:rgba(10,8,20,.28)}}


/* ===== v20261039：手机端隐藏目录与顶部在线观看 ===== */
@media(max-width:767px){
  .toc-rail{display:none}
  .watch-row{display:none}
}


/* ===== v20261040：覆盖广告去遮罩（无填充时视频不被挡） ===== */
.player-cover-ad{background:transparent}
.player-cover-ad .ad-inner{background:rgba(10,8,20,.55);padding:10px 14px;border-radius:12px}
@media(max-width:640px){.player-cover-ad{background:transparent}.player-cover-ad .ad-inner{background:rgba(10,8,20,.5)}}


/* ===== v20261041：播放器中央悬浮广告 + 可关闭 ===== */
.player-cover-ad{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:30}
.cover-ad-body{position:relative;background:rgba(10,8,20,.62);padding:14px 16px;border-radius:14px;box-shadow:0 14px 40px -10px #000;min-width:min(360px,86vw)}
.player-cover-ad .ad-box{margin:0;padding:0;background:transparent;border:none;box-shadow:none}
.player-cover-ad .ad-inner{margin:0;padding:0}
.cover-close{position:absolute;top:-12px;right:-12px;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.8);border:1px solid rgba(255,255,255,.35);color:#fff;font-size:15px;line-height:1;cursor:pointer;z-index:5;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s}
.cover-close:hover{background:#c02433;border-color:#c02433}
@media(max-width:640px){
  .player-cover-ad{max-width:92%}
  .cover-ad-body{padding:10px 12px;min-width:min(280px,88vw)}
}


/* ===== v20261048：在线观看区块（通栏广告紧贴、移动端紧凑） ===== */
.watch-section{margin:12px 0 20px;padding:12px 16px;border:1px solid var(--line-2);border-radius:16px;background:var(--card);display:flex;align-items:center;gap:4px;flex-wrap:nowrap}
.watch-section .ws-main{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}
.watch-section .ad-box{margin:0;flex:0 1 auto;max-width:min(420px,60%)}
.watch-section .ad-inner{min-width:0;justify-content:flex-start;max-width:100%}
.watch-section .ad-box > div{margin:0 !important}
.watch-section .ad-box .cpro-widget{margin:0 !important;padding:0 !important;background:transparent !important;min-height:0 !important;box-shadow:none !important;max-width:100% !important;height:auto !important}
.watch-section .ad-box .cpro-widget *{background:transparent !important;min-height:0 !important;box-shadow:none !important;border-color:transparent !important;max-width:100% !important}
.ad-box[data-slot="watch_top"]{margin:0 0 10px}
.ad-box[data-slot="watch_top"] .ad-inner{margin:0;padding:0}
/* ===== v20261054：导航下方通栏广告位 ===== */
.ad-box[data-slot="nav_bottom"]{margin:0 auto;padding:10px 0 0;max-width:1200px;background:transparent}
/* ===== v20261050：播放页纵向流（播放器→集数→影片信息→简介） ===== */
.play-body{display:block}
.play-body .wiki-main{margin:0}
.play-body .infobox{position:static;order:0;margin:26px 0 0}
.page-wiki .play-body .infobox{position:static;grid-column:auto;grid-row:auto}
@media(max-width:1023px){.play-body .infobox{order:0;margin:22px 0 0}}
.tv-watch{flex-direction:column;align-items:stretch;gap:10px}
.tv-watch .ws-title{font-size:16px;font-weight:800;margin:0}
.tv-watch .ep-list{margin:0}
.tv-watch .watch-hint{margin:0;text-align:center}
.ep-btn{display:inline-block;text-decoration:none;box-sizing:border-box}
.ep-btn.active{border-color:var(--accent);color:#fff;background:var(--grad-soft)}
.ep-panel{margin:22px 0 8px}
.ep-panel .ws-title{margin-bottom:10px}
.ep-nav{display:flex;gap:10px;justify-content:center;margin:18px 0 4px;flex-wrap:wrap}
.ep-nav-btn{padding:9px 18px;border-radius:999px;border:1px solid var(--line-2);background:rgba(255,255,255,.05);color:var(--text);font-size:13px;text-decoration:none;transition:border-color .15s,background .15s,color .15s}
.ep-nav-btn:hover{border-color:var(--accent);color:#fff;background:var(--grad-soft)}
@media(max-width:640px){
  .watch-section{flex-direction:column;align-items:flex-start;gap:2px;flex-wrap:wrap;margin:4px 0 14px;padding:10px 12px}
  .watch-section .ad-box{width:100%;max-width:none;justify-content:flex-start;margin-top:2px}
  .ad-box[data-slot="watch_top"]{margin-bottom:4px}
  .tv-watch{gap:8px}
}
