:root{
  --main:#f472b6;
  --accent:#fbbf24;
  --bg:#fff5f7;
  --ink:#4a2530;
  --card:#ffffff;
  --line:rgba(244,114,182,.18);
  --soft:#fde7ee;
  --shadow:0 6px 24px rgba(74,37,48,.07);
  --shadow-hover:0 14px 34px rgba(244,114,182,.22);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Inter,sans-serif;
  font-weight:400;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit}
h1,h2,h3,h4{font-weight:800;letter-spacing:-.02em;color:var(--ink);margin:0}
img{display:block;max-width:100%}

/* ===== 导航 ===== */
.site-nav{
  position:sticky;top:0;z-index:1030;
  background:rgba(255,245,247,.88);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  max-width:1280px;margin:0 auto;padding:12px 20px;
  display:flex;align-items:center;gap:18px;
}
.brand{
  font-weight:900;font-size:1.18rem;letter-spacing:-.02em;
  display:inline-flex;align-items:center;gap:8px;
  color:var(--ink);white-space:nowrap;
}
.brand i{color:var(--main);font-size:1.05rem}
.nav-links{
  display:flex;align-items:center;gap:6px;
  margin-left:auto;flex-wrap:wrap;
}
.nav-links a{
  padding:7px 15px;border-radius:999px;
  font-size:.9rem;font-weight:600;color:#7a4553;
  transition:.22s;
}
.nav-links a:hover,.nav-links a.active{
  background:var(--main);color:#fff;
  box-shadow:0 4px 14px rgba(244,114,182,.35);
}
.nav-toggle{
  display:none;margin-left:auto;
  border:1px solid var(--line);background:#fff;
  border-radius:999px;width:42px;height:42px;
  color:var(--main);font-size:1.05rem;
}

/* ===== Hero ===== */
.hero{
  position:relative;overflow:hidden;
  padding:76px 20px 64px;
  background:
    radial-gradient(circle at 12% 18%,rgba(251,191,36,.22),transparent 46%),
    radial-gradient(circle at 88% 8%,rgba(244,114,182,.26),transparent 52%),
    linear-gradient(180deg,#fff8fa 0%,var(--bg) 100%);
}
.hero-inner{max-width:1180px;margin:0 auto;position:relative;z-index:2}
.hero-tag{
  display:inline-flex;align-items:center;gap:8px;
  background:#fff;border:1px solid var(--line);
  color:var(--main);font-weight:700;font-size:.8rem;
  padding:7px 16px;border-radius:999px;
  box-shadow:var(--shadow);margin-bottom:24px;
}
.hero h1{
  font-size:clamp(2.3rem,6vw,4rem);
  line-height:1.12;font-weight:900;
  min-height:2.3em;
}
.hero h1 .cursor{
  display:inline-block;width:4px;height:.92em;
  background:var(--main);vertical-align:-.1em;
  margin-left:4px;border-radius:2px;
  animation:blink 1s steps(1) infinite;
}
@keyframes blink{0%,49%{opacity:1}50%,100%{opacity:0}}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(100deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:var(--main);
}
.hero p.lead{
  max-width:620px;margin:22px 0 34px;
  font-size:1.06rem;color:#875864;font-weight:400;
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn-pill{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 30px;border-radius:999px;
  font-weight:700;font-size:.95rem;border:none;
  transition:.24s;cursor:pointer;
}
.btn-main{
  background:var(--main);color:#fff;
  box-shadow:0 8px 22px rgba(244,114,182,.4);
}
.btn-main:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(244,114,182,.5);color:#fff}
.btn-ghost{
  background:#fff;color:var(--ink);
  border:1px solid var(--line);box-shadow:var(--shadow);
}
.btn-ghost:hover{transform:translateY(-2px);color:var(--main)}
.hero-stats{
  display:flex;gap:44px;flex-wrap:wrap;margin-top:52px;
}
.hero-stats div strong{
  display:block;font-size:1.9rem;font-weight:900;color:var(--main);line-height:1.2;
}
.hero-stats div span{font-size:.85rem;color:#9a6a76;font-weight:500}

/* ===== 轮播 ===== */
.carousel-wrap{
  max-width:1180px;margin:-18px auto 0;padding:0 20px 10px;position:relative;z-index:3;
}
.hero-slides{
  border-radius:26px;overflow:hidden;
  box-shadow:0 18px 44px rgba(244,114,182,.16);
  background:#fff;border:1px solid var(--line);
}
.slide{
  display:none;padding:32px 36px;
  align-items:center;gap:30px;
}
.slide.on{display:flex;animation:fadeSlide .5s ease}
@keyframes fadeSlide{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.slide-poster{
  width:108px;aspect-ratio:2/3;border-radius:14px;flex:0 0 auto;
  background:linear-gradient(150deg,var(--soft),#ffe9f0);
  border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  color:var(--main);font-size:1.7rem;overflow:hidden;
}
.slide-poster img{width:100%;height:100%;object-fit:cover;border-radius:14px}
.slide-body h3{font-size:1.45rem;margin-bottom:6px}
.slide-body .meta{font-size:.85rem;color:#9a6a76;margin-bottom:10px}
.slide-body p{font-size:.94rem;color:#7d5460;margin:0 0 14px;max-width:640px}
.slide-dots{display:flex;gap:9px;justify-content:center;padding:14px 0 0}
.slide-dots button{
  width:9px;height:9px;border-radius:50%;border:none;padding:0;
  background:#f3c4d5;cursor:pointer;transition:.22s;
}
.slide-dots button.on{background:var(--main);width:26px;border-radius:999px}

/* ===== 通用区块 ===== */
.section{max-width:1280px;margin:0 auto;padding:66px 20px}
.sec-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:18px;margin-bottom:30px;flex-wrap:wrap;
}
.sec-head h2{
  font-size:clamp(1.65rem,3.4vw,2.4rem);font-weight:900;letter-spacing:-.03em;
}
.sec-head h2 i{color:var(--main);font-size:.72em;margin-right:8px}
.sec-head .sub{font-size:.9rem;color:#9a6a76;margin-top:6px;font-weight:400}
.sec-more{
  font-size:.86rem;font-weight:700;color:var(--main);
  border:1px solid var(--line);background:#fff;
  padding:8px 20px;border-radius:999px;transition:.22s;white-space:nowrap;
}
.sec-more:hover{background:var(--main);color:#fff}

/* ===== 分类入口 ===== */
.cat-grid{
  display:grid;grid-template-columns:repeat(6,1fr);gap:16px;
}
.cat-card{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  padding:24px 14px;text-align:center;transition:.24s;
  box-shadow:var(--shadow);
}
.cat-card i{
  font-size:1.5rem;color:var(--main);margin-bottom:10px;display:block;
}
.cat-card span{font-weight:700;font-size:.95rem;display:block}
.cat-card small{font-size:.75rem;color:#a97b87;font-weight:500}
.cat-card:hover{
  transform:translateY(-5px);border-color:var(--main);
  box-shadow:var(--shadow-hover);
}

/* ===== 海报墙 ===== */
.poster-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:20px;
  width:100%;
}
.poster-card{
  background:var(--card);border:1px solid var(--line);
  border-radius:18px;overflow:hidden;
  transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease;
  box-shadow:var(--shadow);position:relative;
}
.poster-card:hover{
  transform:scale(1.035);
  border-color:var(--main);
  box-shadow:var(--shadow-hover);
  z-index:2;
}
.poster-thumb{
  position:relative;width:100%;aspect-ratio:2/3;
  background:linear-gradient(160deg,var(--soft),#ffe7ef);
  overflow:hidden;
}
.poster-thumb img{
  width:100%;height:100%;object-fit:cover;
  opacity:0;transition:opacity .5s ease;
}
.poster-thumb img.loaded{opacity:1}
.badge-ep{
  position:absolute;top:9px;left:9px;
  background:rgba(244,114,182,.95);color:#fff;
  font-size:.68rem;font-weight:700;
  padding:3px 9px;border-radius:999px;
  letter-spacing:.02em;backdrop-filter:blur(4px);
}
.badge-score{
  position:absolute;bottom:9px;right:9px;
  background:rgba(251,191,36,.96);color:#4a2530;
  font-size:.72rem;font-weight:800;
  padding:3px 9px;border-radius:999px;
  display:inline-flex;align-items:center;gap:3px;
}
.badge-score i{font-size:.66rem}
.poster-info{padding:12px 13px 15px}
.poster-info h4{
  font-size:.9rem;font-weight:700;line-height:1.4;
  margin-bottom:4px;
  display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;
  overflow:hidden;
}
.poster-info p{
  margin:0;font-size:.75rem;color:#a97b87;font-weight:500;
  display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;
  overflow:hidden;
}
.poster-link{position:absolute;inset:0;z-index:3;border-radius:18px}

/* ===== 排行榜 ===== */
.rank-wrap{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
}
.rank-item{
  display:flex;align-items:center;gap:15px;
  background:#fff;border:1px solid var(--line);
  border-radius:16px;padding:13px 17px;
  transition:.22s;box-shadow:var(--shadow);
}
.rank-item:hover{border-color:var(--main);transform:translateX(4px);box-shadow:var(--shadow-hover)}
.rank-num{
  font-size:1.32rem;font-weight:900;min-width:34px;
  color:#e8c6d1;font-variant-numeric:tabular-nums;text-align:center;
}
.rank-item:nth-child(1) .rank-num{color:var(--main)}
.rank-item:nth-child(2) .rank-num{color:#f286b7}
.rank-item:nth-child(3) .rank-num{color:var(--accent)}
.rank-thumb{
  width:44px;height:60px;border-radius:10px;overflow:hidden;flex:0 0 auto;
  background:var(--soft);
}
.rank-thumb img{width:100%;height:100%;object-fit:cover}
.rank-txt{flex:1;min-width:0}
.rank-txt h4{font-size:.92rem;font-weight:700;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rank-txt span{font-size:.75rem;color:#a97b87;font-weight:500}
.heat{
  font-size:.72rem;font-weight:800;color:var(--main);
  background:var(--soft);padding:4px 11px;border-radius:999px;white-space:nowrap;
  display:inline-flex;align-items:center;gap:4px;
}

/* ===== 专题 ===== */
.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.topic-card{
  border-radius:22px;padding:30px 26px;
  border:1px solid var(--line);background:#fff;
  box-shadow:var(--shadow);transition:.26s;position:relative;overflow:hidden;
}
.topic-card::after{
  content:"";position:absolute;width:150px;height:150px;
  right:-50px;top:-50px;border-radius:50%;
  background:radial-gradient(circle,rgba(251,191,36,.2),transparent 70%);
}
.topic-card:hover{transform:translateY(-6px);border-color:var(--main);box-shadow:var(--shadow-hover)}
.topic-card .ico{
  width:48px;height:48px;border-radius:14px;
  background:var(--soft);color:var(--main);
  display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;margin-bottom:16px;
}
.topic-card h3{font-size:1.12rem;margin-bottom:9px}
.topic-card p{font-size:.87rem;color:#875864;margin:0 0 14px}
.topic-card .tags{display:flex;gap:7px;flex-wrap:wrap}
.topic-card .tags span{
  font-size:.72rem;font-weight:600;color:var(--main);
  background:var(--soft);padding:3px 11px;border-radius:999px;
}

/* ===== 手风琴 FAQ ===== */
.acc{max-width:880px;margin:0 auto}
.acc-item{
  background:#fff;border:1px solid var(--line);
  border-radius:16px;margin-bottom:12px;overflow:hidden;
  box-shadow:var(--shadow);
}
.acc-btn{
  width:100%;text-align:left;background:none;border:none;
  padding:18px 22px;font-weight:700;font-size:.96rem;color:var(--ink);
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  cursor:pointer;transition:.2s;
}
.acc-btn:hover{color:var(--main)}
.acc-btn i{transition:transform .28s;color:var(--main);font-size:.82rem}
.acc-item.open .acc-btn i{transform:rotate(180deg)}
.acc-panel{max-height:0;overflow:hidden;transition:max-height .34s ease}
.acc-panel p{margin:0;padding:0 22px 20px;font-size:.9rem;color:#875864}

/* ===== 特色图标列表 ===== */
.feat-list{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
}
.feat{
  background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:22px;box-shadow:var(--shadow);transition:.24s;
}
.feat:hover{border-color:var(--accent);transform:translateY(-4px)}
.feat i{color:var(--accent);font-size:1.3rem;margin-bottom:12px;display:block}
.feat h4{font-size:.98rem;margin-bottom:6px}
.feat p{font-size:.82rem;color:#875864;margin:0}

/* ===== 友链 ===== */
.friend-links{
  max-width:1280px;margin:0 auto;padding:0 20px 60px;
}
.friend-links .fl-box{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  padding:26px 28px;box-shadow:var(--shadow);
}
.friend-links h3{
  font-size:.95rem;font-weight:800;margin-bottom:14px;color:var(--ink);
  display:flex;align-items:center;gap:8px;
}
.friend-links h3 i{color:var(--main);font-size:.85rem}
.friend-links .fl-body{font-size:.86rem;color:#875864;word-break:break-all}
.friend-links .fl-body a{color:var(--main);font-weight:600}

/* ===== 页脚 ===== */
footer{
  background:#4a2530;color:#f6dbe4;padding:52px 20px 26px;
}
.foot-inner{max-width:1280px;margin:0 auto}
.foot-top{
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;
  padding-bottom:34px;border-bottom:1px solid rgba(246,219,228,.16);
}
.foot-brand{font-weight:900;font-size:1.12rem;color:#fff;display:flex;align-items:center;gap:8px;margin-bottom:12px}
.foot-brand i{color:var(--accent)}
.foot-top p{font-size:.85rem;color:#d9b3c0;margin:0;max-width:320px}
.foot-col h4{font-size:.88rem;color:#fff;margin-bottom:13px;font-weight:800}
.foot-col a{display:block;font-size:.84rem;color:#d9b3c0;margin-bottom:9px;transition:.2s}
.foot-col a:hover{color:var(--accent)}
.foot-bottom{
  padding-top:22px;font-size:.8rem;color:#c99caa;
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
}

/* ===== 回到顶部 ===== */
#toTop{
  position:fixed;right:22px;bottom:26px;z-index:1200;
  width:48px;height:48px;border-radius:50%;border:none;
  background:var(--main);color:#fff;font-size:1rem;
  box-shadow:0 10px 26px rgba(244,114,182,.45);
  cursor:pointer;opacity:0;visibility:hidden;transform:translateY(14px);
  transition:.3s;
}
#toTop.show{opacity:1;visibility:visible;transform:none}
#toTop:hover{background:#ef5ea8;transform:translateY(-3px)}

/* ===== 响应式 ===== */
@media(max-width:1080px){
  .poster-grid{grid-template-columns:repeat(4,1fr)}
  .cat-grid{grid-template-columns:repeat(3,1fr)}
  .feat-list{grid-template-columns:repeat(2,1fr)}
  .foot-top{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .nav-toggle{display:block}
  .nav-links{
    display:none;width:100%;flex-direction:column;align-items:stretch;
    gap:4px;padding:12px 0 4px;
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:11px 16px;border-radius:14px;text-align:center}
  .nav-inner{flex-wrap:wrap}
  .rank-wrap{grid-template-columns:1fr}
  .topic-grid{grid-template-columns:1fr}
  .slide{flex-direction:column;text-align:center;padding:26px 20px}
  .slide-body p{margin-left:auto;margin-right:auto}
  .hero{padding:54px 20px 46px}
  .hero-stats{gap:28px;margin-top:38px}
}
@media(max-width:620px){
  .poster-grid{grid-template-columns:repeat(2,1fr);gap:13px}
  .cat-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .feat-list{grid-template-columns:1fr}
  .section{padding:46px 16px}
  .foot-top{grid-template-columns:1fr;gap:22px}
  .hero-stats div strong{font-size:1.55rem}
  .poster-info{padding:10px 10px 13px}
  .poster-info h4{font-size:.82rem}
  .rank-item{padding:11px 13px;gap:11px}
  #toTop{right:14px;bottom:16px;width:44px;height:44px}
}

/* --- 子页面追加 --- */
.guide-hero {padding:54px 0 30px;background:linear-gradient(160deg,var(--soft),var(--bg));border-bottom:1px solid var(--line);}
.guide-hero h1 {font-size:clamp(1.7rem,4vw,2.6rem);font-weight:900;letter-spacing:-.5px;margin-bottom:14px;}
.guide-hero h1 .hl {color:var(--main);}
.guide-hero p {max-width:720px;font-size:1.02rem;line-height:1.85;color:rgba(74,37,48,.78);margin:0;}
.guide-hero .crumb {font-size:.86rem;color:rgba(74,37,48,.55);margin-bottom:16px;}
.guide-hero .crumb a {color:var(--main);text-decoration:none;}
.guide-hero .crumb a:hover {text-decoration:underline;}
.sec-head p {color:rgba(74,37,48,.68);margin:8px 0 0;line-height:1.8;}
.step-card {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;height:100%;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease;position:relative;}
.step-card:hover {transform:translateY(-4px);box-shadow:var(--shadow-hover);}
.step-num {width:38px;height:38px;border-radius:12px;background:var(--main);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:1rem;margin-bottom:14px;box-shadow:0 6px 16px rgba(244,114,182,.32);}
.step-card h3 {font-size:1.02rem;font-weight:800;margin:0 0 8px;line-height:1.5;}
.step-card p {font-size:.9rem;line-height:1.8;color:rgba(74,37,48,.72);margin:0;}
.tip-list {list-style:none;padding:0;margin:0;}
.tip-list li {background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px 16px 48px;margin-bottom:12px;position:relative;font-size:.93rem;line-height:1.8;box-shadow:var(--shadow);}
.tip-list li::before {content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:18px;top:17px;color:var(--main);font-size:.85rem;}
.tip-list li strong {color:var(--main);}
.faq-item {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin-bottom:14px;box-shadow:var(--shadow);}
.faq-item h3 {font-size:.98rem;font-weight:800;margin:0 0 8px;display:flex;gap:10px;align-items:flex-start;}
.faq-item h3 i {color:var(--accent);margin-top:3px;}
.faq-item p {font-size:.9rem;line-height:1.8;color:rgba(74,37,48,.72);margin:0;}
.cta-band {background:linear-gradient(120deg,rgba(244,114,182,.12),rgba(251,191,36,.12));border:1px solid var(--line);border-radius:22px;padding:34px 28px;text-align:center;box-shadow:var(--shadow);}
.cta-band h2 {font-size:clamp(1.2rem,2.6vw,1.6rem);font-weight:800;margin-bottom:10px;}
.cta-band p {color:rgba(74,37,48,.7);max-width:620px;margin:0 auto 20px;line-height:1.8;font-size:.95rem;}
.mini-table {width:100%;border-collapse:separate;border-spacing:0 10px;}
.mini-table th {font-size:.85rem;text-align:left;color:rgba(74,37,48,.6);font-weight:700;padding:0 16px;}
.mini-table td {background:var(--card);border:1px solid var(--line);padding:14px 16px;font-size:.9rem;line-height:1.7;box-shadow:var(--shadow);}
.mini-table tr td:first-child {border-radius:14px 0 0 14px;font-weight:700;color:var(--main);white-space:nowrap;}
.mini-table tr td:last-child {border-radius:0 14px 14px 0;}
.mini-table td {font-size:.85rem;padding:12px;}

/* --- 子页面追加 --- */
.mv-hero {padding:56px 0 34px;background:linear-gradient(160deg,var(--soft),var(--bg) 70%);}
.mv-hero h1 {font-size:clamp(26px,4.2vw,42px);font-weight:900;color:var(--ink);line-height:1.25;margin:0 0 14px;}
.mv-hero h1 em {font-style:normal;color:var(--main);}
.mv-hero p {color:#7a5560;max-width:720px;font-size:15.5px;line-height:1.85;margin:0;}
.mv-hero .hero-tag {margin-bottom:16px;}
.filter-bar {display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px;}
.filter-bar a {display:inline-block;padding:8px 18px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:#7a5560;font-size:13.5px;font-weight:600;text-decoration:none;transition:.22s;}
.filter-bar a:hover,.filter-bar a.on {background:var(--main);border-color:var(--main);color:#fff;box-shadow:0 6px 16px rgba(244,114,182,.32);}
.mv-card {background:var(--card);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);transition:.26s;height:100%;display:flex;flex-direction:column;}
.mv-card:hover {transform:translateY(-6px);box-shadow:var(--shadow-hover);}
.mv-thumb {position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--soft);}
.mv-thumb img {width:100%;height:100%;object-fit:cover;display:block;transition:.4s;}
.mv-card:hover .mv-thumb img {transform:scale(1.06);}
.mv-score {position:absolute;right:10px;bottom:10px;background:rgba(74,37,48,.82);color:var(--accent);font-size:12.5px;font-weight:800;padding:3px 9px;border-radius:999px;backdrop-filter:blur(4px);}
.mv-body {padding:14px 16px 18px;display:flex;flex-direction:column;gap:7px;flex:1;}
.mv-title {font-size:15.5px;font-weight:700;color:var(--ink);margin:0;line-height:1.4;}
.mv-meta {font-size:12.5px;color:#a98a94;display:flex;flex-wrap:wrap;gap:8px;}
.mv-desc {font-size:13px;color:#8a6a74;line-height:1.7;margin:0;flex:1;}
.mv-tags {display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;}
.mv-tags span {font-size:11.5px;padding:2px 9px;border-radius:999px;background:var(--soft);color:#b2567d;}
.info-panel {background:var(--card);border-radius:20px;padding:26px 24px;box-shadow:var(--shadow);height:100%;border:1px solid var(--line);}
.info-panel h3 {font-size:17px;font-weight:800;color:var(--ink);margin:0 0 12px;display:flex;align-items:center;gap:8px;}
.info-panel h3 i {color:var(--main);}
.info-panel p {font-size:14px;color:#7a5560;line-height:1.9;margin:0 0 10px;}
.info-panel p:last-child {margin-bottom:0;}
.info-panel ul {list-style:none;padding:0;margin:0;}
.info-panel ul li {font-size:14px;color:#7a5560;line-height:1.8;padding-left:20px;position:relative;margin-bottom:7px;}
.info-panel ul li::before {content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--main);position:absolute;left:0;font-size:11px;top:4px;}
.more-note {text-align:center;margin:34px 0 0;}
.more-note .btn-pill {display:inline-flex;align-items:center;gap:8px;}
.mv-hero {padding:38px 0 24px;}
.filter-bar a {padding:7px 14px;font-size:12.5px;}

/* --- 子页面追加 --- */
.series-hl {background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:20px 22px;box-shadow:var(--shadow);}
.series-hl h3 {margin:0 0 8px;font-size:1.05rem;color:var(--ink);}
.series-hl p {margin:0;color:var(--ink);opacity:.82;font-size:.94rem;line-height:1.75;}
.chip {display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--ink);font-size:.88rem;font-weight:600;cursor:pointer;transition:.22s;}
.chip:hover {background:var(--soft);box-shadow:var(--shadow-hover);transform:translateY(-2px);}
.chip.on {background:var(--main);color:#fff;border-color:var(--main);box-shadow:var(--shadow-hover);}
.ep-tag {display:inline-block;padding:2px 9px;border-radius:999px;background:var(--soft);color:var(--main);font-size:.74rem;font-weight:700;margin-right:6px;}
.series-note {display:grid;gap:14px;}
.note-item {display:flex;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow);}
.note-item i {color:var(--main);font-size:1.15rem;margin-top:3px;}
.note-item strong {display:block;color:var(--ink);margin-bottom:4px;}
.note-item span {color:var(--ink);opacity:.8;font-size:.92rem;line-height:1.7;}
.poster-card .pc-meta {display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--ink);opacity:.7;margin-top:6px;}
.chip {padding:7px 13px;font-size:.82rem;}

/* --- 子页面追加 --- */
/* 本页专属少量样式，沿用站点配色变量 */
  .page-hero {
    background:linear-gradient(135deg,var(--soft) 0%,var(--bg) 60%,#fff 100%);
    border-bottom:1px solid var(--line);
    padding:56px 0 44px;
  }
.page-hero h1 {
    font-size:clamp(1.6rem,3.4vw,2.5rem);
    font-weight:800;
    color:var(--ink);
    line-height:1.3;
    margin:0 0 14px;
  }
.page-hero h1 em {font-style:normal;color:var(--main);}
.page-hero p {
    color:var(--ink);opacity:.78;font-size:1rem;line-height:1.9;
    max-width:760px;margin:0 0 18px;
  }
.chip-row {display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
/* 综艺卡片自定义（不用 Bootstrap 组件类） */
  .show-card {
    background:var(--card);border:1px solid var(--line);border-radius:18px;
    overflow:hidden;box-shadow:var(--shadow);transition:.28s;height:100%;
    display:flex;flex-direction:column;
  }
.show-card:hover {transform:translateY(-5px);box-shadow:var(--shadow-hover);}
.show-poster {
    position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--soft);
  }
.show-poster img {width:100%;height:100%;object-fit:cover;display:block;transition:.5s;}
.show-card:hover .show-poster img {transform:scale(1.06);}
.show-badge {
    position:absolute;top:10px;left:10px;z-index:2;
    background:var(--accent);color:#4a2530;font-size:.72rem;font-weight:800;
    padding:4px 10px;border-radius:999px;letter-spacing:.02em;
  }
.show-score {
    position:absolute;right:10px;bottom:10px;z-index:2;
    background:rgba(74,37,48,.78);color:#fff;font-size:.78rem;font-weight:700;
    padding:3px 9px;border-radius:8px;backdrop-filter:blur(4px);
  }
.show-body {padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.show-title {font-size:1.02rem;font-weight:800;color:var(--ink);margin:0;line-height:1.45;}
.show-meta {font-size:.8rem;color:var(--main);font-weight:700;letter-spacing:.01em;}
.show-desc {font-size:.86rem;color:var(--ink);opacity:.72;line-height:1.75;margin:0;flex:1;}
.show-tags {display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;}
.show-tags span {
    font-size:.72rem;padding:3px 9px;border-radius:999px;
    background:var(--soft);color:var(--ink);opacity:.85;
  }
.block-card {
    background:var(--card);border:1px solid var(--line);border-radius:18px;
    padding:26px 24px;box-shadow:var(--shadow);height:100%;
  }
.block-card h3 {
    font-size:1.08rem;font-weight:800;color:var(--ink);margin:0 0 12px;
    display:flex;align-items:center;gap:10px;
  }
.block-card h3 i {color:var(--main);font-size:1rem;}
.block-card p {font-size:.9rem;color:var(--ink);opacity:.75;line-height:1.85;margin:0 0 10px;}
.block-card p:last-child {margin-bottom:0;}
.block-card ul {margin:0;padding-left:0;list-style:none;}
.block-card li {
    font-size:.88rem;color:var(--ink);opacity:.8;line-height:1.8;
    padding-left:22px;position:relative;margin-bottom:8px;
  }
.block-card li::before {
    content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;
    position:absolute;left:0;top:1px;color:var(--main);font-size:.75rem;
  }
.sec-title {
    font-size:clamp(1.2rem,2.4vw,1.6rem);font-weight:800;color:var(--ink);
    margin:0 0 8px;line-height:1.4;
  }
.sec-sub {font-size:.92rem;color:var(--ink);opacity:.7;margin:0 0 26px;line-height:1.85;}
.note-box {
    background:var(--soft);border:1px dashed rgba(244,114,182,.4);
    border-radius:16px;padding:20px 22px;font-size:.88rem;color:var(--ink);
    line-height:1.9;opacity:.92;
  }
.note-box strong {color:var(--main);}

/* --- 子页面追加 --- */
/* 本页专属少量样式，其余全部复用站点 style.css */
  .anime-nav { display:flex; flex-wrap:wrap; gap:.6rem; margin:1.4rem 0 .4rem; }
.anime-nav a {
    display:inline-flex; align-items:center; gap:.45rem;
    padding:.5rem 1.05rem; border-radius:999px; font-size:.9rem; font-weight:600;
    color:var(--ink); background:var(--card); border:1px solid var(--line);
    box-shadow:var(--shadow); text-decoration:none; transition:.25s;
  }
.anime-nav a:hover { background:var(--main); color:#fff; border-color:var(--main); box-shadow:var(--shadow-hover); transform:translateY(-2px); }
.anime-note {
    background:var(--soft); border-left:4px solid var(--main);
    border-radius:14px; padding:1rem 1.2rem; font-size:.92rem; line-height:1.85;
    color:var(--ink); margin-top:1.2rem;
  }
.anime-note strong { color:var(--main); }
.pick-list { list-style:none; padding:0; margin:1rem 0 0; }
.pick-list li {
    display:flex; gap:.85rem; align-items:flex-start;
    background:var(--card); border:1px solid var(--line); border-radius:16px;
    padding:.95rem 1.1rem; margin-bottom:.75rem; box-shadow:var(--shadow); transition:.25s;
  }
.pick-list li:hover { box-shadow:var(--shadow-hover); transform:translateY(-2px); }
.pick-list .num {
    flex:0 0 auto; width:30px; height:30px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    background:var(--main); color:#fff; font-weight:800; font-size:.85rem;
  }
.pick-list .pk-title { font-weight:700; color:var(--ink); margin-bottom:.15rem; }
.pick-list .pk-desc { font-size:.88rem; line-height:1.75; color:rgba(74,37,48,.78); }
.anime-cat-card h3 { display:flex; align-items:center; gap:.5rem; }
.anime-cat-card h3 i { color:var(--main); }
.anime-cat-card p { font-size:.9rem; line-height:1.8; color:rgba(74,37,48,.78); margin-bottom:.8rem; }
.anime-tag-row { display:flex; flex-wrap:wrap; gap:.4rem; }
.anime-tag {
    font-size:.76rem; padding:.24rem .62rem; border-radius:999px;
    background:var(--soft); color:var(--main); font-weight:600;
  }
.anime-faq .qa { background:var(--card); border:1px solid var(--line); border-radius:16px; padding:1rem 1.15rem; margin-bottom:.8rem; box-shadow:var(--shadow); }
.anime-faq .qa h4 { font-size:.98rem; font-weight:700; color:var(--ink); margin:0 0 .45rem; display:flex; gap:.5rem; align-items:baseline; }
.anime-faq .qa h4 i { color:var(--accent); font-size:.85rem; }
.anime-faq .qa p { margin:0; font-size:.88rem; line-height:1.8; color:rgba(74,37,48,.78); }
.anime-nav a { padding:.42rem .8rem; font-size:.82rem; }

/* --- 子页面追加 --- */
.doc-hero {padding:56px 0 28px;}
.doc-hero h1 {font-size:clamp(26px,4vw,42px);font-weight:900;color:var(--ink);line-height:1.25;margin:14px 0 14px;}
.doc-hero p {color:var(--ink);opacity:.78;font-size:16px;line-height:1.85;max-width:760px;}
.doc-tags {display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.doc-tag {background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600;box-shadow:var(--shadow);transition:.25s;}
.doc-tag:hover {background:var(--main);color:#fff;border-color:var(--main);box-shadow:var(--shadow-hover);}
.doc-section {padding:38px 0;}
.doc-section h2 {font-size:clamp(20px,2.6vw,27px);font-weight:800;color:var(--ink);margin-bottom:8px;}
.doc-section .sec-sub {color:var(--ink);opacity:.66;font-size:14px;line-height:1.8;margin-bottom:24px;}
.doc-card {background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);height:100%;display:flex;flex-direction:column;transition:.28s;}
.doc-card:hover {transform:translateY(-6px);box-shadow:var(--shadow-hover);}
.doc-thumb {position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--soft);}
.doc-thumb img {width:100%;height:100%;object-fit:cover;display:block;transition:.4s;}
.doc-card:hover .doc-thumb img {transform:scale(1.06);}
.doc-badge {position:absolute;top:10px;left:10px;background:rgba(244,114,182,.94);color:#fff;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;}
.doc-score {position:absolute;bottom:10px;right:10px;background:rgba(255,255,255,.95);color:var(--main);font-weight:800;font-size:13px;padding:3px 9px;border-radius:8px;}
.doc-body {padding:16px 16px 18px;display:flex;flex-direction:column;flex:1;}
.doc-body h3 {font-size:16px;font-weight:800;color:var(--ink);margin:0 0 8px;line-height:1.4;}
.doc-body p {font-size:13px;color:var(--ink);opacity:.7;line-height:1.75;margin:0 0 12px;flex:1;}
.doc-meta {display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--ink);opacity:.62;}
.doc-meta span {background:var(--soft);border-radius:6px;padding:3px 8px;}
.doc-list {background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;}
.doc-row {display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);transition:.22s;}
.doc-row:last-child {border-bottom:none;}
.doc-row:hover {background:var(--soft);}
.doc-num {flex:0 0 34px;font-weight:900;font-size:18px;color:var(--main);font-family:Inter,sans-serif;}
.doc-row-info {flex:1;min-width:0;}
.doc-row-info strong {display:block;font-size:15px;color:var(--ink);font-weight:700;margin-bottom:3px;}
.doc-row-info small {font-size:12.5px;color:var(--ink);opacity:.62;}
.doc-row-tag {flex:0 0 auto;font-size:12px;font-weight:700;color:var(--main);background:var(--soft);border-radius:999px;padding:5px 12px;white-space:nowrap;}
.doc-tips {background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:24px 24px 8px;}
.doc-tip {display:flex;gap:14px;padding-bottom:18px;}
.doc-tip i {color:var(--main);font-size:18px;margin-top:3px;}
.doc-tip strong {display:block;color:var(--ink);font-size:15px;margin-bottom:4px;}
.doc-tip p {color:var(--ink);opacity:.7;font-size:13.5px;line-height:1.8;margin:0;}
.doc-cta {background:linear-gradient(135deg,var(--soft),var(--card));border:1px solid var(--line);border-radius:20px;padding:32px 26px;text-align:center;box-shadow:var(--shadow);}
.doc-cta h2 {font-size:clamp(19px,2.5vw,25px);font-weight:800;color:var(--ink);margin-bottom:10px;}
.doc-cta p {color:var(--ink);opacity:.72;font-size:14.5px;line-height:1.85;max-width:640px;margin:0 auto 20px;}
.doc-row {padding:14px 14px;gap:10px;}
.doc-row-tag {display:none;}
.doc-tips {padding:20px 18px 6px;}

/* --- 子页面追加 --- */
.topic-hero {background:linear-gradient(160deg,var(--soft),var(--bg));padding:64px 0 48px;border-bottom:1px solid var(--line);}
.topic-hero h1 {font-size:clamp(1.7rem,4vw,2.7rem);font-weight:800;color:var(--ink);line-height:1.35;margin:14px 0 16px;}
.topic-hero p {color:var(--ink);opacity:.78;max-width:760px;line-height:1.9;font-size:1.02rem;}
.topic-tag {display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);color:var(--main);font-weight:700;font-size:.82rem;padding:7px 16px;border-radius:999px;box-shadow:var(--shadow);}
.mood-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;}
.mood-card {background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px 24px;box-shadow:var(--shadow);transition:.28s;}
.mood-card:hover {transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:rgba(244,114,182,.4);}
.mood-card .m-icon {width:46px;height:46px;border-radius:14px;background:var(--soft);color:var(--main);display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:16px;}
.mood-card h3 {font-size:1.08rem;font-weight:800;color:var(--ink);margin-bottom:10px;}
.mood-card p {font-size:.92rem;line-height:1.85;color:var(--ink);opacity:.76;margin:0;}
.mood-card .m-note {display:inline-block;margin-top:14px;font-size:.8rem;color:var(--accent);font-weight:700;background:rgba(251,191,36,.13);padding:5px 12px;border-radius:999px;}
.pick-item {display:flex;gap:20px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow);transition:.28s;}
.pick-item:hover {box-shadow:var(--shadow-hover);transform:translateY(-3px);}
.pick-item img {width:118px;height:158px;object-fit:cover;border-radius:14px;flex-shrink:0;background:var(--soft);}
.pick-body h3 {font-size:1.05rem;font-weight:800;color:var(--ink);margin-bottom:6px;}
.pick-meta {font-size:.78rem;color:var(--main);font-weight:700;letter-spacing:.4px;margin-bottom:10px;}
.pick-body p {font-size:.9rem;line-height:1.85;color:var(--ink);opacity:.75;margin:0;}
.tip-list li:last-child {border-bottom:none;}
.tip-list i {color:var(--main);font-size:1rem;margin-top:4px;}
.tip-list b {color:var(--ink);}
.tip-list span {color:var(--ink);opacity:.75;font-size:.93rem;line-height:1.85;}
.cta-box {background:linear-gradient(135deg,var(--soft),var(--card));border:1px solid var(--line);border-radius:24px;padding:40px 32px;text-align:center;box-shadow:var(--shadow);}
.cta-box h2 {font-size:1.35rem;font-weight:800;color:var(--ink);margin-bottom:12px;}
.cta-box p {color:var(--ink);opacity:.75;margin-bottom:24px;line-height:1.85;}
.pick-item {flex-direction:column;}
.pick-item img {width:100%;height:180px;}

/* --- 子页面追加 --- */
.sm-hero {padding:56px 0 34px;background:linear-gradient(160deg,var(--soft),var(--bg) 65%);border-bottom:1px solid var(--line);}
.sm-hero h1 {font-weight:800;font-size:clamp(1.7rem,3.4vw,2.6rem);line-height:1.3;margin:14px 0 12px;color:var(--ink);}
.sm-hero h1 em {font-style:normal;color:var(--main);}
.sm-hero p {max-width:720px;color:#7a5560;font-size:1rem;line-height:1.85;margin:0;}
.sm-tag {display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);color:var(--main);font-weight:600;font-size:.82rem;padding:6px 14px;border-radius:999px;box-shadow:var(--shadow);}
.sm-block {background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:26px 24px;height:100%;transition:box-shadow .25s,transform .25s;}
.sm-block:hover {box-shadow:var(--shadow-hover);transform:translateY(-3px);}
.sm-block h2,.sm-block h3 {font-size:1.12rem;font-weight:700;color:var(--ink);margin:0 0 6px;display:flex;align-items:center;gap:10px;}
.sm-block h2 i,.sm-block h3 i {color:var(--main);}
.sm-block .sm-note {font-size:.85rem;color:#8a6470;line-height:1.75;margin:0 0 16px;}
.sm-list {list-style:none;padding:0;margin:0;}
.sm-list li {border-bottom:1px dashed var(--line);}
.sm-list li:last-child {border-bottom:0;}
.sm-list a {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 4px;color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s,padding-left .2s;}
.sm-list a:hover {color:var(--main);padding-left:10px;}
.sm-list a span.path {font-size:.76rem;color:#b48a96;font-family:Inter,monospace;font-weight:400;}
.sm-list a:hover span.path {color:var(--main);}
.sm-tree {background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:24px;font-size:.92rem;line-height:2;color:#6b4652;overflow-x:auto;}
.sm-tree .t-root {color:var(--main);font-weight:700;}
.sm-tree .t-l2 {display:inline-block;padding-left:6px;}
.sm-tree .t-desc {color:#9b8a90;font-size:.82rem;}
.sm-chip {display:inline-flex;align-items:center;gap:7px;background:var(--soft);border:1px solid var(--line);color:#8a4a5e;border-radius:999px;padding:7px 15px;font-size:.85rem;font-weight:500;margin:0 8px 10px 0;text-decoration:none;transition:.2s;}
.sm-chip:hover {background:var(--main);color:#fff;border-color:var(--main);}
.sm-chip i {font-size:.78rem;}
.sm-update {font-size:.86rem;color:#8a6470;line-height:1.9;margin:0;}
.sm-update strong {color:var(--main);}
.sm-hero {padding:36px 0 24px;}
.sm-block {padding:20px 18px;}
.sm-tree {padding:16px;font-size:.85rem;line-height:1.95;}