:root{
    --peach:#ff6f91;
    --peach-deep:#e8486f;
    --peach-soft:#ffb6c6;
    --ink:#241820;
    --ink-soft:#6d5b64;
    --paper:#fff7f9;
    --card:#fffdfe;
    --line:#f3dfe6;
    --gold:#f7c873;
    --radius:18px;
    --shadow:0 12px 34px rgba(220,110,140,.14);
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
    background:var(--paper);
    color:var(--ink);
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{display:block;max-width:100%;}
  a{color:inherit;text-decoration:none;}
  .wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 18px;}

  /* 顶部公告条 */
  .notice-bar{
    position:sticky;top:0;z-index:60;
    background:linear-gradient(90deg,#ffd9e3,#ffe8ee 45%,#ffd9e3);
    color:#8a2c46;font-size:13px;border-bottom:1px solid #ffc9d7;
    overflow:hidden;
  }
  .notice-track{
    display:flex;gap:48px;white-space:nowrap;
    padding:8px 0;
    animation:marquee 26s linear infinite;
  }
  .notice-track span{display:inline-flex;align-items:center;gap:8px;}
  .notice-track b{color:var(--peach-deep);}
  @keyframes marquee{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }

  /* 顶部导航 */
  .site-header{
    position:sticky;top:33px;z-index:55;
    background:rgba(255,247,249,.92);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .header-inner{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:12px 0;
  }
  .brand{display:flex;align-items:center;gap:10px;}
  .brand img{height:34px;width:34px;object-fit:cover;border-radius:10px;}
  .brand-name{font-size:19px;font-weight:800;letter-spacing:.5px;}
  .nav-links{display:flex;gap:6px;flex-wrap:wrap;font-size:14px;}
  .nav-links a{
    padding:6px 12px;border-radius:999px;color:var(--ink-soft);
    transition:background .25s,color .25s;
  }
  .nav-links a:hover{background:#ffe4ec;color:var(--peach-deep);}
  .btn-download{
    display:inline-flex;align-items:center;gap:6px;
    background:linear-gradient(135deg,var(--peach),var(--peach-deep));
    color:#fff;font-weight:700;font-size:14px;
    padding:10px 22px;border-radius:999px;
    box-shadow:0 8px 20px rgba(232,72,111,.32);
    transition:transform .25s,box-shadow .25s;
    white-space:nowrap;
  }
  .btn-download:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(232,72,111,.42);}
  .btn-ghost{
    background:transparent;color:var(--peach-deep);
    border:1.5px solid var(--peach-soft);box-shadow:none;
  }
  .btn-ghost:hover{background:#ffe9ef;box-shadow:none;}

  /* 首屏 */
  .hero{
    position:relative;overflow:hidden;
    padding:56px 0 64px;
    background:
      radial-gradient(900px 420px at 82% 0%,#ffe0e9 0%,rgba(255,224,233,0) 70%),
      radial-gradient(700px 360px at 8% 90%,#ffe9d6 0%,rgba(255,233,214,0) 70%),
      var(--paper);
  }
  .hero-grid{
    display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;
  }
  .hero-kicker{
    display:inline-block;font-size:13px;color:var(--peach-deep);
    background:#ffe7ee;border:1px solid #ffd0de;
    padding:5px 14px;border-radius:999px;margin-bottom:18px;
  }
  .hero h1{
    font-size:42px;line-height:1.3;letter-spacing:-.5px;font-weight:900;
    margin-bottom:18px;
  }
  .hero h1 em{
    font-style:normal;
    background:linear-gradient(120deg,var(--peach-deep),#ff9c6e);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero p.lead{font-size:16px;color:var(--ink-soft);max-width:520px;margin-bottom:14px;}
  .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;align-items:center;}
  .hero-note{font-size:13px;color:#9b8691;}
  .hero-visual{position:relative;}
  .hero-visual img{
    width:100%;border-radius:24px;box-shadow:var(--shadow);
    object-fit:cover;aspect-ratio:4/5;
  }
  .hero-float{
    position:absolute;left:-14px;bottom:22px;
    background:#fff;border-radius:14px;padding:12px 16px;
    box-shadow:var(--shadow);border:1px solid var(--line);
    font-size:13px;color:var(--ink-soft);
  }
  .hero-float strong{display:block;color:var(--peach-deep);font-size:16px;}

  /* 区块通用 */
  section{padding:64px 0;}
  .section-head{margin-bottom:32px;}
  .section-head .eyebrow{
    font-size:13px;color:var(--peach-deep);font-weight:700;letter-spacing:2px;
    display:block;margin-bottom:8px;
  }
  .section-head h2{font-size:29px;font-weight:900;letter-spacing:-.3px;}
  .section-head p{color:var(--ink-soft);font-size:15px;margin-top:8px;max-width:640px;}

  /* 热播榜横向滚动 */
  .rank-rail{
    display:flex;gap:20px;overflow-x:auto;padding:8px 4px 22px;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .rank-rail::-webkit-scrollbar{height:8px;}
  .rank-rail::-webkit-scrollbar-thumb{background:#ffc9d8;border-radius:999px;}
  .rank-card{
    flex:0 0 212px;scroll-snap-align:start;position:relative;
    border-radius:var(--radius);overflow:hidden;
    background:var(--card);border:1px solid var(--line);
    box-shadow:0 6px 18px rgba(220,110,140,.08);
    transition:transform .35s ease,box-shadow .35s ease;
    cursor:pointer;
  }
  .rank-card img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .5s ease;}
  .rank-card::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);
    transform:translateX(-120%);transition:transform .7s ease;
  }
  .rank-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 18px 36px rgba(220,110,140,.24);}
  .rank-card:hover::after{transform:translateX(120%);}
  .rank-card:hover img{transform:scale(1.06);}
  .rank-meta{
    padding:12px 14px 14px;
  }
  .rank-meta h3{font-size:15px;font-weight:800;line-height:1.4;}
  .rank-meta span{font-size:12px;color:var(--ink-soft);}
  .rank-badge{
    position:absolute;top:10px;left:10px;
    background:rgba(36,24,32,.72);color:#fff;
    font-size:12px;padding:3px 9px;border-radius:999px;
    backdrop-filter:blur(4px);
  }
  .play-tag{
    position:absolute;left:10px;bottom:66px;
    background:rgba(255,111,145,.92);color:#fff;font-size:12px;
    padding:4px 10px;border-radius:999px;
    opacity:0;transform:translateY(8px);
    transition:opacity .3s,transform .3s;
  }
  .rank-card:hover .play-tag{opacity:1;transform:translateY(0);}

  /* 分类剧场 */
  .theater-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  }
  .theater-card{
    position:relative;border-radius:var(--radius);padding:26px 22px;
    color:#fff;overflow:hidden;min-height:132px;
    display:flex;flex-direction:column;justify-content:space-between;
    transition:transform .3s,box-shadow .3s;
  }
  .theater-card:hover{transform:translateY(-6px);box-shadow:0 16px 30px rgba(150,60,90,.22);}
  .theater-card .icon{font-size:26px;}
  .theater-card h3{font-size:19px;font-weight:800;margin-top:12px;}
  .theater-card p{font-size:13px;opacity:.92;}
  .t1{background:linear-gradient(135deg,#ff9bb3,#ff6f91);}
  .t2{background:linear-gradient(135deg,#ff8f6b,#e8486f);}
  .t3{background:linear-gradient(135deg,#7b6cf0,#a78bfa);}
  .t4{background:linear-gradient(135deg,#6cc2b8,#2f8f93);}
  .t5{background:linear-gradient(135deg,#5b8def,#3d5fc4);}
  .t6{background:linear-gradient(135deg,#f0b45c,#d98a2b);}

  /* 新剧首发轮播 */
  .premiere{
    display:grid;grid-template-columns:1.35fr .65fr;gap:22px;align-items:stretch;
  }
  .premiere-stage{
    position:relative;border-radius:22px;overflow:hidden;
    box-shadow:var(--shadow);background:#1d1219;
  }
  .slide{display:none;position:relative;}
  .slide.active{display:block;}
  .slide img{width:100%;aspect-ratio:16/10;object-fit:cover;opacity:.94;}
  .slide-copy{
    position:absolute;left:0;right:0;bottom:0;padding:28px 26px 22px;
    background:linear-gradient(to top,rgba(20,10,16,.9),rgba(20,10,16,0));
    color:#fff;
  }
  .slide-copy h3{font-size:22px;font-weight:900;}
  .slide-copy p{font-size:14px;opacity:.88;margin-top:4px;}
  .progress{
    position:absolute;left:0;bottom:0;height:4px;width:100%;background:rgba(255,255,255,.22);
  }
  .progress i{
    display:block;height:100%;width:0;background:linear-gradient(90deg,var(--peach-soft),var(--peach));
    transition:width .3s linear;
  }
  .thumb-col{display:flex;flex-direction:column;gap:12px;}
  .thumb{
    border-radius:14px;overflow:hidden;border:2px solid transparent;
    cursor:pointer;position:relative;background:#fff;
    box-shadow:0 4px 14px rgba(220,110,140,.08);
    transition:border-color .3s,transform .3s;
  }
  .thumb img{width:100%;aspect-ratio:16/9;object-fit:cover;}
  .thumb span{
    position:absolute;left:8px;bottom:6px;font-size:12px;color:#fff;
    text-shadow:0 1px 4px rgba(0,0,0,.7);
  }
  .thumb.active{border-color:var(--peach);transform:translateX(-4px);}

  /* 演员阵容墙 */
  .cast-grid{
    display:grid;grid-template-columns:repeat(5,1fr);gap:20px;
  }
  .cast-card{
    text-align:center;position:relative;
  }
  .cast-avatar{
    position:relative;width:100%;aspect-ratio:1/1;border-radius:50%;
    overflow:hidden;border:3px solid #fff;
    box-shadow:0 8px 22px rgba(220,110,140,.18);
    transition:transform .35s,box-shadow .35s;
  }
  .cast-avatar img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
  .cast-card:hover .cast-avatar{
    transform:scale(1.06);
    box-shadow:0 0 0 6px rgba(255,182,198,.45),0 12px 28px rgba(232,72,111,.3);
  }
  .cast-card:hover .cast-avatar img{transform:scale(1.08);}
  .cast-info{margin-top:12px;}
  .cast-info b{display:block;font-size:15px;}
  .cast-info small{color:var(--ink-soft);font-size:12px;}
  .cast-hover{
    position:absolute;left:0;right:0;bottom:0;
    background:rgba(36,24,32,.78);color:#fff;font-size:12px;
    padding:6px 8px;border-radius:0 0 999px 999px;
    opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s;
  }
  .cast-card:hover .cast-hover{opacity:1;transform:translateY(0);}

  /* 数据成就条 */
  .stats-band{
    background:linear-gradient(120deg,#2b1a23,#4a2536 55%,#6b2c42);
    color:#fff;border-radius:26px;padding:42px 24px;
    display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center;
    box-shadow:0 20px 44px rgba(90,30,55,.28);
  }
  .stat-item b{
    display:block;font-size:34px;font-weight:900;
    background:linear-gradient(120deg,#ffd6a3,#ff9bb3);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    letter-spacing:-1px;
  }
  .stat-item span{font-size:13px;opacity:.78;}

  /* 会员权益 */
  .vip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch;}
  .vip-card{
    background:var(--card);border:1px solid var(--line);border-radius:22px;
    padding:28px 24px;display:flex;flex-direction:column;
    box-shadow:0 6px 18px rgba(220,110,140,.07);
    transition:transform .3s,box-shadow .3s;
  }
  .vip-card:hover{transform:translateY(-4px);}
  .vip-card.hot{
    background:linear-gradient(160deg,#fff2f6,#ffe1ea);
    border-color:#ffbccd;transform:translateY(-10px);
    box-shadow:0 0 0 2px rgba(255,111,145,.28),0 22px 44px rgba(232,72,111,.28);
    position:relative;
  }
  .vip-card.hot:hover{transform:translateY(-14px);}
  .vip-tag{
    position:absolute;top:-13px;left:50%;transform:translateX(-50%);
    background:linear-gradient(135deg,var(--peach),var(--peach-deep));
    color:#fff;font-size:12px;font-weight:700;padding:4px 16px;border-radius:999px;
    box-shadow:0 6px 14px rgba(232,72,111,.35);white-space:nowrap;
  }
  .vip-card h3{font-size:19px;font-weight:900;margin-bottom:6px;}
  .vip-card .price{font-size:14px;color:var(--ink-soft);margin-bottom:18px;}
  .vip-list{list-style:none;font-size:14px;color:var(--ink-soft);flex:1;}
  .vip-list li{padding:7px 0;border-bottom:1px dashed #f4e2e8;display:flex;gap:8px;}
  .vip-list li::before{content:"•";color:var(--peach);font-weight:900;}
  .vip-card .btn-download{margin-top:20px;justify-content:center;}

  /* 好评弹幕墙 */
  .review-area{position:relative;overflow:hidden;}
  .danmaku-layer{
    position:absolute;inset:0;pointer-events:none;overflow:hidden;
  }
  .danmaku{
    position:absolute;white-space:nowrap;font-size:13px;
    color:var(--peach-deep);background:rgba(255,255,255,.85);
    border:1px solid #ffd9e3;border-radius:999px;padding:3px 12px;
    animation:fly linear infinite;
  }
  @keyframes fly{
    from{transform:translateX(100vw);}
    to{transform:translateX(-120%);}
  }
  .review-wall{
    display:grid;grid-template-columns:repeat(3,1fr);gap:16px;position:relative;z-index:2;
  }
  .review-card{
    background:var(--card);border:1px solid var(--line);border-radius:16px;
    padding:18px;box-shadow:0 4px 14px rgba(220,110,140,.06);
  }
  .review-card p{font-size:14px;color:#4a3a42;}
  .review-user{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:12px;color:var(--ink-soft);}
  .dot{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#ffb6c6,#ff6f91);}

  /* 猜你喜欢 */
  .rec-rail{
    display:flex;gap:16px;overflow-x:auto;padding:6px 4px 20px;
    scroll-snap-type:x mandatory;
  }
  .rec-rail::-webkit-scrollbar{height:8px;}
  .rec-rail::-webkit-scrollbar-thumb{background:#ffd0de;border-radius:999px;}
  .rec-card{
    flex:0 0 168px;scroll-snap-align:start;border-radius:16px;overflow:hidden;
    background:#fff;border:1px solid var(--line);
    transition:transform .3s,box-shadow .3s;
  }
  .rec-card:hover{transform:translateY(-6px);box-shadow:0 14px 28px rgba(220,110,140,.2);}
  .rec-card img{width:100%;aspect-ratio:3/4;object-fit:cover;}
  .rec-card b{display:block;font-size:13px;padding:9px 10px;}

  /* 时间轴 */
  .timeline{position:relative;padding-left:26px;}
  .timeline::before{
    content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;
    background:linear-gradient(to bottom,var(--peach-soft),#ffe9d6);
  }
  .tl-item{position:relative;padding:0 0 26px 8px;}
  .tl-item::before{
    content:"";position:absolute;left:-25px;top:6px;width:12px;height:12px;
    border-radius:50%;background:#fff;border:3px solid var(--peach);
  }
  .tl-item b{font-size:16px;}
  .tl-item span{display:block;font-size:13px;color:var(--ink-soft);}
  .countdown{
    display:inline-block;margin-top:6px;font-size:12px;color:var(--peach-deep);
    background:#ffe9ef;padding:2px 10px;border-radius:999px;
  }

  /* 底部相关搜索 */
  .tag-cloud{display:flex;flex-wrap:wrap;gap:10px;}
  .tag-cloud a{
    font-size:13px;color:var(--ink-soft);background:#fff;
    border:1px solid var(--line);border-radius:999px;padding:7px 14px;
    transition:color .25s,border-color .25s;
  }
  .tag-cloud a:hover{color:var(--peach-deep);border-color:var(--peach-soft);}

  /* 弹窗 */
  .modal{
    position:fixed;inset:0;z-index:200;display:none;
    background:rgba(30,15,24,.66);backdrop-filter:blur(4px);
    align-items:center;justify-content:center;padding:20px;
  }
  .modal.open{display:flex;}
  .modal-box{
    background:#fff;border-radius:20px;max-width:520px;width:100%;
    padding:26px 24px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.3);
  }
  .modal-box h3{font-size:18px;font-weight:800;margin-bottom:10px;}
  .modal-box p{font-size:14px;color:var(--ink-soft);margin-bottom:16px;}
  .copy-field{
    display:flex;gap:8px;background:#fff4f7;border:1px dashed #ffbccd;
    border-radius:12px;padding:10px 12px;font-size:13px;color:#8a2c46;
    word-break:break-all;text-align:left;margin-bottom:16px;
  }
  .modal-close{
    background:#ffe4ec;color:var(--peach-deep);border:none;
    padding:9px 20px;border-radius:999px;font-size:14px;cursor:pointer;font-weight:700;
  }

  /* 光晕跟随 */
  .cursor-glow{
    position:fixed;width:280px;height:280px;border-radius:50%;
    pointer-events:none;z-index:1;
    background:radial-gradient(circle,rgba(255,150,180,.16),rgba(255,150,180,0) 68%);
    transform:translate(-50%,-50%);transition:opacity .3s;
    top:0;left:0;
  }

  /* 页脚 */
  .site-footer{
    border-top:1px solid var(--line);padding:34px 0 40px;
    font-size:12.5px;color:#a3929b;background:#fffafb;
  }
  .footer-inner{display:flex;flex-direction:column;gap:8px;}
  .site-footer a{color:#a3929b;text-decoration:underline;}
  .site-footer a:hover{color:var(--peach-deep);}

  /* 响应式 */
  @media(max-width:1024px){
    .hero-grid{grid-template-columns:1fr;gap:32px;}
    .hero h1{font-size:34px;}
    .hero-visual{max-width:460px;}
    .theater-grid{grid-template-columns:repeat(3,1fr);}
    .premiere{grid-template-columns:1fr;}
    .thumb-col{flex-direction:row;overflow-x:auto;}
    .thumb{flex:0 0 160px;}
    .cast-grid{grid-template-columns:repeat(4,1fr);}
    .stats-band{grid-template-columns:repeat(2,1fr);}
    .vip-grid{grid-template-columns:1fr;}
    .vip-card.hot{transform:none;}
    .review-wall{grid-template-columns:repeat(2,1fr);}
  }
  @media(max-width:768px){
    .site-header{top:35px;}
    .header-inner{flex-wrap:wrap;gap:10px;}
    .nav-links{order:3;width:100%;justify-content:flex-start;gap:2px;font-size:13px;}
    .nav-links a{padding:6px 9px;}
    .hero{padding:38px 0 46px;}
    .hero h1{font-size:28px;}
    .hero p.lead{font-size:15px;}
    .btn-download{padding:9px 18px;font-size:13px;}
    section{padding:44px 0;}
    .section-head h2{font-size:23px;}
    .theater-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
    .rank-card{flex:0 0 168px;}
    .cast-grid{grid-template-columns:repeat(3,1fr);gap:14px;}
    .stats-band{padding:30px 16px;}
    .stat-item b{font-size:26px;}
    .review-wall{grid-template-columns:1fr;}
    .rec-card{flex:0 0 142px;}
    .cursor-glow{display:none;}
    .notice-track{font-size:12px;gap:32px;}
  }
  @media(max-width:420px){
    .cast-grid{grid-template-columns:repeat(2,1fr);}
    .stats-band{grid-template-columns:1fr 1fr;}
  }