:root{
    --peach:#ff7a93;
    --peach-soft:#ffb3c2;
    --plum:#2a1626;
    --night:#160d15;
    --night-2:#1f1220;
    --card:#241528;
    --text:#f7eef2;
    --muted:#c3a9b6;
    --gold:#f6c98a;
    --line:rgba(255,179,194,.16);
    --radius:18px;
  }
  *{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:radial-gradient(1200px 700px at 80% -10%,#3a1d33 0%,transparent 60%),
               radial-gradient(900px 600px at 0% 20%,#2b1526 0%,transparent 55%),
               var(--night);
    color:var(--text);
    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 20px}

  /* 顶部公告 */
  .notice{
    background:linear-gradient(90deg,#3a1526,#5a2036,#3a1526);
    color:#ffd9e2;font-size:13px;letter-spacing:.3px;
    border-bottom:1px solid rgba(255,179,194,.18);
  }
  .notice .wrap{display:flex;align-items:center;gap:10px;height:38px;overflow:hidden}
  .notice .dot{width:7px;height:7px;border-radius:50%;background:var(--peach);box-shadow:0 0 10px var(--peach);flex:none}
  .notice-track{overflow:hidden;flex:1;white-space:nowrap}
  .notice-track span{display:inline-block;padding-left:100%;animation:marquee 22s linear infinite;font-size:13px}
  @keyframes marquee{to{transform:translateX(-100%)}}
  .notice a{color:var(--gold);flex:none;font-size:12.5px}

  /* 头部导航 */
  header.site-head{
    position:sticky;top:0;z-index:60;
    backdrop-filter:blur(14px);
    background:rgba(22,13,21,.82);
    border-bottom:1px solid var(--line);
  }
  .head-inner{display:flex;align-items:center;gap:18px;height:64px}
  .brand{display:flex;align-items:center;gap:10px;flex:none}
  .brand img{height:34px;width:34px;border-radius:10px;object-fit:cover;box-shadow:0 0 18px rgba(255,122,147,.35)}
  .brand b{font-size:17px;letter-spacing:.5px}
  .nav{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}
  .nav a{
    font-size:13.5px;color:var(--muted);padding:7px 11px;border-radius:9px;
    transition:color .25s,background .25s;
  }
  .nav a:hover{color:#fff;background:rgba(255,122,147,.14)}
  .head-dl{
    flex:none;font-size:13.5px;padding:9px 16px;border-radius:999px;
    background:linear-gradient(120deg,#ff7a93,#c94a72);color:#fff;font-weight:600;
    box-shadow:0 6px 20px rgba(255,122,147,.28);
    transition:transform .25s,box-shadow .25s;
  }
  .head-dl:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(255,122,147,.4)}

  /* 首屏 */
  .hero{position:relative;padding:64px 0 56px;overflow:hidden}
  .hero::after{
    content:"";position:absolute;right:-160px;top:-120px;width:620px;height:620px;border-radius:50%;
    background:radial-gradient(circle,rgba(255,122,147,.22),transparent 65%);pointer-events:none;
  }
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;position:relative;z-index:2}
  .tagline{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--peach-soft);border:1px solid var(--line);padding:5px 12px;border-radius:999px;background:rgba(255,122,147,.08)}
  h1{font-size:clamp(28px,4.4vw,46px);line-height:1.28;margin:18px 0 16px;letter-spacing:.5px}
  h1 em{font-style:normal;color:var(--peach-soft);text-shadow:0 0 24px rgba(255,122,147,.5)}
  .hero p.lead{color:var(--muted);font-size:15.5px;max-width:520px}
  .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
  .btn-main{
    display:inline-flex;align-items:center;gap:9px;
    padding:14px 30px;border-radius:999px;font-weight:700;font-size:15.5px;
    background:linear-gradient(120deg,#ff8fa4,#d3547a);color:#2a0d18;
    box-shadow:0 10px 30px rgba(255,122,147,.32);transition:transform .25s,box-shadow .25s;
  }
  .btn-main:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(255,122,147,.46)}
  .btn-ghost{
    display:inline-flex;align-items:center;padding:13px 26px;border-radius:999px;font-size:15px;
    border:1px solid rgba(255,179,194,.35);color:var(--peach-soft);transition:background .25s;
  }
  .btn-ghost:hover{background:rgba(255,122,147,.12)}
  .hero-meta{display:flex;gap:22px;margin-top:30px;flex-wrap:wrap}
  .hero-meta div{font-size:13px;color:var(--muted)}
  .hero-meta b{display:block;font-size:19px;color:var(--text);margin-bottom:2px}
  .hero-poster{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.55);border:1px solid var(--line)}
  .hero-poster img{width:100%;height:440px;object-fit:cover;object-position:center top;transition:transform .8s ease}
  .hero-poster:hover img{transform:scale(1.04)}
  .hero-poster figcaption{
    position:absolute;left:0;right:0;bottom:0;padding:36px 22px 18px;font-size:13.5px;color:#ffe6ec;
    background:linear-gradient(transparent,rgba(14,7,13,.92));
  }

  /* 通用区块标题 */
  section{padding:56px 0}
  .sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:26px;flex-wrap:wrap}
  .sec-head h2{font-size:clamp(21px,2.6vw,28px);letter-spacing:.4px}
  .sec-head p{color:var(--muted);font-size:13.8px;max-width:520px;margin-top:6px}
  .sec-head .more{font-size:13px;color:var(--peach-soft);border-bottom:1px dashed rgba(255,179,194,.4);flex:none}

  /* 热播榜横向滚动 */
  .rail{display:flex;gap:18px;overflow-x:auto;padding:8px 4px 22px;scroll-snap-type:x mandatory}
  .rail::-webkit-scrollbar{height:6px}
  .rail::-webkit-scrollbar-thumb{background:rgba(255,122,147,.35);border-radius:99px}
  .poster-card{
    flex:0 0 210px;scroll-snap-align:start;border-radius:16px;overflow:hidden;position:relative;
    background:var(--card);border:1px solid var(--line);
    transition:transform .35s ease,box-shadow .35s ease;cursor:pointer;
  }
  .poster-card img{width:100%;height:300px;object-fit:cover}
  .poster-card .shine{
    position:absolute;inset:0;
    background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.42) 46%,transparent 62%);
    transform:translateX(-120%);transition:transform .8s ease;pointer-events:none;
  }
  .poster-card:hover{transform:translateY(-8px) scale(1.035);box-shadow:0 22px 44px rgba(0,0,0,.55),0 0 0 1px rgba(255,179,194,.35)}
  .poster-card:hover .shine{transform:translateX(120%)}
  .poster-info{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 11px;
    background:linear-gradient(transparent,rgba(10,5,9,.95));}
  .poster-info strong{display:block;font-size:14px;line-height:1.4}
  .playcount{
    position:absolute;top:10px;right:10px;font-size:11.5px;padding:3px 9px;border-radius:999px;
    background:rgba(10,5,9,.72);border:1px solid rgba(255,179,194,.35);color:#ffd7e0;
    opacity:0;transform:translateY(-6px);transition:.35s;
  }
  .poster-card:hover .playcount{opacity:1;transform:translateY(0)}

  /* 分类剧场宫格 */
  .genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  .genre{
    position:relative;border-radius:16px;padding:22px 18px;overflow:hidden;
    border:1px solid rgba(255,255,255,.08);
    transition:transform .3s,box-shadow .3s;
  }
  .genre:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(0,0,0,.45)}
  .genre .ico{
    width:44px;height:44px;border-radius:13px;display:grid;place-items:center;
    background:rgba(255,255,255,.15);font-size:20px;margin-bottom:14px;backdrop-filter:blur(4px);
  }
  .genre h3{font-size:16.5px;margin-bottom:5px}
  .genre p{font-size:12.8px;color:rgba(255,255,255,.82);line-height:1.55}
  .g1{background:linear-gradient(135deg,#ff8fa4,#c9457a)}
  .g2{background:linear-gradient(135deg,#f2a15c,#a8522c)}
  .g3{background:linear-gradient(135deg,#6d6fd8,#3a3a8c)}
  .g4{background:linear-gradient(135deg,#4fb59a,#22705e)}
  .g5{background:linear-gradient(135deg,#7b8fd1,#31456f)}
  .g6{background:linear-gradient(135deg,#c56bd0,#6b2f86)}

  /* 新剧首发轮播 */
  .feature{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:#120a10}
  .feature-slides{position:relative;height:420px}
  .feature-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
  .feature-slide.is-on{opacity:1}
  .feature-slide img{width:100%;height:100%;object-fit:cover}
  .feature-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,5,9,.92) 6%,rgba(10,5,9,.5) 48%,transparent 78%)}
  .feature-txt{position:absolute;left:32px;bottom:34px;z-index:2;max-width:56%}
  .feature-txt span{font-size:12px;color:var(--gold);letter-spacing:1px}
  .feature-txt strong{display:block;font-size:clamp(19px,2.4vw,27px);margin:8px 0 8px}
  .feature-txt p{font-size:13.5px;color:#e2c9d4}
  .feature-bar{height:3px;background:rgba(255,255,255,.12)}
  .feature-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff8fa4,#f6c98a);transition:width .3s linear}
  .thumbs{display:flex;gap:10px;padding:14px 16px;overflow-x:auto;background:rgba(20,11,18,.9)}
  .thumbs button{
    flex:0 0 74px;height:52px;border-radius:9px;overflow:hidden;padding:0;border:2px solid transparent;
    background:none;cursor:pointer;opacity:.55;transition:.3s;
  }
  .thumbs button img{width:100%;height:100%;object-fit:cover}
  .thumbs button.is-on{opacity:1;border-color:var(--peach)}

  /* 演员墙 */
  .cast-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
  .cast{text-align:center;position:relative}
  .cast .ava{
    width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;position:relative;
    border:2px solid rgba(255,179,194,.22);transition:transform .35s,box-shadow .35s;
  }
  .cast .ava img{width:100%;height:100%;object-fit:cover}
  .cast:hover .ava{transform:scale(1.06);box-shadow:0 0 0 3px rgba(255,122,147,.35),0 0 30px rgba(255,122,147,.45)}
  .cast b{display:block;font-size:13.5px;margin-top:12px}
  .cast small{display:block;font-size:11.5px;color:var(--muted);line-height:1.5;margin-top:2px}

  /* 数据条 */
  .stats{
    border-radius:22px;padding:34px 20px;
    background:linear-gradient(120deg,rgba(255,122,147,.14),rgba(90,32,54,.32));
    border:1px solid var(--line);
  }
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}
  .stat b{display:block;font-size:clamp(24px,3.2vw,34px);color:#ffd4de;letter-spacing:.5px}
  .stat span{font-size:12.8px;color:var(--muted)}

  /* 会员卡 */
  .vip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
  .vip{
    border-radius:20px;padding:26px 22px;background:var(--card);border:1px solid var(--line);
    display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s;position:relative;
  }
  .vip.hot{
    background:linear-gradient(165deg,#4a1c33,#2a1023);
    border-color:rgba(255,179,194,.45);
    box-shadow:0 0 0 1px rgba(255,179,194,.25),0 18px 44px rgba(255,122,147,.22);
    transform:translateY(-8px);
  }
  .vip.hot:hover{transform:translateY(-12px);box-shadow:0 0 0 1px rgba(255,179,194,.45),0 24px 56px rgba(255,122,147,.4)}
  .vip .rec{
    position:absolute;top:-11px;right:18px;font-size:11.5px;padding:3px 12px;border-radius:999px;
    background:linear-gradient(120deg,#ffd0a0,#f6a45c);color:#3a1a08;font-weight:700;
  }
  .vip h3{font-size:17px;margin-bottom:4px}
  .vip .sub{font-size:12.5px;color:var(--muted);margin-bottom:16px}
  .vip ul{list-style:none;font-size:13.5px;color:#e6d2db;display:grid;gap:9px;margin-bottom:22px}
  .vip ul li::before{content:"·";color:var(--peach);margin-right:8px;font-weight:700}
  .vip .pick{
    margin-top:auto;text-align:center;padding:11px;border-radius:999px;font-size:14px;font-weight:600;
    border:1px solid rgba(255,179,194,.35);color:var(--peach-soft);transition:.25s;
  }
  .vip .pick:hover{background:rgba(255,122,147,.14)}
  .vip.hot .pick{background:linear-gradient(120deg,#ff8fa4,#d3547a);color:#2a0d18;border-color:transparent}

  /* 弹幕墙 */
  .danmu-stage{position:relative;height:300px;overflow:hidden;border-radius:22px;border:1px solid var(--line);
    background:linear-gradient(120deg,rgba(42,22,38,.9),rgba(20,11,18,.95))}
  .danmu-line{position:absolute;white-space:nowrap;font-size:14px;color:#ffd7e0;
    animation:drift linear infinite;text-shadow:0 0 12px rgba(255,122,147,.5)}
  @keyframes drift{from{transform:translateX(100%)}to{transform:translateX(-110%)}}

  /* 推荐侧栏 & 时间轴 */
  .rec-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:26px;align-items:start}
  .rec-rail{display:flex;gap:14px;overflow-x:auto;padding-bottom:14px}
  .rec-card{flex:0 0 150px;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--card);transition:transform .3s}
  .rec-card:hover{transform:translateY(-5px)}
  .rec-card img{width:100%;height:206px;object-fit:cover}
  .rec-card span{display:block;font-size:12.8px;padding:9px 11px}
  .timeline{list-style:none;display:grid;gap:14px}
  .timeline li{
    display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;
    background:var(--card);border:1px solid var(--line);
  }
  .timeline .when{font-size:12px;color:var(--gold);flex:none;width:74px;letter-spacing:.5px}
  .timeline .what b{display:block;font-size:14px}
  .timeline .what small{font-size:12px;color:var(--muted)}

  /* 复制弹窗 */
  .copy-mask{
    position:fixed;inset:0;background:rgba(8,4,7,.78);z-index:200;
    display:none;align-items:center;justify-content:center;padding:20px;
  }
  .copy-mask.is-open{display:flex}
  .copy-box{
    width:100%;max-width:420px;background:#241528;border:1px solid rgba(255,179,194,.35);
    border-radius:18px;padding:24px 22px;
  }
  .copy-box p{font-size:14px;color:#ffd7e0;margin-bottom:14px;line-height:1.6}
  .copy-box input{
    width:100%;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,179,194,.3);
    background:#160d15;color:#f7eef2;font-size:13.5px;margin-bottom:14px;
  }
  .copy-box .row{display:flex;gap:10px}
  .copy-box button{
    flex:1;padding:11px;border-radius:10px;border:none;font-size:14px;cursor:pointer;font-family:inherit;
  }
  .copy-box .do{background:linear-gradient(120deg,#ff8fa4,#d3547a);color:#2a0d18;font-weight:700}
  .copy-box .close{background:rgba(255,255,255,.1);color:#f7eef2}

  /* 页脚 */
  footer.site-foot{
    margin-top:40px;padding:30px 0 34px;border-top:1px solid var(--line);
    font-size:12px;color:#8d7481;
  }
  .foot-inner{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:space-between;align-items:center}
  .foot-links{display:flex;flex-wrap:wrap;gap:8px 16px}
  .foot-links a{color:#a68e9a;transition:color .2s}
  .foot-links a:hover{color:var(--peach-soft)}
  footer .beian a{color:#8d7481}
  footer time{color:#8d7481}

  /* 光标光晕 */
  .cursor-glow{
    position:fixed;width:320px;height:320px;border-radius:50%;pointer-events:none;z-index:1;
    background:radial-gradient(circle,rgba(255,122,147,.16),transparent 62%);
    transform:translate(-50%,-50%);transition:opacity .4s;left:0;top:0;
  }

  @media (max-width:1024px){
    .hero-grid{grid-template-columns:1fr;gap:32px}
    .hero-poster img{height:360px}
    .cast-grid{grid-template-columns:repeat(3,1fr)}
    .rec-grid{grid-template-columns:1fr}
    .genre-grid{grid-template-columns:repeat(2,1fr)}
    .vip-grid{grid-template-columns:1fr}
    .vip.hot{transform:none}
  }
  @media (max-width:768px){
    section{padding:42px 0}
    .head-inner{height:58px;gap:12px}
    .nav{display:none}
    .feature-slides{height:320px}
    .feature-txt{max-width:80%;left:20px;bottom:22px}
    .stats-grid{grid-template-columns:repeat(2,1fr);gap:24px}
    .cast-grid{grid-template-columns:repeat(3,1fr);gap:14px}
    .genre-grid{grid-template-columns:1fr 1fr;gap:12px}
    .hero{padding:40px 0}
    .hero-meta{gap:18px}
    .poster-card{flex:0 0 168px}
    .poster-card img{height:246px}
    .danmu-stage{height:260px}
    .foot-inner{flex-direction:column;align-items:flex-start}
  }