:root{
    --orange:#FF6B35;
    --dark:#1A1A1D;
    --paper:#F6F2EC;
    --card:#FFFFFF;
    --soft:#FFF8F3;
    --text:#333333;
    --sub:#666666;
    --faint:#888888;
    --radius:12px;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{-webkit-text-size-adjust:100%;}
  body{
    font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
    background:var(--paper);
    color:var(--text);
    font-size:15px;
    line-height:1.7;
    overflow-x:hidden;
  }
  img{display:block;max-width:100%;}
  a{text-decoration:none;color:inherit;}
  ul,ol{list-style:none;}
  .wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;}

  /* ① 顶栏 */
  .topbar{
    position:sticky;top:0;z-index:50;
    background:var(--dark);
    height:60px;
    display:flex;align-items:center;
  }
  .topbar-inner{
    width:100%;max-width:1200px;margin:0 auto;padding:0 20px;
    display:flex;align-items:center;gap:20px;
  }
  .brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
  .brand img{height:32px;width:auto;}
  .brand span{color:#fff;font-size:17px;font-weight:700;letter-spacing:.5px;}
  .mainnav{display:flex;align-items:center;gap:4px;margin-left:12px;flex:1;min-width:0;}
  .mainnav a{
    color:#c9c7c2;font-size:14px;padding:8px 10px;border-radius:6px;
    position:relative;white-space:nowrap;transition:color .2s;
  }
  .mainnav a:hover{color:#fff;}
  .mainnav a.active{color:#fff;}
  .mainnav a.active::after{
    content:"";position:absolute;left:10px;right:10px;bottom:0;
    height:2px;background:var(--orange);border-radius:2px;
  }
  .topbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}
  .search-mini{
    display:flex;align-items:center;gap:6px;
    background:#2b2b30;border-radius:20px;padding:6px 14px;
    color:#9a9893;font-size:13px;min-width:150px;
  }
  .dot-bell{
    position:relative;width:26px;height:26px;border-radius:50%;
    border:1px solid #3a3a40;display:flex;align-items:center;justify-content:center;
    color:#c9c7c2;font-size:13px;
  }
  .dot-bell::after{
    content:"";position:absolute;top:-1px;right:-1px;width:7px;height:7px;
    background:var(--orange);border-radius:50%;
  }
  .btn-login{
    background:var(--orange);color:#fff;font-size:13px;font-weight:600;
    padding:7px 16px;border-radius:18px;white-space:nowrap;
    transition:background .2s;
  }
  .btn-login:hover{background:#e85a24;}
  .burger{
    display:none;background:none;border:none;color:#fff;font-size:20px;
    cursor:pointer;padding:4px 6px;
  }

  /* ② Hero */
  .hero{
    background:var(--dark);
    color:#fff;
    padding:44px 0 52px;
  }
  .hero-inner{
    display:grid;grid-template-columns:250px 1fr;gap:40px;align-items:center;
  }
  .hero-poster{
    border-radius:var(--radius);overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,.35);
    background:#2a2a2f;
  }
  .hero-poster img{width:100%;height:340px;object-fit:cover;}
  .hero-tag{
    display:inline-block;font-size:12px;color:var(--orange);
    border:1px solid rgba(255,107,53,.5);border-radius:20px;
    padding:2px 12px;margin-bottom:14px;
  }
  .hero-copy h1{font-size:30px;line-height:1.35;font-weight:800;margin-bottom:14px;}
  .hero-copy h1 em{color:var(--orange);font-style:normal;}
  .hero-copy p{color:#b9b7b2;font-size:14.5px;max-width:520px;margin-bottom:22px;}
  .hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
  .btn-primary{
    display:inline-flex;align-items:center;gap:6px;
    background:var(--orange);color:#fff;font-size:15px;font-weight:600;
    padding:11px 24px;border-radius:24px;transition:transform .2s,background .2s;
  }
  .btn-primary:hover{background:#e85a24;transform:translateY(-2px);}
  .btn-ghost{
    display:inline-flex;align-items:center;
    border:1px solid #4a4a50;color:#dedbd5;font-size:14px;
    padding:10px 22px;border-radius:24px;transition:border-color .2s,color .2s;
  }
  .btn-ghost:hover{border-color:var(--orange);color:#fff;}
  .hero-slider{display:flex;gap:10px;margin-top:26px;align-items:center;}
  .slider-arrow{
    width:28px;height:28px;border-radius:50%;border:1px solid #3d3d43;
    display:flex;align-items:center;justify-content:center;color:#b9b7b2;
    font-size:12px;cursor:pointer;background:none;transition:.2s;
  }
  .slider-arrow:hover{border-color:var(--orange);color:var(--orange);}
  .slider-dots{display:flex;gap:6px;}
  .slider-dots span{
    width:8px;height:8px;border-radius:50%;background:#4a4a50;transition:.2s;
  }
  .slider-dots span.on{background:var(--orange);width:18px;border-radius:4px;}

  /* ③ 入口卡片 */
  .entries{padding:48px 0 8px;}
  .entry-grid{
    display:grid;grid-template-columns:repeat(5,1fr);gap:16px;
  }
  .entry-card{
    background:var(--card);border-radius:var(--radius);
    padding:20px;border:1px solid transparent;
    transition:transform .2s,border-color .2s;
    display:flex;flex-direction:column;
  }
  .entry-card:hover{transform:translateY(-2px);border-color:var(--orange);}
  .entry-icon{
    width:24px;height:24px;margin-bottom:14px;
    color:var(--orange);
  }
  .entry-icon svg{width:100%;height:100%;fill:none;stroke:var(--orange);stroke-width:1.8;}
  .entry-card h3{font-size:15px;font-weight:700;color:#333;margin-bottom:6px;}
  .entry-card p{font-size:13px;color:var(--sub);line-height:1.6;flex:1;}
  .entry-link{
    display:inline-block;margin-top:12px;font-size:13px;color:var(--orange);font-weight:600;
  }

  /* 双栏 */
  .content{padding:44px 0;}
  .content-grid{display:grid;grid-template-columns:68fr 32fr;gap:36px;align-items:start;}
  .maincol{min-width:0;}
  .sidecol{min-width:0;}

  .sec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;gap:12px;}
  .sec-head h2{font-size:20px;font-weight:800;color:#222;display:flex;align-items:center;gap:8px;}
  .sec-head h2::before{
    content:"";display:inline-block;width:4px;height:18px;
    background:var(--orange);border-radius:2px;
  }
  .sec-head .more{font-size:13px;color:var(--orange);font-weight:600;white-space:nowrap;}
  .sec-sub{font-size:13px;color:var(--faint);margin-top:-12px;margin-bottom:20px;}

  /* 热播网格 */
  .anime-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:48px;}
  .anime-card{
    background:var(--card);border-radius:var(--radius);overflow:hidden;
    transition:transform .2s,box-shadow .2s;
  }
  .anime-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.07);}
  .anime-card img{width:100%;height:200px;object-fit:cover;}
  .anime-info{padding:12px 14px 14px;}
  .anime-info h3{font-size:14.5px;font-weight:700;color:#333;margin-bottom:4px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .anime-info p{font-size:12.5px;color:var(--faint);margin-bottom:8px;}
  .tag-outline{
    display:inline-block;font-size:11.5px;color:var(--orange);
    border:1px solid rgba(255,107,53,.55);border-radius:4px;
    padding:1px 8px;
  }

  /* 时间表 */
  .weekbar{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:48px;}
  .week-col{
    background:var(--card);border-radius:8px;padding:10px 8px;text-align:center;
    border-top:2px solid transparent;
  }
  .week-col.today{border-top-color:var(--orange);background:var(--soft);}
  .week-col .weekday{font-size:12.5px;color:var(--sub);margin-bottom:6px;}
  .week-col.today .weekday{color:var(--orange);font-weight:700;}
  .week-col .time{font-size:11px;color:var(--faint);}
  .week-col .title{font-size:12px;color:#333;line-height:1.4;margin-top:4px;
    overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
  .today-label{
    display:inline-block;font-size:10px;color:#fff;background:var(--orange);
    border-radius:3px;padding:0 5px;margin-bottom:4px;
  }

  /* 板块介绍三卡 */
  .guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px;}
  .guide-card{
    background:var(--card);border-radius:var(--radius);padding:22px 20px;
  }
  .guide-card .g-emoji{font-size:20px;margin-bottom:10px;display:block;}
  .guide-card h3{font-size:14.5px;font-weight:700;margin-bottom:6px;}
  .guide-card p{font-size:13px;color:var(--sub);line-height:1.65;}

  /* 热帖 */
  .hotlist{margin-bottom:48px;}
  .hotlist li{
    background:var(--card);border-radius:8px;padding:12px 16px;
    display:flex;align-items:center;gap:10px;margin-bottom:8px;
    transition:background .2s;
  }
  .hotlist li:hover{background:var(--soft);}
  .hotlist .fire{color:var(--orange);font-size:13px;flex-shrink:0;}
  .hotlist .t{font-size:14px;color:#333;flex:1;min-width:0;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .hotlist .ftag{font-size:11px;color:var(--orange);border:1px solid rgba(255,107,53,.5);
    border-radius:4px;padding:0 7px;flex-shrink:0;}
  .hotlist .replies{font-size:12px;color:var(--faint);flex-shrink:0;}

  /* FAQ */
  .faq-block{margin-bottom:24px;}
  .faq-item{
    background:var(--card);border-radius:8px;margin-bottom:8px;
    border-left:3px solid transparent;overflow:hidden;
  }
  .faq-item.open{border-left-color:var(--orange);background:var(--soft);}
  .faq-q{
    width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
    background:none;border:none;text-align:left;cursor:pointer;
    padding:14px 18px;font-size:14px;color:#333;font-weight:600;font-family:inherit;
  }
  .faq-q .arrow{font-size:11px;color:var(--faint);transition:transform .2s;}
  .faq-item.open .faq-q .arrow{transform:rotate(90deg);color:var(--orange);}
  .faq-a{
    max-height:0;overflow:hidden;transition:max-height .25s ease;
    font-size:13.5px;color:var(--sub);line-height:1.7;
  }
  .faq-a-inner{padding:0 18px 16px;}
  .faq-a-inner a{color:var(--orange);font-weight:600;}
  .faq-more-line{font-size:13px;color:var(--faint);text-align:center;padding-top:6px;}
  .faq-more-line a{color:var(--orange);font-weight:600;}

  /* 侧栏 */
  .side-block{
    background:var(--card);border-radius:var(--radius);padding:20px;margin-bottom:20px;
  }
  .side-block h2{font-size:15.5px;font-weight:800;color:#222;margin-bottom:14px;
    display:flex;align-items:center;gap:8px;}
  .side-block h2::before{content:"";width:3px;height:15px;background:var(--orange);border-radius:2px;}
  .rank-tabs{display:flex;gap:6px;margin-bottom:14px;}
  .rank-tabs span{
    font-size:12.5px;color:var(--sub);padding:3px 10px;border-radius:12px;
    cursor:pointer;transition:.2s;
  }
  .rank-tabs span.on{color:#fff;background:var(--orange);}
  .rank-list li{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:13.5px;}
  .rank-list .num{
    width:20px;flex-shrink:0;font-weight:800;font-size:14px;color:#bbb;text-align:center;
  }
  .rank-list li.top .num{color:var(--orange);}
  .rank-list .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333;}
  .rank-list .metric{font-size:12px;color:var(--faint);flex-shrink:0;}

  .cloud-words{display:flex;flex-wrap:wrap;gap:8px;}
  .cloud-words a{
    font-size:13px;color:var(--sub);background:var(--soft);
    border-radius:14px;padding:4px 12px;transition:.2s;
  }
  .cloud-words a:hover{color:#fff;background:var(--orange);}
  .cloud-words a.big{font-size:15px;font-weight:700;color:var(--orange);background:rgba(255,107,53,.1);}

  .event-banner{
    background:var(--dark);border-radius:var(--radius);padding:18px 20px;
    color:#fff;
  }
  .event-banner strong{display:block;color:var(--orange);font-size:15px;margin-bottom:4px;}
  .event-banner span{font-size:12.5px;color:#b9b7b2;line-height:1.6;}

  .club-row{display:flex;align-items:center;gap:10px;}
  .club-avatars{display:flex;}
  .club-avatars img{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid var(--card);}
  .club-avatars img+img{margin-left:-10px;}
  .club-info{flex:1;min-width:0;}
  .club-info p{font-size:13px;color:#333;font-weight:600;}
  .club-info span{font-size:12px;color:var(--faint);}
  .club-join{font-size:13px;color:var(--orange);font-weight:600;white-space:nowrap;}

  /* ⑥ 底部区 */
  .bottom-band{padding:12px 0 56px;}
  .join-banner{
    background:var(--card);border-radius:var(--radius);
    padding:32px 28px;display:flex;align-items:center;gap:28px;flex-wrap:wrap;
  }
  .join-banner .jb-text{flex:1;min-width:240px;}
  .join-banner h2{font-size:20px;font-weight:800;color:#222;margin-bottom:6px;}
  .join-banner p{font-size:13.5px;color:var(--sub);}
  .avatar-wall{display:flex;flex-wrap:wrap;gap:0;max-width:320px;}
  .avatar-wall img{
    width:38px;height:38px;border-radius:50%;object-fit:cover;
    border:2px solid var(--card);margin-left:-8px;
  }
  .avatar-wall img:first-child{margin-left:0;}

  /* ⑦ 页脚 */
  .footer{background:var(--dark);color:#8f8d88;padding:40px 0 28px;font-size:13px;}
  .footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-bottom:28px;}
  .footer-cols h3{font-size:13.5px;color:#dedbd5;font-weight:700;margin-bottom:10px;}
  .footer-cols li{margin-bottom:6px;}
  .footer-cols a{color:#8f8d88;font-size:12.5px;transition:color .2s;}
  .footer-cols a:hover{color:var(--orange);}
  .footer-bottom{
    border-top:1px solid #2b2b30;padding-top:18px;
    font-size:12px;color:#77756f;line-height:1.9;
  }
  .footer-bottom a{color:#77756f;}
  .footer-bottom a:hover{color:var(--orange);}

  /* 响应式 1199 */
  @media (max-width:1199px){
    .hero-inner{grid-template-columns:200px 1fr;gap:28px;}
    .hero-poster img{height:290px;}
    .content-grid{grid-template-columns:1fr;}
    .sidecol{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
    .side-block{margin-bottom:0;}
    .entry-grid{grid-template-columns:repeat(3,1fr);}
    .anime-grid{grid-template-columns:repeat(2,1fr);}
    .mainnav a{padding:8px 7px;font-size:13px;}
    .search-mini{min-width:110px;}
  }

  /* 响应式 767 */
  @media (max-width:767px){
    .burger{display:block;}
    .topbar{height:56px;}
    .mainnav{display:none;}
    .search-mini{display:none;}
    .brand img{height:28px;}

    .hero{padding:32px 0 40px;}
    .hero-inner{grid-template-columns:1fr;gap:24px;}
    .hero-poster img{height:300px;}
    .hero-copy h1{font-size:23px;}

    .entries{padding:36px 0 4px;}
    .entry-grid{
      display:flex;overflow-x:auto;gap:14px;padding-bottom:10px;
      scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
    }
    .entry-card{flex:0 0 72vw;scroll-snap-align:start;}

    .anime-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
    .anime-card img{height:140px;}
    .anime-info h3{font-size:13px;}

    .weekbar{
      display:flex;overflow-x:auto;gap:10px;padding-bottom:8px;
    }
    .week-col{flex:0 0 96px;}

    .guide-cards{grid-template-columns:1fr;}
    .sidecol{grid-template-columns:1fr;}
    .footer-cols{grid-template-columns:repeat(2,1fr);gap:20px;}
    .join-banner{padding:24px 20px;}
    .sec-head h2{font-size:17px;}
    .hotlist .ftag{display:none;}
  }