/* roulang page: index */
:root{
      --ink:#28232b;
      --muted:#756b73;
      --wine:#43263f;
      --wine-2:#643653;
      --cream:#fbf7ef;
      --paper:#fffdf8;
      --line:#e7ddd2;
      --peach:#f28b72;
      --yellow:#e9c46a;
      --lime:#b8d889;
      --mint:#a9d8c5;
      --shadow:0 14px 36px rgba(67,38,63,.09);
      --small-shadow:0 7px 18px rgba(67,38,63,.08);
      --radius:16px;
      --max:1200px;
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      background:var(--cream);
      color:var(--ink);
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      line-height:1.7;
      font-size:15px;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;inset:0;pointer-events:none;opacity:.24;z-index:-1;
      background-image:radial-gradient(#bcae9d .55px,transparent .55px);
      background-size:11px 11px;
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input{font:inherit}
    button{cursor:pointer}
    :focus-visible{outline:3px solid var(--peach);outline-offset:3px}
    .container{width:min(var(--max),calc(100% - 40px));margin:auto}
    .site-header{
      position:sticky;top:0;z-index:20;background:rgba(251,247,239,.94);
      border-bottom:1px solid var(--line);box-shadow:0 5px 18px rgba(67,38,63,.05);
      backdrop-filter:blur(12px)
    }
    .nav-wrap{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
    .brand-mark{
      position:relative;width:38px;height:38px;border-radius:10px;background:var(--wine);
      display:grid;place-items:center;color:#fff;font-size:13px;font-weight:900;
      box-shadow:4px 4px 0 var(--yellow)
    }
    .brand-mark:after{content:"";position:absolute;right:5px;top:5px;width:6px;height:6px;background:var(--peach);border-radius:50%}
    .nav-links{display:flex;align-items:center;gap:7px;list-style:none}
    .nav-links a{padding:10px 13px;border-radius:9px;color:var(--muted);font-size:14px;position:relative;transition:.2s}
    .nav-links a:after{content:"";position:absolute;left:13px;right:13px;bottom:5px;height:3px;border-radius:3px;background:transparent}
    .nav-links a:hover,.nav-links a.active{color:var(--wine);background:#f5ebe4}
    .nav-links a.active:after{background:var(--peach)}
    .menu-btn{display:none;border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:8px 11px;color:var(--wine);font-size:20px}
    .hero{padding:76px 0 82px;position:relative}
    .hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:center}
    .eyebrow,.section-kicker{
      display:inline-flex;align-items:center;gap:8px;color:var(--wine);font-size:12px;font-weight:800;
      letter-spacing:.14em;text-transform:uppercase
    }
    .eyebrow:before,.section-kicker:before{content:"";width:24px;height:3px;background:var(--peach);display:inline-block}
    h1{font-size:clamp(42px,6vw,68px);line-height:1.12;letter-spacing:-.045em;margin:20px 0 22px;color:var(--wine)}
    h1 em{font-style:normal;position:relative;z-index:1}
    h1 em:after{content:"";position:absolute;bottom:3px;left:-4px;right:-4px;height:12px;background:var(--yellow);z-index:-1;transform:rotate(-1.5deg)}
    .hero h2{font-size:20px;line-height:1.5;margin-bottom:17px;max-width:580px}
    .hero-copy{font-size:16px;color:var(--muted);max-width:600px}
    .hero-actions{display:flex;gap:13px;margin:29px 0 25px;flex-wrap:wrap}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:10px;border:1px solid transparent;font-weight:700;transition:.22s}
    .btn-primary{background:var(--wine);color:#fff;box-shadow:4px 4px 0 var(--peach)}
    .btn-primary:hover{background:var(--wine-2);transform:translateY(-2px)}
    .btn-secondary{border-color:var(--wine);color:var(--wine);background:transparent}
    .btn-secondary:hover{background:#f3e8df;transform:translateY(-2px)}
    .hero-notes{display:flex;gap:9px;flex-wrap:wrap;color:var(--muted);font-size:13px}
    .note{padding:5px 10px;background:#fff3d1;border-left:3px solid var(--yellow)}
    .hero-board{position:relative;min-height:355px;padding:25px;background:var(--wine);border-radius:22px;box-shadow:12px 12px 0 #ead7c8;overflow:hidden}
    .hero-board:before{content:"糖心tv / CONTENT INDEX";color:#f6d6c9;font-size:11px;letter-spacing:.18em}
    .board-title{color:#fff;font-size:27px;line-height:1.25;margin:24px 0}
    .board-list{display:grid;gap:10px}
    .board-row{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.1);padding:11px 13px;border-radius:9px;color:#fff}
    .board-no{color:var(--yellow);font-weight:900;font-size:13px}
    .board-row small{margin-left:auto;color:#f2c7b9}
    .board-pin{position:absolute;right:22px;top:22px;background:var(--peach);color:var(--wine);font-size:12px;padding:6px 10px;transform:rotate(5deg);font-weight:800}
    section{padding:86px 0;border-top:1px solid rgba(231,221,210,.7)}
    section:nth-of-type(even){background:rgba(255,253,248,.48)}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}
    .section-head h2{font-size:clamp(27px,3.4vw,38px);line-height:1.2;color:var(--wine);margin-top:10px;letter-spacing:-.03em}
    .section-desc{max-width:590px;color:var(--muted);font-size:15px}
    .demand-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
    .demand{background:var(--paper);border:1px solid var(--line);padding:19px 18px;border-radius:12px;display:flex;align-items:center;gap:13px;transition:.2s}
    .demand:hover{border-color:var(--peach);transform:translateY(-3px);box-shadow:var(--small-shadow)}
    .demand b{font-size:24px;color:var(--peach);font-family:Georgia,serif}
    .demand strong{display:block;color:var(--wine);font-size:16px}
    .demand span{display:block;color:var(--muted);font-size:12px}
    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);background:var(--paper);border-radius:16px;overflow:hidden}
    .step{padding:25px 22px;border-right:1px dashed var(--line);position:relative}
    .step:last-child{border:0}.step-no{color:var(--peach);font-weight:900;font-size:13px}.step h3{margin:12px 0 7px;color:var(--wine);font-size:18px}.step p{color:var(--muted);font-size:13px}
    .step:not(:last-child):after{content:"→";position:absolute;right:-10px;top:47px;background:var(--cream);color:var(--wine);font-size:20px;padding:0 4px;z-index:1}
    .poster-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
    .poster-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.23s;box-shadow:0 2px 0 rgba(67,38,63,.03)}
    .poster-card:hover{transform:translateY(-5px);border-color:var(--wine);box-shadow:var(--shadow)}
    .poster-card.featured{grid-column:span 2}
    .poster{height:205px;position:relative;display:flex;align-items:flex-end;padding:16px;overflow:hidden;background:linear-gradient(135deg,var(--wine),#9b5268 55%,var(--peach))}
    .poster-card.featured .poster{height:270px}
    .poster:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.35);transform:rotate(-5deg)}
    .poster:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;background:rgba(233,196,106,.45);right:-25px;top:-25px}
    .poster.p2{background:linear-gradient(145deg,#1d4550,#679f9b)}
    .poster.p3{background:linear-gradient(145deg,#633c2b,#d38b5c)}
    .poster.p4{background:linear-gradient(145deg,#272846,#7b78b1)}
    .poster.p5{background:linear-gradient(145deg,#3d522d,#a7bd63)}
    .poster.p6{background:linear-gradient(145deg,#5e263f,#d85e76)}
    .poster.p7{background:linear-gradient(145deg,#35476f,#a0b3df)}
    .poster.p8{background:linear-gradient(145deg,#493529,#c6a272)}
    .poster.p9{background:linear-gradient(145deg,#203e39,#62a88d)}
    .poster.p10{background:linear-gradient(145deg,#542e56,#ba7cc0)}
    .poster.p11{background:linear-gradient(145deg,#684222,#e2b15d)}
    .poster.p12{background:linear-gradient(145deg,#27334d,#e27b74)}
    .poster-word{position:relative;z-index:1;color:#fff;font-size:24px;font-weight:900;letter-spacing:.08em;text-shadow:0 2px 4px rgba(0,0,0,.25)}
    .badge{position:absolute;z-index:2;left:13px;top:13px;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:800;color:var(--wine);background:var(--yellow)}
    .badge.hd{background:var(--peach)}.badge.blue{background:#c9b7e8}.badge.green{background:var(--lime)}
    .poster-info{padding:14px 15px 16px}.poster-info h3{font-size:16px;color:var(--wine);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .card-meta{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}.score{color:var(--wine);font-weight:900;background:#f8e8cd;padding:2px 7px;border-radius:5px}
    .popular-track{display:grid;grid-template-columns:repeat(6,1fr);gap:15px}
    .popular{background:var(--wine);color:#fff;border-radius:14px;overflow:hidden;transition:.2s}.popular:hover{transform:rotate(-1deg) translateY(-4px);box-shadow:var(--shadow)}
    .popular .poster{height:180px}.popular-info{padding:14px}.popular-info h3{font-size:16px;margin-bottom:5px}.popular-info p{color:#e8cfc9;font-size:12px}
    .channel-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
    .channel{background:var(--paper);border:1px solid var(--line);padding:21px 18px;border-radius:12px;min-height:170px;position:relative}
    .channel:before{content:"";position:absolute;top:0;left:18px;width:35px;height:4px;background:var(--peach)}
    .channel h3{margin:15px 0 9px;color:var(--wine);font-size:18px}.channel p{font-size:13px;color:var(--muted)}
    .ranking{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden}
    .rank-row{display:grid;grid-template-columns:70px 1.5fr 1fr 80px 110px;align-items:center;gap:15px;padding:15px 20px;border-bottom:1px solid var(--line)}
    .rank-row:last-child{border:0}.rank-row.top{background:#fff5df}.rank-num{font-size:22px;font-weight:900;color:var(--peach)}.rank-row:nth-child(3) .rank-num{color:var(--wine)}
    .rank-title{font-weight:800;color:var(--wine)}.rank-tag{font-size:12px;color:var(--muted)}.heat{height:5px;background:#f0e5db;border-radius:5px;overflow:hidden}.heat i{display:block;height:100%;background:var(--peach);border-radius:5px}.rank-score{font-weight:900;color:var(--wine)}
    .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat{padding:26px 22px;background:var(--wine);border-radius:14px;color:#fff;position:relative;overflow:hidden}.stat:nth-child(2){background:#70415d}.stat:nth-child(3){background:#426b61}.stat:nth-child(4){background:#8e5b4f}.stat strong{display:block;font-size:42px;line-height:1;color:var(--yellow);margin:10px 0}.stat span{font-size:13px;color:#f7ded5}
    .feedback-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.quote{background:#fff4d2;border:1px solid #ecd99d;padding:24px;border-radius:12px;position:relative}.quote:nth-child(2){transform:rotate(1deg);background:#eaf1d9}.quote:nth-child(3){transform:rotate(-1deg);background:#f8dfd8}.quote p{font-size:16px;color:var(--ink);margin-bottom:17px}.quote footer{font-size:12px;color:var(--muted)}
    .scene-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:14px}.scene{min-height:180px;padding:21px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.scene:first-child{background:var(--wine);color:#fff}.scene h3{font-size:18px;margin:12px 0 8px;color:var(--wine)}.scene:first-child h3{color:#fff}.scene p{font-size:13px;color:var(--muted)}.scene:first-child p{color:#ead2ca}
    .news-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 35px}.news-item{display:grid;grid-template-columns:92px 1fr;gap:15px;padding:17px 0;border-bottom:1px solid var(--line)}.news-thumb{height:66px;border-radius:9px;background:linear-gradient(135deg,var(--wine),var(--peach));position:relative}.news-thumb:after{content:"TV";position:absolute;color:#fff;font-weight:900;font-size:22px;left:24px;top:15px}.news-item h3{font-size:15px;color:var(--wine);line-height:1.45}.news-item time{font-size:12px;color:var(--muted)}
    .topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.topic{border:1px solid var(--line);background:var(--paper);padding:22px;border-radius:12px}.topic b{font-size:28px;color:var(--peach);font-family:Georgia,serif}.topic h3{margin:10px 0 5px;color:var(--wine);font-size:17px}.topic p{font-size:13px;color:var(--muted)}
    .faq{max-width:900px;margin:auto}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;background:none;border:0;text-align:left;padding:20px 4px;display:flex;justify-content:space-between;align-items:center;color:var(--wine);font-weight:800;font-size:16px}.faq-q span{font-size:22px;color:var(--peach);transition:.2s}.faq-a{display:none;color:var(--muted);padding:0 35px 20px 4px;font-size:14px}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span{transform:rotate(45deg)}
    .cta{padding:76px 0}.cta-box{background:var(--wine);color:#fff;border-radius:20px;padding:48px 55px;display:flex;align-items:center;justify-content:space-between;gap:35px;box-shadow:10px 10px 0 var(--yellow)}.cta-box h2{font-size:clamp(28px,4vw,44px);line-height:1.2;margin:11px 0}.cta-box p{color:#ecd5ce;max-width:620px}.cta-box .btn-primary{background:var(--peach);color:var(--wine);box-shadow:none;white-space:nowrap}.cta-box .btn-primary:hover{background:#ffab93}
    footer{background:#2c202b;color:#e8d8d4;padding:58px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}.footer-brand{font-size:21px;color:#fff;font-weight:800;margin-bottom:12px}.footer p{font-size:13px;color:#bda9a8;max-width:280px}.footer h3{font-size:14px;color:var(--yellow);margin-bottom:13px}.footer ul{list-style:none;display:grid;gap:7px}.footer li a{font-size:13px;color:#d8c6c2}.footer li a:hover{color:var(--peach)}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:18px;color:#9e898c;font-size:12px;display:flex;justify-content:space-between}
    @media(max-width:1023px){.hero-grid{gap:30px}.channel-grid{grid-template-columns:repeat(3,1fr)}.popular-track{grid-template-columns:repeat(3,1fr)}.scene-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:767px){.container{width:min(100% - 28px,var(--max))}.nav-wrap{height:68px}.menu-btn{display:block}.nav-links{display:none;position:absolute;top:68px;left:14px;right:14px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{padding:13px 14px}.hero{padding:54px 0 60px}.hero-grid{grid-template-columns:1fr}.hero-board{min-height:315px}.hero-copy{font-size:15px}.section-head{display:block}.section-desc{margin-top:14px}.demand-strip,.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:1px dashed var(--line)}.step:not(:last-child):after{display:none}.poster-grid{grid-template-columns:repeat(2,1fr);gap:11px}.poster-card.featured{grid-column:span 2}.poster{height:175px}.poster-card.featured .poster{height:230px}.popular-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.popular{min-width:220px;scroll-snap-align:start}.channel-grid,.stats,.topic-grid{grid-template-columns:repeat(2,1fr)}.rank-row{grid-template-columns:42px 1fr 60px;padding:13px 12px;gap:8px}.rank-tag,.rank-row .heat{display:none}.feedback-grid{grid-template-columns:1fr}.news-list{grid-template-columns:1fr}.cta-box{display:block;padding:35px 25px}.cta-box .btn{margin-top:25px}.copyright{display:block}.copyright span{display:block;margin-top:8px}}
    @media(max-width:480px){h1{font-size:42px}.hero-actions .btn{width:100%}.demand-strip,.steps,.channel-grid,.stats,.topic-grid,.scene-grid{grid-template-columns:1fr}.poster-card:not(.featured) .poster{height:155px}.poster-word{font-size:19px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:span 2}}
    @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
