/* roulang page: index */
:root{
            --ivory:#f5f1e8;
            --paper:#fffdf8;
            --charcoal:#171717;
            --panel:#211d20;
            --wine:#7d1f3a;
            --wine-dark:#5c142a;
            --lime:#c7f36b;
            --muted:#766f68;
            --line:#d8d0c5;
            --soft:#ebe5db;
            --shadow:0 14px 34px rgba(35,25,25,.09);
            --radius:8px;
            --ease:all .24s ease;
        }
        *,*:before,*:after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:"Source Han Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input,select{font:inherit}
        button{cursor:pointer}
        :focus-visible{outline:3px solid var(--lime);outline-offset:3px}
        .container{max-width:1240px;margin:0 auto;padding:0 28px}
        .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--wine);font-size:12px;font-weight:800;letter-spacing:.16em}
        .eyebrow:before{content:"";width:24px;height:2px;background:var(--wine)}
        .section{padding:108px 0;scroll-margin-top:112px}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
        .section-head h2{margin:10px 0 0;font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(32px,4vw,52px);line-height:1.16;letter-spacing:-.05em}
        .section-head p{max-width:510px;margin:0;color:var(--muted);font-size:15px}
        .site-header{position:sticky;top:0;z-index:20;background:rgba(245,241,232,.96);border-bottom:1px solid var(--line);transition:var(--ease)}
        .nav-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
        .brand{display:flex;align-items:center;gap:12px;font-weight:900;line-height:1.2;max-width:285px}
        .brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--wine);color:var(--ivory);font-size:14px}
        .brand span:last-child{font-size:15px}
        .menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:8px 12px;color:var(--charcoal)}
        .step-nav{display:flex;align-items:center;gap:0;flex:1;justify-content:center}
        .step-link{position:relative;display:flex;align-items:center;gap:8px;padding:10px 18px;color:var(--muted);font-size:13px;white-space:nowrap;transition:var(--ease)}
        .step-link:not(:last-child):after{content:"";position:absolute;right:-3px;width:30px;height:1px;background:var(--line)}
        .step-num{width:24px;height:24px;border:1px solid var(--line);display:grid;place-items:center;font-size:11px;font-weight:800}
        .step-link:hover,.step-link.active{color:var(--wine)}
        .step-link.active .step-num{background:var(--wine);border-color:var(--wine);color:#fff}
        .header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--wine);background:var(--wine);color:#fff;font-weight:800;transition:var(--ease)}
        .header-cta:hover,.btn:hover{background:var(--wine-dark);transform:translateY(-2px);color:#fff}
        .btn.alt{background:transparent;color:var(--charcoal);border-color:var(--charcoal)}
        .btn.alt:hover{background:var(--charcoal);color:var(--ivory)}
        .btn.light{background:var(--lime);border-color:var(--lime);color:var(--charcoal)}
        .hero{padding:82px 0 92px;background:var(--panel);color:var(--ivory);position:relative;overflow:hidden}
        .hero:after{content:"";position:absolute;right:-100px;top:-160px;width:410px;height:410px;border:1px solid rgba(199,243,107,.3);transform:rotate(28deg)}
        .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;position:relative;z-index:1}
        .hero .eyebrow{color:var(--lime)}.hero .eyebrow:before{background:var(--lime)}
        .hero h1{font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(44px,6.8vw,84px);line-height:1.05;letter-spacing:-.07em;margin:18px 0 25px;max-width:760px}
        .hero h1 em{font-style:normal;color:var(--lime)}
        .hero-copy{max-width:680px;color:#d8d0c5;font-size:18px;line-height:1.85;margin-bottom:30px}
        .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px}
        .hero .btn.alt{color:var(--ivory);border-color:#837a76}.hero .btn.alt:hover{background:var(--ivory);color:var(--charcoal)}
        .hero-facts{display:flex;gap:28px;flex-wrap:wrap}
        .fact{border-left:2px solid var(--lime);padding-left:13px}.fact strong{display:block;font-size:24px;line-height:1.1}.fact small{color:#aaa19b}
        .hero-board{background:var(--ivory);color:var(--charcoal);padding:18px;box-shadow:var(--shadow);transform:rotate(2deg)}
        .board-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:5px 4px 14px;font-size:12px;color:var(--muted)}
        .board-cover{height:245px;margin:16px 0;background:linear-gradient(135deg,#8e5261 0 35%,#e0b28b 35% 62%,#3e292c 62%);position:relative;overflow:hidden}
        .board-cover:after{content:"精选浏览";position:absolute;bottom:18px;left:18px;color:#fff;font-size:28px;font-family:serif;letter-spacing:.08em}
        .board-meta{display:flex;justify-content:space-between;align-items:center}.board-meta strong{font-size:19px}.board-meta span{color:var(--wine);font-size:13px}
        .tag{display:inline-block;padding:3px 9px;background:var(--soft);color:var(--wine);font-size:12px;font-weight:800}
        .tag.dark{background:var(--charcoal);color:var(--lime)}
        .channel-rail{display:flex;gap:12px;overflow:auto;padding-bottom:10px;scrollbar-width:none}
        .channel-rail::-webkit-scrollbar{display:none}
        .channel{min-width:220px;background:var(--paper);border:1px solid var(--line);padding:20px;transition:var(--ease)}
        .channel:hover{border-color:var(--wine);transform:translateY(-4px);box-shadow:var(--shadow)}
        .channel b{display:block;font-size:20px;margin:12px 0 5px}.channel p{font-size:13px;color:var(--muted);margin:0}
        .feature-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:22px;margin-top:24px}
        .feature-card{min-height:330px;background:var(--charcoal);color:var(--ivory);padding:30px;display:flex;flex-direction:column;justify-content:end;position:relative;overflow:hidden}
        .feature-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#572535,#171717 60%,#403d31)}
        .feature-card>*{position:relative}.feature-card h3{font-family:serif;font-size:34px;margin:15px 0 8px}.feature-card p{max-width:480px;color:#d8d0c5;margin:0}
        .number-list{background:var(--paper);border:1px solid var(--line);padding:7px 24px}
        .number-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
        .number-item:last-child{border:0}.number{font-size:25px;color:var(--wine);font-weight:900}.number-item h4{margin:0;font-size:16px}.number-item p{margin:2px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.arrow{color:var(--wine);font-size:20px}
        .filter-panel{background:var(--soft);padding:24px;margin-top:28px;border-left:4px solid var(--wine)}
        .filter-panel p{margin:0 0 16px;font-weight:800}.filter-row{display:flex;flex-wrap:wrap;gap:9px}.filter-btn{min-height:42px;padding:0 15px;border:1px solid var(--line);background:var(--paper);color:var(--muted);transition:var(--ease)}.filter-btn:hover,.filter-btn.active{background:var(--wine);border-color:var(--wine);color:#fff}
        .scenes{background:#e9e2d8}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.scene{background:var(--paper);padding:26px;border-top:3px solid var(--charcoal);transition:var(--ease)}.scene:nth-child(2){margin-top:32px;border-color:var(--wine)}.scene:nth-child(3){margin-top:64px;border-color:var(--lime)}.scene:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.scene-num{font-size:40px;color:var(--wine);font-weight:900}.scene h3{font-size:22px;margin:10px 0}.scene p{color:var(--muted);font-size:14px}.scene a{color:var(--wine);font-weight:800}
        .case-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:start}.case-intro h2{font-family:serif;font-size:42px;line-height:1.2;margin:12px 0}.case-intro p{color:var(--muted)}.case-stack{display:grid;grid-template-columns:1fr 1fr;gap:14px}.case{background:var(--paper);border:1px solid var(--line);padding:24px;min-height:190px}.case:first-child{background:var(--wine);color:#fff;grid-row:span 2}.case h3{font-size:20px;margin:17px 0 8px}.case p{font-size:14px;color:var(--muted);margin:0}.case:first-child p{color:#eadce0}
        .price-section{background:var(--charcoal);color:var(--ivory)}.price-section .section-head p{color:#bdb3ad}.price-grid{display:grid;grid-template-columns:.8fr 1.2fr .8fr;gap:12px;align-items:stretch}.price-card{border:1px solid #51494a;padding:28px;display:flex;flex-direction:column;min-height:300px}.price-card.featured{background:var(--ivory);color:var(--charcoal);border-color:var(--ivory);transform:translateY(-12px)}.price-card h3{font-size:22px;margin:15px 0 5px}.price-card p{color:#bdb3ad;font-size:14px}.featured p{color:var(--muted)}.price-card strong{font-size:30px;margin:14px 0}.price-card .btn{margin-top:auto}.price-card:not(.featured) .btn{background:transparent;color:var(--ivory);border-color:#827878}.price-card:not(.featured) .btn:hover{background:var(--ivory);color:var(--charcoal)}
        .faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:55px}.faq-grid h2{font-family:serif;font-size:42px;line-height:1.2;margin:12px 0}.faq-grid>div>p{color:var(--muted)}.accordion{background:transparent}.accordion-item{border-top:1px solid var(--line)}.accordion-title{display:block;padding:19px 0;font-weight:800;font-size:17px}.accordion-title:hover{color:var(--wine)}.accordion-content{padding:0 0 20px;color:var(--muted);font-size:14px}
        .news{border-top:1px solid var(--line)}.news-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.news-item{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:17px 0}.news-item a{font-weight:800}.news-item a:hover{color:var(--wine)}.news-item time{font-size:12px;color:var(--muted);white-space:nowrap}
        .cta{padding:70px 0;background:var(--wine);color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-family:serif;font-size:clamp(30px,4vw,48px);margin:0 0 8px}.cta p{margin:0;color:#eadce0}.cta .btn{background:var(--lime);border-color:var(--lime);color:var(--charcoal)}
        footer{background:var(--panel);color:var(--ivory);padding:58px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:50px}.footer-brand{font-weight:900;font-size:18px;max-width:250px;line-height:1.45}.footer-grid h4{font-size:14px;color:var(--lime);margin:0 0 16px}.footer-grid a,.footer-grid p{display:block;color:#bdb3ad;font-size:13px;margin:7px 0}.footer-grid a:hover{color:var(--lime)}.copyright{border-top:1px solid #494244;margin-top:42px;padding-top:18px;color:#908782;font-size:12px;display:flex;justify-content:space-between}
        .back-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;background:var(--lime);border:0;color:var(--charcoal);font-weight:900;z-index:10}
        @media(max-width:1023px){.step-link{padding:10px 8px}.step-link:not(:last-child):after{width:12px}.hero-grid{gap:35px}.section{padding:82px 0}.price-grid{grid-template-columns:1fr 1fr}.price-card.featured{transform:none}.price-card:last-child{grid-column:span 2}.feature-layout,.case-layout,.faq-grid{grid-template-columns:1fr}}
        @media(max-width:767px){.container{padding:0 18px}.nav-row{min-height:68px}.menu-toggle{display:block}.header-cta{display:none}.step-nav{display:none}.mobile-nav{display:none;padding:10px 18px 18px;border-top:1px solid var(--line)}.mobile-nav.open{display:block}.mobile-nav a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.hero{padding:64px 0 70px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(42px,12vw,60px)}.hero-copy{font-size:16px}.hero-board{transform:none}.board-cover{height:190px}.section{padding:68px 0}.section-head{display:block}.section-head p{margin-top:18px}.scene-grid,.news-list,.case-stack{grid-template-columns:1fr}.scene:nth-child(2),.scene:nth-child(3){margin-top:0}.case:first-child{grid-row:auto}.price-grid{grid-template-columns:1fr}.price-card:last-child{grid-column:auto}.faq-grid{gap:25px}.cta-inner{display:block}.cta .btn{margin-top:24px}.footer-grid{grid-template-columns:1fr;gap:25px}.copyright{display:block}.copyright span{display:block;margin-top:8px}.filter-row{overflow:auto;flex-wrap:nowrap;padding-bottom:5px}.filter-btn{white-space:nowrap}}
        @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* roulang page: category1 */
:root{
--ivory:#f5f1e8;--paper:#fffdf8;--charcoal:#171717;--panel:#211d20;--wine:#7d1f3a;--wine-dark:#5c142a;--lime:#c7f36b;--muted:#766f68;--line:#d8d0c5;--soft:#ebe5db;--shadow:0 14px 34px rgba(35,25,25,.09);--radius:8px;--ease:all .24s ease
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:"Source Han Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select{font:inherit}
button{cursor:pointer}
.container{max-width:1240px;margin:0 auto;padding:0 28px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,241,232,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
.nav-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;line-height:1.22;max-width:294px}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--wine);color:var(--ivory);font-size:13px;font-weight:900}
.brand span:last-child{font-size:15px}
.step-nav{display:flex;align-items:center;justify-content:center;flex:1;gap:0}
.step-link{position:relative;padding:8px 13px;font-size:13px;font-weight:800;color:var(--muted);white-space:nowrap;transition:var(--ease)}
.step-link:not(:last-child):after{content:"";position:absolute;width:18px;height:1px;right:-9px;top:50%;background:var(--line)}
.step-link:hover,.step-link.active{color:var(--wine)}
.step-num{display:inline-grid;place-items:center;width:21px;height:21px;margin-right:5px;border:1px solid currentColor;font-size:10px;line-height:1}
.step-link.active .step-num{background:var(--wine);color:#fff;border-color:var(--wine)}
.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--wine);background:var(--wine);color:#fff;font-weight:800;letter-spacing:.02em;transition:var(--ease)}
.header-cta:hover,.btn:hover{background:var(--wine-dark);color:#fff;transform:translateY(-2px)}
.btn.alt{background:transparent;color:var(--charcoal);border-color:var(--charcoal)}
.btn.alt:hover{background:var(--charcoal);color:var(--ivory)}
.btn.light{background:var(--lime);border-color:var(--lime;color:var(--charcoal)}
.btn:focus-visible,.header-cta:focus-visible,.step-link:focus-visible,.filter-btn:focus-visible,.card-link:focus-visible,.menu-toggle:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);padding:8px 12px;color:var(--charcoal);font-weight:800}
.page-hero{padding:68px 0 44px;background:var(--panel);color:var(--ivory);overflow:hidden;position:relative}
.page-hero:before{content:"";position:absolute;right:8%;top:-120px;width:360px;height:360px;border:1px solid rgba(199,243,107,.34);transform:rotate(32deg)}
.page-hero .grid-x{position:relative;z-index:1}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.16em}
.eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
.page-hero h1{font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(40px,5.4vw,68px);line-height:1.1;letter-spacing:-.06em;margin:16px 0 18px;max-width:760px}
.page-hero p{max-width:700px;color:#d9d0c9;margin:0;font-size:17px}
.hero-note{border-left:2px solid var(--lime);padding:12px 0 12px 18px;color:#d8d0c5;font-size:14px;margin-top:24px}
.hero-panel{margin-top:14px;background:var(--ivory);color:var(--charcoal);padding:20px;transform:rotate(1.5deg);box-shadow:var(--shadow)}
.hero-panel strong{font-size:19px;display:block;line-height:1.35}
.hero-panel p{color:var(--muted);font-size:13px;line-height:1.6;margin-top:8px}
.section{padding:82px 0;scroll-margin-top:105px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px}
.section-head h2{font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(30px,4vw,48px);line-height:1.15;letter-spacing:-.05em;margin:8px 0 0}
.section-head p{max-width:470px;color:var(--muted);font-size:15px;margin:0}
.section-label{color:var(--wine);font-size:12px;letter-spacing:.15em;font-weight:900}
.filter-shell{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:32px}
.filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.filter-title{font-size:13px;font-weight:900;margin-right:3px}
.filter-btn{min-height:40px;padding:0 14px;border:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:13px;transition:var(--ease)}
.filter-btn:hover,.filter-btn.active{background:var(--wine);border-color:var(--wine);color:#fff}
.search-box{margin-left:auto;display:flex;min-width:245px}
.search-box input{height:40px;min-width:0;flex:1;border:1px solid var(--line);border-right:0;background:var(--paper);padding:0 12px;color:var(--charcoal);outline:none}
.search-box input:focus{border-color:var(--wine);box-shadow:inset 0 0 0 1px var(--wine)}
.search-box button{width:45px;border:1px solid var(--wine);background:var(--wine);color:#fff;font-weight:900}
.content-card{position:relative;background:var(--paper);border:1px solid var(--line);overflow:hidden;transition:var(--ease)}
.content-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#bda5ab}
.content-card:focus-within{box-shadow:0 0 0 3px rgba(199,243,107,.7)}
.cover{position:relative;overflow:hidden;background:#55484a}
.cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(23,23,23,.67))}
.cover-art{width:100%;height:100%;display:block;background:
linear-gradient(136deg,rgba(125,31,58,.96),rgba(35,29,32,.14) 58%),
repeating-linear-gradient(45deg,rgba(255,255,255,.14) 0 1px,transparent 1px 15px)}
.cover-art.alt{background:linear-gradient(150deg,#2a2527,#6d413a 53%,#c7f36b 54%,#c7f36b 57%,#28272a 58%)}
.cover-art.soft{background:linear-gradient(145deg,#ded0b9,#7d1f3a 52%,#211d20 53%)}
.cover-art.dark{background:linear-gradient(145deg,#211d20,#514249 63%,#a49b83 64%)}
.cover-art.line{background:linear-gradient(145deg,#a73350,#211d20 48%,#f3ede2 49%,#f3ede2 53%,#574c45 54%)}
.cover-big{height:335px}.cover-medium{height:217px}.cover-small{height:145px}
.cover-tag{position:absolute;top:14px;left:14px;z-index:2;background:var(--lime);color:var(--charcoal);padding:3px 8px;font-size:11px;font-weight:900}
.play-dot{position:absolute;z-index:2;right:14px;bottom:13px;width:34px;height:34px;display:grid;place-items:center;background:var(--ivory);color:var(--wine);font-size:13px}
.card-body{padding:20px}
.card-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}
.card-body h3{font-family:"Source Han Serif SC","Songti SC",serif;font-size:25px;line-height:1.25;letter-spacing:-.03em;margin:10px 0 9px}
.card-body p{color:var(--muted);font-size:14px;line-height:1.7;margin:0 0 15px}
.card-link{display:inline-flex;align-items:center;gap:8px;color:var(--wine);font-size:14px;font-weight:900}
.card-link:after{content:"→";font-size:18px;transition:var(--ease)}
.card-link:hover:after{transform:translateX(4px)}
.flow-grid{margin-bottom:56px}
.flow-grid>.cell{margin-bottom:20px}
.stack-card{display:grid;grid-template-columns:154px 1fr;border:1px solid var(--line);background:var(--paper);min-height:190px;transition:var(--ease)}
.stack-card:hover{box-shadow:var(--shadow);transform:translateX(4px)}
.stack-card .card-body{padding:18px}
.stack-card h3{font-size:21px;margin-top:7px}
.topic-rail{display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory}
.topic-rail::-webkit-scrollbar{height:5px}.topic-rail::-webkit-scrollbar-thumb{background:var(--line)}
.topic-card{flex:0 0 286px;scroll-snap-align:start;background:var(--charcoal);color:var(--ivory);padding:22px 20px;min-height:200px;position:relative;border-bottom:3px solid transparent;transition:var(--ease)}
.topic-card:hover{transform:translateY(-4px);border-color:var(--lime)}
.topic-card .num{color:var(--lime);font-size:12px;font-weight:900;letter-spacing:.15em}
.topic-card h3{font-family:"Source Han Serif SC","Songti SC",serif;font-size:25px;line-height:1.25;margin:18px 0 9px}
.topic-card p{font-size:13px;line-height:1.65;color:#ccc1ba;margin:0}
.channel-note{margin-top:58px;background:var(--soft);border-left:4px solid var(--wine);padding:29px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.channel-note h2{font-family:"Source Han Serif SC","Songti SC",serif;font-size:31px;line-height:1.25;margin:0}
.channel-note p{max-width:520px;margin:6px 0 0;color:var(--muted);font-size:14px}
.pagination-wrap{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:27px;margin-top:20px}
.page-status{color:var(--muted);font-size:14px}
.page-actions{display:flex;gap:8px}
.page-actions a{min-width:43px;height:43px;display:grid;place-items:center;border:1px solid var(--line);background:var(--paper);font-weight:800;transition:var(--ease)}
.page-actions a:hover,.page-actions a.active{background:var(--wine);border-color:var(--wine);color:#fff}
.faq-section{padding:82px 0;background:var(--paper)}
.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:58px}
.faq-grid h2{font-family:"Source Han Serif SC","Songti SC",serif;font-size:42px;line-height:1.18;letter-spacing:-.05em;margin:10px 0}
.faq-grid>div>p{color:var(--muted);font-size:15px}
.accordion-item{border-top:1px solid var(--line)}
.accordion-item:last-child{border-bottom:1px solid var(--line)}
.accordion-title{display:flex;align-items:center;justify-content:space-between;width:100%;padding:19px 0;border:0;background:transparent;color:var(--charcoal);font-weight:900;text-align:left}
.accordion-title:hover{color:var(--wine)}
.accordion-title span:last-child{color:var(--wine);font-size:22px}
.accordion-content{display:none;padding:0 25px 19px 0;color:var(--muted);font-size:14px}
.accordion-item.is-active .accordion-content{display:block}
.accordion-item.is-active .accordion-title{color:var(--wine)}
.cta-section{padding:82px 0;background:var(--wine);color:var(--ivory)}
.cta-box{display:flex;align-items:end;justify-content:space-between;gap:36px}
.cta-box h2{font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(34px,4.5vw,55px);line-height:1.12;letter-spacing:-.06em;max-width:730px;margin:0}
.cta-box p{color:#ead6dd;margin:13px 0 0}
.cta-section .btn{background:var(--lime);border-color:var(--lime);color:var(--charcoal);white-space:nowrap}
.cta-section .btn:hover{background:#d9ff91;color:var(--charcoal)}
footer{background:var(--charcoal);color:var(--ivory);padding:64px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.25fr .9fr 1fr;gap:55px}
.footer-brand{font-family:"Source Han Serif SC","Songti SC",serif;font-size:30px;line-height:1.1;letter-spacing:-.05em}
.footer-grid p{color:#c2b8b1;font-size:14px;line-height:1.75;margin:14px 0 0;max-width:300px}
.footer-grid h4{font-size:13px;color:var(--lime);letter-spacing:.12em;margin:0 0 12px}
.footer-grid a{display:block;color:#e9e0d9;font-size:14px;padding:4px 0;transition:var(--ease)}
.footer-grid a:hover{color:var(--lime);transform:translateX(4px)}
.copyright{border-top:1px solid #464044;margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#a99e98;font-size:12px}
@media(max-width:1023px){
.container{padding:0 22px}.nav-row{min-height:70px}.brand{max-width:230px}.step-link{padding:8px 7px;font-size:12px}.step-link:not(:last-child):after{display:none}.header-cta{padding:0 14px}.page-hero{padding:58px 0 38px}.section{padding:68px 0}.faq-grid{gap:35px}.footer-grid{gap:28px}
}
@media(max-width:767px){
.container{padding:0 18px}.site-header{position:relative}.nav-row{flex-wrap:wrap;padding:12px 0;min-height:0}.brand{max-width:236px}.menu-toggle{display:block}.header-cta{display:none}.step-nav{display:none;width:100%;order:3;justify-content:flex-start;overflow-x:auto;border-top:1px solid var(--line);padding-top:9px}.step-nav.open{display:flex}.step-link{flex:0 0 auto;padding:7px 8px}.page-hero{padding:48px 0 34px}.page-hero h1{font-size:42px}.page-hero p{font-size:15px}.hero-panel{margin-top:30px;transform:none}.section{padding:60px 0}.section-head{display:block;margin-bottom:24px}.section-head p{margin-top:13px}.search-box{width:100%;margin-left:0}.flow-grid{margin-bottom:36px}.cover-big{height:260px}.stack-card{grid-template-columns:120px 1fr;min-height:160px}.cover-small{height:100%}.channel-note,.cta-box{display:block}.channel-note{padding:25px 22px}.channel-note .btn{margin-top:19px}.pagination-wrap{align-items:flex-start;gap:16px;flex-direction:column}.faq-grid{display:block}.faq-grid>div>p{margin-bottom:26px}.cta-box .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr;gap:30px}.copyright{display:block}.copyright span{display:block;margin:7px 0}
}
@media(max-width:420px){
.page-hero h1{font-size:37px}.filter-btn{padding:0 11px}.stack-card{grid-template-columns:99px 1fr}.stack-card .card-body{padding:14px}.stack-card h3{font-size:18px}.card-body h3{font-size:22px}.page-actions a{min-width:38px;height:38px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category2 */
:root{
      --ivory:#f5f1e8;
      --paper:#fffdf8;
      --charcoal:#171717;
      --panel:#211d20;
      --wine:#7d1f3a;
      --wine-dark:#5c142a;
      --lime:#c7f36b;
      --muted:#766f68;
      --line:#d8d0c5;
      --soft:#ebe5db;
      --shadow:0 14px 34px rgba(35,25,25,.09);
      --radius:8px;
      --ease:all .24s ease;
    }
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:"Source Han Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
    *,*:before,*:after{box-sizing:border-box}
    a{color:inherit;text-decoration:none}
    a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
    img{display:block;max-width:100%}
    button,input,select{font:inherit}
    button{cursor:pointer}
    .container{max-width:1240px;margin:0 auto;padding:0 28px}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--wine);font-size:12px;font-weight:800;letter-spacing:.16em}
    .eyebrow:before{content:"";width:24px;height:2px;background:var(--wine)}
    .section{padding:104px 0;scroll-margin-top:112px}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
    .section-head h2{margin:10px 0 0;font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(32px,4vw,52px);line-height:1.16;letter-spacing:-.05em}
    .section-head p{max-width:530px;margin:0;color:var(--muted);font-size:15px}
    .site-header{position:sticky;top:0;z-index:20;background:rgba(245,241,232,.97);border-bottom:1px solid var(--line);transition:var(--ease)}
    .nav-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
    .brand{display:flex;align-items:center;gap:12px;font-weight:900;line-height:1.2;max-width:285px}
    .brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--wine);color:var(--ivory);font-size:14px}
    .brand span:last-child{font-size:15px}
    .menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:8px 12px;color:var(--charcoal)}
    .step-nav{display:flex;align-items:center;gap:0;flex:1;justify-content:center}
    .step-link{position:relative;display:flex;align-items:center;gap:8px;padding:12px 18px;color:var(--muted);font-size:13px;font-weight:800;transition:var(--ease)}
    .step-link:after{content:"";position:absolute;right:-1px;top:50%;width:18px;height:1px;background:var(--line)}
    .step-link:last-child:after{display:none}
    .step-link:hover,.step-link.active{color:var(--wine)}
    .step-link.active .step-num{background:var(--wine);color:#fff;border-color:var(--wine)}
    .step-num{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);font:700 11px/1 monospace;color:var(--muted)}
    .header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--wine);background:var(--wine);color:#fff;font-weight:800;transition:var(--ease)}
    .header-cta:hover,.btn:hover{background:var(--wine-dark);transform:translateY(-2px);color:#fff}
    .btn.alt{background:transparent;color:var(--charcoal);border-color:var(--charcoal)}
    .btn.alt:hover{background:var(--charcoal);color:var(--ivory)}
    .btn.light{background:var(--lime);border-color:var(--lime);color:var(--charcoal)}
    .page-intro{padding:82px 0 60px;background:var(--panel);color:var(--ivory)}
    .intro-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end}
    .page-intro .eyebrow{color:var(--lime)}
    .page-intro .eyebrow:before{background:var(--lime)}
    .page-intro h1{font-family:"Source Han Serif SC","Songti SC",serif;font-size:clamp(42px,6vw,76px);line-height:1.08;letter-spacing:-.07em;margin:18px 0 20px;max-width:760px}
    .page-intro h1 em{font-style:normal;color:var(--lime)}
    .intro-copy{color:#d8d0c5;font-size:18px;max-width:650px;margin:0}
    .intro-note{border-left:2px solid var(--lime);padding:10px 0 10px 22px;color:#d8d0c5}
    .intro-note strong{display:block;color:var(--ivory);font-size:28px;line-height:1.2;margin-bottom:5px}
    .filter-panel{margin-top:-1px;background:var(--paper);border:1px solid var(--line);padding:20px;box-shadow:var(--shadow)}
    .filter-form{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:10px;align-items:center}
    .filter-form input,.filter-form select{height:46px;border:1px solid var(--line);background:var(--ivory);padding:0 14px;color:var(--charcoal)}
    .filter-form input:focus,.filter-form select:focus{border-color:var(--wine);box-shadow:0 0 0 2px rgba(125,31,58,.12)}
    .filter-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
    .filter-btn{min-height:40px;padding:0 15px;border:1px solid var(--line);background:var(--paper);color:var(--muted);transition:var(--ease)}
    .filter-btn:hover,.filter-btn.active{background:var(--wine);border-color:var(--wine);color:#fff}
    .topic-layout{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:start}
    .topic-index{position:sticky;top:105px;border-top:3px solid var(--charcoal);padding-top:12px}
    .topic-index h3{font-family:serif;font-size:25px;margin:0 0 16px}
    .topic-index a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:13px 0;color:var(--muted);transition:var(--ease)}
    .topic-index a:hover,.topic-index a.active{color:var(--wine);padding-left:8px}
    .topic-index b{font:700 12px monospace;color:var(--wine)}
    .topic-main{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
    .large-topic{min-height:440px;background:var(--charcoal);color:var(--ivory);padding:30px;display:flex;flex-direction:column;justify-content:end;position:relative;overflow:hidden}
    .large-topic:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#71304a 0%,#211d20 52%,#403b30 100%)}
    .large-topic:after{content:"02 / 04";position:absolute;right:24px;top:22px;color:var(--lime);font:700 12px monospace;letter-spacing:.1em}
    .large-topic>*{position:relative}
    .large-topic h2{font-family:serif;font-size:clamp(30px,4vw,48px);line-height:1.15;margin:16px 0 10px}
    .large-topic p{color:#d8d0c5;max-width:480px;margin:0 0 20px}
    .topic-list{display:flex;flex-direction:column;gap:10px}
    .topic-item{background:var(--paper);border:1px solid var(--line);padding:19px 20px;min-height:105px;transition:var(--ease)}
    .topic-item:hover{transform:translateX(5px);border-color:var(--wine);box-shadow:var(--shadow)}
    .topic-item .item-top{display:flex;justify-content:space-between;gap:12px;color:var(--wine);font:700 12px monospace}
    .topic-item h3{font-size:19px;line-height:1.35;margin:7px 0 3px}
    .topic-item p{font-size:13px;color:var(--muted);margin:0;line-height:1.55}
    .tag{display:inline-block;padding:3px 9px;background:var(--soft);color:var(--wine);font-size:12px;font-weight:800}
    .tag.dark{background:var(--charcoal);color:var(--lime)}
    .strip-section{background:var(--soft)}
    .strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
    .strip-card{background:var(--paper);border-top:3px solid var(--wine);padding:22px;min-height:170px;transition:var(--ease)}
    .strip-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
    .strip-card strong{display:block;font:700 13px monospace;color:var(--wine);margin-bottom:12px}
    .strip-card h3{font-size:20px;margin:0 0 6px}
    .strip-card p{font-size:14px;color:var(--muted);margin:0}
    .browse-section{background:var(--paper)}
    .browse-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
    .browse-card{border:1px solid var(--line);padding:26px;background:var(--ivory);display:flex;gap:22px;align-items:flex-start}
    .browse-card .index{font:700 28px monospace;color:var(--wine)}
    .browse-card h3{font-family:serif;font-size:27px;line-height:1.25;margin:0 0 6px}
    .browse-card p{color:var(--muted);margin:0 0 14px;font-size:14px}
    .text-link{color:var(--wine);font-weight:800;border-bottom:1px solid var(--wine);padding-bottom:3px}
    .faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:55px}
    .faq-grid h2{font-family:serif;font-size:42px;line-height:1.2;margin:12px 0}
    .faq-grid>div>p{color:var(--muted)}
    .accordion-item{border-top:1px solid var(--line)}
    .accordion-question{width:100%;border:0;background:transparent;text-align:left;padding:19px 34px 19px 0;position:relative;font-weight:800;color:var(--charcoal)}
    .accordion-question:after{content:"＋";position:absolute;right:4px;color:var(--wine);font-size:22px;top:15px}
    .accordion-question[aria-expanded="true"]:after{content:"－"}
    .accordion-answer{display:none;padding:0 35px 20px 0;color:var(--muted);font-size:15px}
    .accordion-answer.open{display:block}
    .cta{background:var(--wine);color:var(--ivory);padding:70px 0}
    .cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
    .cta h2{font-family:serif;font-size:clamp(32px,4vw,50px);line-height:1.15;margin:10px 0}
    .cta p{color:#ead9dc;margin:0;max-width:600px}
    footer{background:var(--panel);color:var(--ivory);padding:58px 0 24px}
    .footer-grid{display:grid;grid-template-columns:1.3fr .7fr .9fr;gap:60px}
    .footer-brand{font-family:serif;font-size:27px;line-height:1.15;font-weight:700}
    footer p{color:#bdb3ad;font-size:14px;margin:15px 0 0}
    footer h4{font-size:14px;margin:0 0 14px;color:var(--lime)}
    footer a{display:block;color:#d8d0c5;font-size:14px;margin:7px 0;transition:var(--ease)}
    footer a:hover{color:var(--lime);padding-left:4px}
    .copyright{display:flex;justify-content:space-between;border-top:1px solid #51494a;margin-top:42px;padding-top:18px;color:#958b87;font-size:12px}
    @media(max-width:1023px){
      .step-link{padding:12px 9px;font-size:12px}.header-cta{padding:0 13px}
      .intro-grid,.topic-layout{grid-template-columns:1fr}.topic-index{position:static}
      .topic-main{grid-template-columns:1fr 1fr}.strip-grid{grid-template-columns:repeat(2,1fr)}
      .faq-grid{grid-template-columns:1fr;gap:20px}
    }
    @media(max-width:700px){
      .container{padding:0 18px}.nav-row{min-height:68px}.brand{max-width:240px}.brand span:last-child{font-size:13px}
      .menu-toggle{display:block}.step-nav{display:none}.header-cta{display:none}
      .site-header.menu-open .step-nav{display:flex;position:absolute;left:0;right:0;top:68px;background:var(--ivory);border-bottom:1px solid var(--line);padding:8px 18px;overflow-x:auto;justify-content:flex-start}
      .site-header.menu-open .header-cta{display:inline-flex;position:absolute;right:58px;top:79px;z-index:2}
      .page-intro{padding:60px 0 48px}.intro-grid{gap:28px}.intro-copy{font-size:16px}
      .filter-form{grid-template-columns:1fr}.filter-form .btn{width:100%}
      .section{padding:72px 0}.section-head{display:block;margin-bottom:25px}.section-head p{margin-top:15px}
      .topic-main,.browse-grid{grid-template-columns:1fr}.large-topic{min-height:350px}.strip-grid{grid-template-columns:1fr}
      .browse-card{padding:21px}.cta-inner{display:block}.cta .btn{margin-top:22px}
      .footer-grid{grid-template-columns:1fr;gap:28px}.copyright{display:block}.copyright span{display:block;margin:5px 0}
    }
    @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
