/* mother-diversity · cherry-burst · 樱桃爆点 */
:root{
  --cb-primary:#e11d48;
  --cb-secondary:#2563eb;
  --cb-accent:#fde047;
  --cb-bg:#120810;
  --cb-surface:#1c0f18;
  --cb-panel:#261420;
  --cb-text:#fce7f3;
  --cb-muted:#c4a0b4;
  --div-accent:var(--cb-primary);
  --div-secondary:var(--cb-secondary);
  --div-highlight:var(--cb-accent);
  --div-bg:var(--cb-bg);
  --div-surface:var(--cb-surface);
  --div-text:var(--cb-text);
  --div-muted:var(--cb-muted);
  color-scheme:dark;
}

body.body-div{
  margin:0;
  background:
    radial-gradient(ellipse 800px 480px at 10% -8%, rgba(225,29,72,.2), transparent 55%),
    radial-gradient(ellipse 700px 420px at 92% 5%, rgba(37,99,235,.16), transparent 50%),
    var(--cb-bg)!important;
  color:var(--cb-text)!important;
  font-family:"Segoe UI","PingFang SC","Noto Sans SC",sans-serif;
}

body.body-div a{color:var(--cb-primary);text-decoration:none;transition:color .2s ease,background .2s ease,transform .2s ease}
body.body-div a:hover{color:var(--cb-secondary)}

.page-main,.cb-main{max-width:1280px;margin:0 auto;padding:0 20px 56px}

/* ── Header: 单行主导航 + 通栏彩色胶囊分类条 ── */
.cb-header{
  position:sticky;top:0;z-index:90;
  background:linear-gradient(180deg,#1c0f18 0%,rgba(18,8,16,.97) 100%);
  border-bottom:2px solid var(--cb-primary);
  box-shadow:0 10px 40px rgba(0,0,0,.5);
}
.cb-header__main{
  max-width:1280px;margin:0 auto;
  display:flex;align-items:center;gap:20px;
  padding:12px 20px;
}
.cb-brand{display:inline-flex;align-items:center;gap:12px;color:var(--cb-text)!important;flex-shrink:0}
.cb-brand__mark{
  display:grid;place-items:center;width:44px;height:44px;border-radius:12px;
  background:linear-gradient(135deg,var(--cb-primary),#be123c);
  color:#fff;font-size:1.1rem;font-weight:900;
  box-shadow:0 4px 18px var(--cb-glow,rgba(225,29,72,.35));
}
.cb-brand__text{display:flex;flex-direction:column;gap:2px}
.cb-brand__name{font-size:1.2rem;font-weight:900;color:var(--cb-primary);line-height:1.1}
.cb-brand__tag{font-size:.72rem;font-weight:700;color:var(--cb-muted);letter-spacing:.02em}
.cb-nav{
  flex:1;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 6px;
}
.cb-nav a{
  padding:8px 14px;border-radius:8px;
  color:var(--cb-muted)!important;font-weight:700;font-size:.875rem;
  border-bottom:2px solid transparent;transition:all .2s ease;
}
.cb-nav a:hover,.cb-nav a[aria-current="page"]{
  color:#fff!important;background:rgba(225,29,72,.18);
  border-bottom-color:var(--cb-primary);
}
.cb-header__actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.cb-search{
  display:flex;border-radius:999px;overflow:hidden;
  border:2px solid rgba(37,99,235,.45);background:var(--cb-surface);
}
.cb-search input{
  width:140px;padding:9px 14px;border:0;outline:none;
  background:transparent;color:var(--cb-text);font-size:.875rem;
}
.cb-search input::placeholder{color:var(--cb-muted)}
.cb-search button{
  padding:9px 16px;border:0;
  background:linear-gradient(135deg,var(--cb-secondary),#1d4ed8);
  color:#fff;font-weight:800;cursor:pointer;font-size:.85rem;
}
.cb-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:9px 18px;border-radius:999px;font-weight:800;font-size:.875rem;
  border:0;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;
}
.cb-btn--accent{
  background:rgba(253,224,71,.15);color:var(--cb-accent)!important;
  border:1px solid rgba(253,224,71,.4);
}
.cb-btn--accent:hover{background:rgba(253,224,71,.28);color:#fff!important}
.cb-btn--cta{
  background:linear-gradient(135deg,var(--cb-secondary),#1d4ed8);
  color:#fff!important;box-shadow:0 6px 22px rgba(37,99,235,.35);
}
.cb-btn--cta:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(37,99,235,.45)}
.cb-btn--outline{
  background:transparent;color:var(--cb-primary)!important;
  border:2px solid rgba(225,29,72,.45);
}
.cb-btn--outline:hover{background:rgba(225,29,72,.12);color:#fff!important}
.cb-nav-toggle{
  display:none;width:42px;height:42px;border-radius:10px;
  border:1px solid var(--cb-line);background:var(--cb-surface);
  color:var(--cb-text);font-size:1.2rem;cursor:pointer;
}

/* 通栏彩色胶囊分类 */
.cb-capsules{
  max-width:1280px;margin:0 auto;
  display:flex;flex-wrap:nowrap;gap:8px;
  padding:0 20px 12px;overflow-x:auto;
  scrollbar-width:none;-ms-overflow-style:none;
}
.cb-capsules::-webkit-scrollbar{display:none}
.cb-capsule{
  flex-shrink:0;padding:6px 16px;border-radius:999px;
  font-weight:800;font-size:.8rem;transition:transform .2s ease,box-shadow .2s ease;
}
.cb-capsule--red{background:rgba(225,29,72,.2);color:#fda4af!important;border:1px solid rgba(225,29,72,.45)}
.cb-capsule--blue{background:rgba(37,99,235,.2);color:#93c5fd!important;border:1px solid rgba(37,99,235,.45)}
.cb-capsule--pink{background:rgba(236,72,153,.18);color:#f9a8d4!important;border:1px solid rgba(236,72,153,.4)}
.cb-capsule--cyan{background:rgba(6,182,212,.18);color:#67e8f9!important;border:1px solid rgba(6,182,212,.4)}
.cb-capsule--violet{background:rgba(139,92,246,.18);color:#c4b5fd!important;border:1px solid rgba(139,92,246,.4)}
.cb-capsule--gold{background:rgba(253,224,71,.15);color:var(--cb-accent)!important;border:1px solid rgba(253,224,71,.4)}
.cb-capsule--teal{background:rgba(20,184,166,.18);color:#5eead4!important;border:1px solid rgba(20,184,166,.4)}
.cb-capsule--rose{background:rgba(244,63,94,.18);color:#fda4af!important;border:1px solid rgba(244,63,94,.4)}
.cb-capsule--ghost{background:rgba(255,255,255,.06);color:var(--cb-muted)!important;border:1px solid rgba(255,255,255,.12)}
.cb-capsule:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.3);color:#fff!important}

/* ── Hero: 通栏主推居中 ── */
.cb-hero{
  position:relative;margin:24px 0 36px;padding:56px 32px;
  border-radius:18px;overflow:hidden;
  background:linear-gradient(135deg,#2a0f1e 0%,#1a0820 50%,#0f1628 100%);
  border:1px solid color-mix(in srgb,var(--cb-primary) 55%, transparent);
  box-shadow:0 0 0 1px rgba(225,29,72,.2), inset 0 -3px 0 var(--cb-primary);
}
.cb-hero__glow{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 25% 40%, rgba(225,29,72,.45), transparent 42%),
    radial-gradient(circle at 75% 30%, rgba(37,99,235,.35), transparent 45%);
}
.cb-hero__inner{position:relative;max-width:720px;margin:0 auto;text-align:center}
.cb-hero__eyebrow{
  display:inline-flex;margin:0 0 16px;padding:6px 16px;border-radius:999px;
  background:rgba(253,224,71,.15);color:var(--cb-accent);
  font-weight:800;font-size:.8rem;letter-spacing:.06em;
}
.cb-hero h1{
  margin:0 0 16px;font-size:clamp(1.7rem,4vw,2.6rem);
  line-height:1.15;font-weight:900;color:var(--cb-text);letter-spacing:-.02em;
}
.cb-hero__lead{
  margin:0 auto 28px;max-width:560px;
  color:var(--cb-muted);line-height:1.75;font-size:1rem;
}
.cb-hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}

/* ── Block sections ── */
.cb-block{margin-bottom:44px}
.cb-block__head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:20px;padding-bottom:12px;
  border-bottom:2px solid rgba(225,29,72,.15);
}
.cb-block__head h2{
  display:flex;align-items:center;gap:10px;margin:0;
  font-size:1.3rem;font-weight:900;color:var(--cb-text);
}
.cb-block__head a{color:var(--cb-secondary)!important;font-weight:800;font-size:.9rem}
.cb-block__head a:hover{color:var(--cb-primary)!important}
.cb-block__badge{
  display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;
  background:linear-gradient(135deg,var(--cb-primary),#be123c);
  color:#fff;font-size:.75rem;font-weight:900;
}
.cb-block__badge--new{background:linear-gradient(135deg,var(--cb-secondary),#1d4ed8)}
.cb-block--hot .cb-block__head{border-bottom-color:rgba(37,99,235,.25)}

/* ── Grids ── */
.cb-grid{display:grid;gap:20px}
.cb-grid--playlist{grid-template-columns:repeat(6,minmax(0,1fr))}
.cb-grid--latest{grid-template-columns:repeat(6,minmax(0,1fr))}
.cb-grid--cat{grid-template-columns:repeat(4,minmax(0,1fr))}
.cb-grid--related{grid-template-columns:repeat(4,minmax(0,1fr))}

/* ── Cards: 竖版2:3 · 底部渐变 · 播放图标 ── */
.cb-card{
  background:var(--cb-surface);border-radius:14px;overflow:hidden;
  border:1px solid rgba(225,29,72,.12);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.cb-card:hover{
  transform:translateY(-5px);
  border-color:rgba(37,99,235,.5);
  box-shadow:0 14px 40px rgba(225,29,72,.2);
}
.cb-card__link{display:block;color:inherit;text-decoration:none}
.cb-card__poster{position:relative;overflow:hidden;background:#0a0610}
.cb-card__poster img{
  width:100%;aspect-ratio:2/3;object-fit:cover;display:block;
  transition:transform .4s ease;
}
.cb-card:hover .cb-card__poster img{transform:scale(1.05)}
.cb-card__overlay{
  position:absolute;inset:0;display:grid;place-items:center;
  background:linear-gradient(180deg,transparent 40%,rgba(18,8,16,.85));
  opacity:0;transition:opacity .25s ease;
}
.cb-card:hover .cb-card__overlay{opacity:1}
.cb-card__play{
  display:grid;place-items:center;width:48px;height:48px;border-radius:50%;
  background:linear-gradient(135deg,var(--cb-secondary),#1d4ed8);
  color:#fff;font-size:1rem;box-shadow:0 6px 20px rgba(37,99,235,.5);
}
.cb-card__badge{
  position:absolute;top:10px;left:10px;z-index:2;
  padding:4px 10px;border-radius:999px;font-size:.7rem;font-weight:800;
  background:linear-gradient(135deg,var(--cb-accent),#facc15);color:#1a0a12;
}
.cb-card__info{padding:12px 14px 16px}
.cb-card__info h3{
  margin:0 0 8px;font-size:.92rem;line-height:1.35;font-weight:800;
  color:var(--cb-text);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.cb-card__meta{
  margin:0;display:flex;flex-wrap:wrap;gap:6px;
  font-size:.72rem;color:var(--cb-muted);font-weight:600;
}
.cb-card__meta span{
  padding:2px 8px;border-radius:999px;
  background:rgba(37,99,235,.12);color:#93c5fd;
}

/* Compact: 榜单横向条目 */
.cb-card--compact .cb-card__link{
  display:grid;grid-template-columns:36px 72px 1fr auto;align-items:center;
  gap:12px;padding:12px 14px;
}
.cb-card--compact .cb-card__rank{
  font-size:1.1rem;font-weight:900;color:var(--cb-primary);
  text-align:center;
}
.cb-card--compact .cb-card__poster--sm img{
  aspect-ratio:2/3;border-radius:8px;
}
.cb-card--compact .cb-card__info{padding:0}
.cb-card--compact .cb-card__go{
  padding:8px 16px;border-radius:999px;font-size:.78rem;font-weight:800;
  background:linear-gradient(135deg,var(--cb-secondary),#1d4ed8);color:#fff;
}

/* ── Category: 顶部横条筛选 + 四列网格 ── */
.cb-cat-head{
  margin:28px 0 24px;padding:28px 32px;border-radius:18px;
  background:var(--cb-surface);
  border-top:4px solid var(--cb-secondary);
  box-shadow:0 12px 40px rgba(0,0,0,.3);
}
.cb-cat-head h1{
  margin:10px 0 8px;font-size:clamp(1.5rem,3vw,2.1rem);
  font-weight:900;color:var(--cb-text);
}
.cb-cat-head p{margin:0;color:var(--cb-muted);line-height:1.65;max-width:640px}
.cb-crumb,.div-crumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  margin-bottom:10px;color:var(--cb-muted);font-size:.875rem;font-weight:600;
}
.cb-crumb a,.div-crumb a{color:var(--cb-primary)!important}
.cb-crumb span{opacity:.5}

.cb-filter-bar{
  margin-bottom:24px;padding:16px 20px;border-radius:14px;
  background:var(--cb-panel);border:1px solid rgba(37,99,235,.25);
}
.cb-filter-bar__row{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
}
.cb-filter-bar__label{
  font-size:.85rem;font-weight:900;color:var(--cb-primary);
  padding-right:8px;border-right:2px solid rgba(225,29,72,.3);
  margin-right:4px;
}
.cb-filter-bar input,.cb-filter-bar select,
.filter-panel input,.filter-panel select{
  flex:1;min-width:140px;padding:10px 14px;border-radius:999px;
  border:1px solid rgba(225,29,72,.25);
  background:var(--cb-bg);color:var(--cb-text);font-size:.875rem;outline:none;
}
.cb-filter-bar input:focus,.cb-filter-bar select:focus{border-color:var(--cb-secondary)}

/* ── Play page: 左播放器 + 右侧信息面板 ── */
.cb-play{
  display:grid;grid-template-columns:1.4fr .9fr;gap:24px;
  margin:24px 0 36px;padding:24px;border-radius:18px;
  background:var(--cb-surface);border:1px solid rgba(37,99,235,.2);
}
.cb-player-box{
  position:relative;overflow:hidden;border-radius:14px;
  background:#000;border:2px solid rgba(37,99,235,.35);
}
.cb-player-box video,#movie-player{
  width:100%;aspect-ratio:16/9;display:block;background:#000;
}
.cb-play__label{
  margin:12px 0 0;font-size:1rem;font-weight:800;color:var(--cb-muted);
}
.cb-play__panel{display:flex;flex-direction:column;gap:12px}
.cb-play__poster{
  width:120px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.4);
  align-self:flex-start;
}
.cb-play__panel h1{
  margin:0;font-size:clamp(1.3rem,2.5vw,1.8rem);
  font-weight:900;color:var(--cb-text);line-height:1.25;
}
.cb-play__tags{display:flex;flex-wrap:wrap;gap:8px}
.cb-play__tags span{
  padding:5px 12px;border-radius:999px;font-size:.78rem;font-weight:700;
  background:rgba(225,29,72,.15);color:#fda4af;border:1px solid rgba(225,29,72,.3);
}
.cb-play__tags span:nth-child(even){
  background:rgba(37,99,235,.15);color:#93c5fd;border-color:rgba(37,99,235,.3);
}
.cb-play__desc,.cb-play__full{color:var(--cb-muted);line-height:1.75;font-size:.92rem}
.cb-play__full{
  margin-top:8px;padding-top:12px;
  border-top:1px solid rgba(225,29,72,.12);
}

/* ── Footer: 题材条 + 底栏双行 ── */
.cb-footer{
  margin-top:48px;
  background:linear-gradient(180deg,#1c0f18,#120810);
  border-top:2px solid rgba(225,29,72,.28);
}
.cb-footer__strip{
  max-width:1280px;margin:0 auto;
  display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;
  padding:20px 20px 16px;
  border-bottom:1px solid rgba(37,99,235,.15);
}
.cb-footer__label{
  font-size:.8rem;font-weight:900;color:var(--cb-secondary);
  text-transform:uppercase;letter-spacing:.08em;
}
.cb-footer__pills{display:flex;flex-wrap:wrap;gap:8px}
.cb-footer__pills a{
  padding:6px 14px;border-radius:999px;font-size:.82rem;font-weight:700;
  background:rgba(225,29,72,.12);color:var(--cb-muted)!important;
  border:1px solid rgba(225,29,72,.25);
}
.cb-footer__pills a:hover{background:var(--cb-primary);color:#fff!important}
.cb-footer__base{
  max-width:1280px;margin:0 auto;
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;
  padding:20px 20px 28px;
}
.cb-footer__brand strong{
  display:block;margin-bottom:8px;font-size:1.15rem;
  color:var(--cb-primary);font-weight:900;
}
.cb-footer__brand p{margin:0;color:var(--cb-muted);line-height:1.65;font-size:.875rem;max-width:480px}
.cb-footer__links{display:flex;flex-wrap:wrap;gap:16px 24px}
.cb-footer__links a{color:var(--cb-muted)!important;font-weight:700;font-size:.9rem}
.cb-footer__links a:hover{color:var(--cb-secondary)!important}

/* ── Legacy pages (search/rank/categories) ── */
body.body-div .page-hero,.body-div .compact-hero{
  margin:28px 0;padding:32px 28px;border-radius:18px;
  background:var(--cb-surface);border-top:4px solid var(--cb-primary);
}
body.body-div .compact-hero h1{color:var(--cb-text);font-weight:900;margin:0 0 10px}
body.body-div .compact-hero p{color:var(--cb-muted);margin:0;line-height:1.7}
body.body-div .eyebrow,.body-div .eyebrow.solo{
  display:inline-flex;margin-bottom:12px;padding:5px 12px;border-radius:999px;
  background:rgba(253,224,71,.15);color:var(--cb-accent);font-weight:800;font-size:.8rem;
}
body.body-div .filter-panel{
  display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding:16px 18px;
  border-radius:14px;background:var(--cb-panel);border:1px solid rgba(37,99,235,.2);
}
body.body-div .movie-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
body.body-div .section-block{margin-bottom:36px}
body.body-div .section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
body.body-div .section-head h2{color:var(--cb-text);font-weight:900;margin:0}
body.body-div .section-head a{color:var(--cb-secondary)!important;font-weight:800}
body.body-div .section-icon{
  display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;
  background:rgba(225,29,72,.2);color:var(--cb-primary);font-weight:900;
}
body.body-div .category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
body.body-div .category-tile,.body-div .overview-card{
  display:block;padding:22px;border-radius:14px;background:var(--cb-surface);
  border:1px solid rgba(37,99,235,.2);transition:transform .2s ease,border-color .2s ease;
}
body.body-div .category-tile:hover{border-color:var(--cb-primary);transform:translateY(-3px)}
body.body-div .category-tile strong,.body-div .overview-main strong{
  display:block;margin-bottom:8px;font-size:1.1rem;color:var(--cb-primary);
}
body.body-div .category-tile span{color:var(--cb-muted);line-height:1.6;font-size:.9rem}
body.body-div .rank-panel{
  padding:20px;border-radius:14px;background:var(--cb-surface);
  border:1px solid rgba(225,29,72,.14);
}
body.body-div .empty-state{
  padding:32px;border-radius:12px;background:var(--cb-surface);
  color:var(--cb-muted);text-align:center;font-weight:700;
}

@media (max-width:1100px){
  .cb-grid--playlist,.cb-grid--latest{grid-template-columns:repeat(4,minmax(0,1fr))}
  .cb-grid--cat,.cb-grid--related{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cb-play{grid-template-columns:1fr}
}

@media (max-width:820px){
  .cb-header__main{flex-wrap:wrap;padding:12px 16px}
  .cb-nav{
    display:none;width:100%;flex-direction:column;align-items:stretch;
    padding:12px 0 0;border-top:1px solid rgba(225,29,72,.15);
  }
  .cb-nav.open{display:flex}
  .cb-nav a{padding:10px 14px;border-radius:10px;border-bottom:0}
  .cb-nav-toggle{display:block}
  .cb-header__actions{margin-left:auto}
  .cb-search input{width:100px}
  .cb-capsules{padding:0 16px 10px}
  .cb-hero{margin:16px 0 28px;padding:40px 20px;border-radius:16px}
  .cb-grid--playlist,.cb-grid--latest{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  .cb-grid--cat,.cb-grid--related{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cb-filter-bar__row{flex-direction:column;align-items:stretch}
  .cb-filter-bar__label{border-right:0;padding-right:0;margin-right:0}
  .cb-filter-bar input,.cb-filter-bar select{min-width:0;width:100%}
  .cb-footer__base{flex-direction:column}
  body.body-div .movie-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.body-div .category-grid{grid-template-columns:1fr}
  .page-main,.cb-main{padding:0 16px 48px}
}

@media (max-width:520px){
  .cb-grid--playlist,.cb-grid--latest,.cb-grid--cat,.cb-grid--related{
    grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;
  }
  .cb-btn--accent{display:none}
  .cb-search input{width:80px;padding:9px 10px}
  .cb-card--compact .cb-card__link{grid-template-columns:28px 64px 1fr;grid-template-rows:auto auto}
  .cb-card--compact .cb-card__go{grid-column:2/-1;justify-self:start;margin-top:4px}
  .cb-play__poster{width:100px}
  body.body-div .movie-grid{grid-template-columns:1fr}
}

@media (max-width:380px){
  .cb-grid--playlist,.cb-grid--latest,.cb-grid--cat,.cb-grid--related{
    grid-template-columns:1fr;
  }
}
