:root{
    --pink-main:#ff5c8a;
    --pink-dark:#d93865;
    --pink-light:#ffb3c6;
    --pink-bg:#ffe3ec;
    --purple-accent:#9d4edd;
    --ink:#2d1b24;
    --gray:#856b77;
    --page:#fff5f8;
    --card:#ffffff;
    --shadow:0 4px 12px rgba(255,92,138,.06);
    --shadow-hover:0 12px 28px rgba(255,92,138,.12);
    --radius-l:32px;
    --radius-m:24px;
    --radius-s:16px;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--page);
    color:var(--ink);
    font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
    font-size:14px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{display:block;max-width:100%;}
  a{text-decoration:none;color:inherit;}
  h1,h2,h3,h4{margin:0;line-height:1.25;font-weight:800;}
  p{margin:0;}
  ul{margin:0;padding:0;list-style:none;}

  /* ============ 顶部导航 ============ */
  .site-header{
    position:sticky;top:0;z-index:60;
    background:rgba(255,255,255,.78);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid var(--pink-light);
  }
  .header-inner{
    max-width:1400px;margin:0 auto;padding:10px 32px;
    display:flex;align-items:center;gap:20px;
  }
  .brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
  .brand img{height:36px;width:auto;border-radius:10px;}
  .brand-name{font-size:18px;font-weight:800;color:var(--pink-dark);letter-spacing:.5px;}
  .nav{
    margin-left:auto;
    display:flex;align-items:center;gap:4px;
    background:#fff;border:1px solid var(--pink-light);
    border-radius:999px;padding:5px;
    overflow-x:auto;scrollbar-width:none;
    max-width:100%;
  }
  .nav::-webkit-scrollbar{display:none;}
  .nav a{
    white-space:nowrap;padding:7px 16px;border-radius:999px;
    font-size:13px;color:var(--gray);transition:.3s;
  }
  .nav a:hover{background:var(--pink-bg);color:var(--pink-dark);}
  .nav a.active{background:var(--pink-main);color:#fff;box-shadow:0 4px 10px rgba(255,92,138,.35);}
  .header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;}
  .btn-soft{
    padding:8px 18px;border-radius:999px;background:var(--pink-bg);
    color:var(--pink-dark);font-size:13px;font-weight:700;transition:.3s;
  }
  .btn-soft:hover{background:var(--pink-light);}
  .avatar-ring{
    width:36px;height:36px;border-radius:50%;border:2px solid var(--pink-light);
    background:linear-gradient(135deg,var(--pink-main),var(--purple-accent));
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:13px;font-weight:800;
  }

  /* ============ 布局容器 ============ */
  .wrap{max-width:1400px;margin:0 auto;padding:0 32px;}
  .section{margin-top:36px;}
  .section-head{display:flex;align-items:baseline;gap:12px;margin-bottom:16px;}
  .section-head h2{font-size:22px;color:var(--ink);}
  .section-head .sub{font-size:12px;color:var(--gray);}
  .badge-hot{
    display:inline-flex;align-items:center;gap:4px;
    background:var(--pink-main);color:#fff;font-size:11px;font-weight:700;
    padding:3px 10px;border-radius:999px;
  }
  .card{background:var(--card);border-radius:var(--radius-m);box-shadow:var(--shadow);}

  /* ============ Bento 首屏 ============ */
  .bento{
    display:grid;gap:18px;
    grid-template-columns:2fr 1fr 1fr;
    margin-top:28px;
  }
  .bento-main{
    position:relative;border-radius:var(--radius-l);overflow:hidden;
    min-height:280px;box-shadow:var(--shadow);
    background:#2d1b24;
  }
  .bento-main img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
  .bento-main .overlay{
    position:absolute;inset:0;
    background:linear-gradient(90deg,rgba(20,8,14,.85) 10%,rgba(20,8,14,.35) 55%,rgba(20,8,14,0) 100%);
  }
  .bento-main .content{
    position:relative;z-index:2;padding:28px;
    height:100%;display:flex;flex-direction:column;justify-content:flex-end;
    color:#fff;
  }
  .bento-main .content h1{
    font-size:36px;margin:10px 0 12px;max-width:520px;
    text-shadow:0 2px 12px rgba(0,0,0,.3);
  }
  .bento-main .content p{font-size:14px;color:#ffe3ec;max-width:460px;}
  .tag-hot{
    align-self:flex-start;
    background:var(--pink-main);color:#fff;
    font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px;
  }
  .bento-side{display:flex;flex-direction:column;gap:18px;}
  .bento-stat{
    background:var(--card);border-radius:var(--radius-m);padding:20px;
    box-shadow:var(--shadow);flex:1;
  }
  .bento-stat h3{font-size:15px;color:var(--ink);margin-bottom:14px;}
  .stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .stat-item strong{display:block;color:var(--pink-dark);font-size:20px;font-weight:800;line-height:1.2;}
  .stat-item span{font-size:11px;color:var(--gray);}
  .bento-rank{
    background:var(--pink-bg);border-radius:var(--radius-m);padding:20px;
    box-shadow:var(--shadow);position:relative;overflow:hidden;
  }
  .bento-rank h3{font-size:15px;color:var(--ink);margin-bottom:12px;}
  .rank-line{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:13px;}
  .rank-num{
    width:22px;height:22px;border-radius:8px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    font-size:11px;font-weight:800;background:#fff;color:var(--pink-main);
  }
  .rank-num.first{background:var(--pink-main);color:#fff;}
  .bento-rank .deco{
    position:absolute;right:-8px;bottom:-14px;font-size:64px;opacity:.12;
  }

  /* ============ 主内容双栏 ============ */
  .main-cols{
    display:grid;grid-template-columns:2.5fr 1fr;gap:20px;margin-top:36px;
    align-items:start;
  }
  .col{display:flex;flex-direction:column;gap:32px;}

  /* 编辑精选 */
  .editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .editor-card{
    position:relative;border-radius:var(--radius-m);overflow:hidden;
    aspect-ratio:16/10;box-shadow:var(--shadow);transition:.35s;
  }
  .editor-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);}
  .editor-card img{width:100%;height:100%;object-fit:cover;transition:.4s;}
  .editor-card:hover img{transform:scale(1.05);}
  .editor-card .info{
    position:absolute;inset:auto 0 0 0;padding:16px;
    background:linear-gradient(0deg,rgba(25,10,17,.92),rgba(25,10,17,0));
    color:#fff;
  }
  .editor-card .info h3{font-size:16px;margin-bottom:4px;}
  .editor-card .info p{font-size:12px;color:#ffd7e3;line-height:1.5;}
  .mini-tags{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;}
  .mini-tags span{
    font-size:10px;padding:2px 8px;border-radius:999px;
    background:rgba(255,179,198,.25);color:#fff;border:1px solid rgba(255,179,198,.5);
  }

  /* 图集 3x2 */
  .poster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
  .poster{
    position:relative;border-radius:var(--radius-s);overflow:hidden;
    aspect-ratio:3/4;box-shadow:var(--shadow);transition:.35s;
  }
  .poster:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);}
  .poster img{width:100%;height:100%;object-fit:cover;transition:.4s;}
  .poster:hover img{transform:scale(1.06);}
  .poster .mask{
    position:absolute;inset:auto 0 0 0;padding:12px;
    background:linear-gradient(0deg,rgba(15,5,10,.9),rgba(15,5,10,0));
    color:#fff;
  }
  .poster .mask b{display:block;font-size:13px;}
  .poster .mask span{font-size:11px;color:#ffd0de;}
  .poster.pink-mask .mask{
    background:linear-gradient(0deg,rgba(217,56,101,.9),rgba(217,56,101,0));
  }

  /* 热门榜单 大图+列表 */
  .chart-mix{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;}
  .chart-hero{
    position:relative;border-radius:var(--radius-m);overflow:hidden;
    min-height:320px;box-shadow:var(--shadow);
  }
  .chart-hero img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:.4s;}
  .chart-hero:hover img{transform:scale(1.05);}
  .chart-hero .cap{
    position:absolute;inset:auto 0 0 0;padding:18px;color:#fff;
    background:linear-gradient(0deg,rgba(25,10,17,.92),rgba(25,10,17,0));
  }
  .chart-hero .cap h3{font-size:18px;margin-bottom:4px;}
  .chart-hero .cap .score{
    display:inline-block;margin-top:6px;background:var(--purple-accent);
    font-size:12px;font-weight:800;padding:2px 10px;border-radius:999px;
  }
  .chart-list{display:flex;flex-direction:column;gap:12px;}
  .chart-item{
    display:flex;gap:12px;align-items:center;background:#fff;
    border-radius:var(--radius-s);padding:10px;box-shadow:var(--shadow);
    transition:.3s;
  }
  .chart-item:hover{transform:translateX(4px);box-shadow:var(--shadow-hover);}
  .chart-item img{width:56px;height:74px;object-fit:cover;border-radius:10px;flex-shrink:0;}
  .chart-item .txt b{display:block;font-size:14px;}
  .chart-item .txt span{font-size:12px;color:var(--gray);}
  .chart-item .rank{
    margin-left:auto;font-size:18px;font-style:italic;font-weight:800;
    color:var(--pink-main);flex-shrink:0;
  }
  .chart-item:nth-child(3) .rank{color:var(--purple-accent);}

  /* 更新时间表 */
  .time-list{background:#fff;border-radius:var(--radius-m);padding:20px 22px;box-shadow:var(--shadow);}
  .time-row{
    display:flex;align-items:center;gap:14px;padding:10px 0;
    border-bottom:1px dashed #ffe3ec;
  }
  .time-row:last-child{border-bottom:none;}
  .time-badge{
    flex-shrink:0;background:var(--pink-bg);color:var(--pink-dark);
    font-size:12px;font-weight:800;padding:4px 10px;border-radius:8px;
    min-width:56px;text-align:center;
  }
  .time-row .name{font-size:14px;font-weight:700;}
  .time-row .name em{font-size:11px;color:var(--gray);font-style:normal;margin-left:6px;font-weight:400;}
  .time-state{margin-left:auto;font-size:12px;font-weight:700;flex-shrink:0;}
  .st-done{color:#3aa76d;}
  .st-soon{color:var(--pink-main);}
  .st-wait{color:var(--gray);}

  /* 新番时间表 */
  .week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;}
  .week-card{
    background:#fff;border-radius:var(--radius-s);padding:14px 10px;
    border-top:4px solid var(--pink-main);box-shadow:var(--shadow);
    text-align:center;transition:.3s;
  }
  .week-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);}
  .week-card.today{background:var(--pink-bg);}
  .week-card b{display:block;font-size:13px;margin-bottom:8px;color:var(--pink-dark);}
  .week-card p{font-size:11px;color:var(--gray);line-height:1.7;}

  /* 猜你喜欢 */
  .like-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
  .like-card{
    display:flex;gap:10px;align-items:center;background:#fff;
    border-radius:var(--radius-s);padding:10px;box-shadow:var(--shadow);
    transition:.3s;
  }
  .like-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);}
  .like-card img{width:48px;height:66px;object-fit:cover;border-radius:8px;flex-shrink:0;}
  .like-card b{display:block;font-size:13px;}
  .like-card span{font-size:11px;color:var(--gray);}

  /* 社区热聊 */
  .chat-card{background:#fff;border-radius:var(--radius-m);padding:22px;box-shadow:var(--shadow);}
  .chat-line{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #fff0f4;}
  .chat-line:last-child{border-bottom:none;}
  .chat-av{
    width:36px;height:36px;border-radius:50%;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    font-size:13px;font-weight:800;color:#fff;
    background:linear-gradient(135deg,var(--pink-main),var(--purple-accent));
  }
  .chat-body b{font-size:13px;}
  .chat-body .meta{font-size:11px;color:var(--gray);margin-left:6px;}
  .chat-body .bubble{
    margin-top:6px;background:var(--pink-bg);color:var(--ink);
    padding:9px 13px;border-radius:4px 14px 14px 14px;font-size:13px;
  }

  /* ============ 右栏 ============ */
  .side-title{font-size:16px;margin-bottom:14px;color:var(--ink);}
  .tip-card{background:#fff;border-radius:var(--radius-m);padding:20px;box-shadow:var(--shadow);}
  .tip-line{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #fff0f4;}
  .tip-line:last-child{border-bottom:none;}
  .tip-av{
    width:38px;height:38px;border-radius:50%;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    font-size:12px;font-weight:800;color:#fff;
    background:linear-gradient(135deg,#ff9bb3,var(--pink-dark));
  }
  .tip-line .who b{font-size:13px;}
  .tip-line .who span{font-size:11px;color:var(--gray);margin-left:6px;}
  .tip-line .quote{
    margin-top:4px;font-size:12px;color:var(--gray);
    background:var(--pink-bg);padding:7px 11px;border-radius:10px;
  }

  .top-card{background:#fff;border-radius:var(--radius-m);padding:20px;box-shadow:var(--shadow);}
  .top-line{padding:10px 0;border-bottom:1px solid #fff0f4;}
  .top-line:last-child{border-bottom:none;}
  .top-head{display:flex;align-items:center;gap:8px;font-size:13px;}
  .top-head .idx{font-style:italic;font-weight:800;font-size:15px;width:26px;}
  .top-line:nth-child(1) .idx{color:var(--pink-main);}
  .top-line:nth-child(2) .idx{color:var(--pink-dark);}
  .top-line:nth-child(3) .idx{color:var(--purple-accent);}
  .top-line:nth-child(n+4) .idx{color:var(--gray);}
  .top-head .sc{margin-left:auto;font-size:12px;font-weight:800;color:var(--pink-dark);}
  .bar{height:6px;border-radius:999px;background:var(--pink-bg);margin-top:7px;overflow:hidden;}
  .bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--pink-light),var(--pink-main));}

  .guo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .guo-item{
    position:relative;border-radius:var(--radius-s);overflow:hidden;
    aspect-ratio:3/4;box-shadow:var(--shadow);transition:.3s;
  }
  .guo-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);}
  .guo-item img{width:100%;height:100%;object-fit:cover;transition:.4s;}
  .guo-item:hover img{transform:scale(1.06);}
  .guo-item span{
    position:absolute;left:8px;right:8px;bottom:8px;
    background:rgba(255,255,255,.86);color:var(--ink);
    font-size:11px;font-weight:700;text-align:center;
    padding:4px 6px;border-radius:8px;
  }

  .voice-card{background:#fff;border-radius:var(--radius-m);padding:20px;box-shadow:var(--shadow);}
  .voice-line{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid #fff0f4;}
  .voice-line:last-child{border-bottom:none;}
  .voice-av{
    width:36px;height:36px;border-radius:50%;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    font-size:12px;font-weight:800;color:#fff;
    background:linear-gradient(135deg,var(--purple-accent),var(--pink-main));
  }
  .voice-line .nm{font-size:13px;font-weight:700;}
  .voice-line .stars{color:#f5a623;font-size:11px;letter-spacing:1px;}
  .voice-line p{font-size:12px;color:var(--gray);margin-top:3px;}

  /* ============ 下载专区 ============ */
  .download-zone{
    margin-top:40px;border-radius:var(--radius-l);
    background:linear-gradient(135deg,#ffffff 0%,#ffe3ec 100%);
    box-shadow:var(--shadow);padding:36px;
    display:grid;grid-template-columns:1fr 1fr;gap:36px;
  }
  .dl-left h2{font-size:24px;color:var(--pink-dark);margin-bottom:12px;}
  .dl-left > p{font-size:14px;color:var(--gray);margin-bottom:18px;}
  .dl-features li{
    font-size:13px;color:var(--ink);padding:6px 0;display:flex;gap:8px;align-items:flex-start;
  }
  .dl-features li::before{
    content:"✓";color:#fff;background:var(--pink-main);
    width:18px;height:18px;border-radius:50%;flex-shrink:0;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:11px;font-weight:800;margin-top:2px;
  }
  .btn-download{
    display:inline-flex;align-items:center;gap:8px;
    margin-top:22px;background:var(--pink-main);color:#fff;
    font-size:15px;font-weight:800;padding:14px 30px;border-radius:999px;
    box-shadow:0 8px 20px rgba(255,92,138,.35);transition:.3s;
  }
  .btn-download:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(255,92,138,.45);background:var(--pink-dark);}
  .tag-cloud{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px;}
  .tag-cloud span{
    font-size:12px;padding:5px 12px;border-radius:999px;
    background:#fff;color:var(--pink-dark);border:1px solid var(--pink-light);
    transition:.3s;cursor:default;
  }
  .tag-cloud span:hover{background:var(--pink-main);color:#fff;transform:translateY(-2px);}
  .dl-right h2{font-size:20px;color:var(--ink);margin-bottom:16px;}
  .faq-item{padding:12px 0;border-bottom:1px dashed var(--pink-light);}
  .faq-item:last-child{border-bottom:none;}
  .faq-item b{display:block;font-size:13px;color:var(--ink);margin-bottom:4px;}
  .faq-item p{font-size:12px;color:var(--gray);}

  /* ============ 悬浮下载按钮 ============ */
  .float-dl{
    position:fixed;right:40px;bottom:40px;z-index:80;
    width:64px;height:64px;border-radius:50%;
    background:var(--pink-main);color:#fff;border:4px solid #fff;
    display:flex;align-items:center;justify-content:center;
    font-size:24px;font-weight:800;
    box-shadow:0 8px 22px rgba(255,92,138,.4);
    transition:.3s;
  }
  .float-dl::after{
    content:"";position:absolute;inset:-4px;border-radius:50%;
    border:3px solid var(--pink-main);opacity:.6;
    animation:pulse 2s infinite;
  }
  @keyframes pulse{
    0%{transform:scale(1);opacity:.6;}
    100%{transform:scale(1.5);opacity:0;}
  }
  .float-dl:hover{
    background:var(--pink-dark);transform:translateY(-3px) rotate(8deg) scale(1.06);
  }

  /* ============ 页脚 ============ */
  .site-footer{
    margin-top:48px;padding:28px 0 36px;
    border-top:1px solid var(--pink-light);
    text-align:center;color:var(--gray);font-size:12px;
  }
  .site-footer p{margin:4px 0;}
  .site-footer a{color:var(--gray);}
  .site-footer a:hover{color:var(--pink-main);}
  .site-footer .update-time{font-size:11px;color:#b9a3ac;}

  /* ============ 响应式 ============ */
  @media (max-width:1100px){
    .bento{grid-template-columns:1fr 1fr;}
    .bento-main{grid-column:1 / -1;}
    .main-cols{grid-template-columns:1fr;}
    .col.right{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
    .week-grid{grid-template-columns:repeat(4,1fr);}
    .header-inner{flex-wrap:wrap;}
    .nav{order:3;width:100%;margin-left:0;}
  }
  @media (max-width:768px){
    .wrap{padding:0 16px;}
    .header-inner{padding:10px 16px;gap:10px;}
    .brand img{height:30px;}
    .brand-name{font-size:16px;}
    .bento{grid-template-columns:1fr;}
    .bento-main{min-height:340px;}
    .bento-main .content h1{font-size:28px;}
    .editor-grid{grid-template-columns:1fr;}
    .poster-grid{grid-template-columns:repeat(2,1fr);}
    .chart-mix{grid-template-columns:1fr;}
    .like-grid{grid-template-columns:1fr 1fr;}
    .week-grid{grid-template-columns:repeat(3,1fr);}
    .col.right{grid-template-columns:1fr;}
    .download-zone{grid-template-columns:1fr;padding:24px;}
    .float-dl{width:50px;height:50px;right:18px;bottom:18px;font-size:19px;}
    .section-head h2{font-size:19px;}
    .dl-left h2{font-size:20px;}
  }
  @media (max-width:420px){
    .like-grid{grid-template-columns:1fr;}
    .poster-grid{grid-template-columns:1fr 1fr;}
  }