/* roulang page: index */
:root{
  --green:#1f6b4f;--green-dark:#15513b;--ink:#202522;--muted:#6f766f;
  --paper:#f4f2ec;--sand:#ded4c2;--orange:#e87b36;--white:#fffdf8;
  --line:#d9d6cc;--radius:12px;--shadow:0 12px 30px rgba(32,37,34,.08);
  --container:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.topline{height:34px;background:#18201c;color:#cbd3ca;font-size:13px}
.topline .container{height:100%;display:flex;align-items:center;justify-content:space-between}
.topline strong{color:#f0a16c;font-weight:600}
.site-header{height:72px;background:var(--ink);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:100%;display:flex;align-items:center;gap:35px}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}
.logo-mark{width:30px;height:30px;border:2px solid #8dccac;border-radius:7px;position:relative;display:inline-block}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#8dccac}
.logo-mark:before{width:15px;height:2px;left:5px;top:13px;transform:rotate(-28deg)}
.logo-mark:after{width:5px;height:5px;border-radius:50%;right:4px;top:6px}
.main-nav{display:flex;align-items:center;gap:22px;flex:1}
.main-nav a{font-size:14px;color:#bfc8c0;padding:25px 0;position:relative;white-space:nowrap}
.main-nav a:after{content:"";height:3px;background:var(--green);position:absolute;left:0;right:100%;bottom:15px;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:#fff;font-weight:700}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{background:var(--green);border-radius:7px;padding:10px 17px!important;color:#fff!important;font-weight:700!important}
.nav-download:after{display:none}
.hero{padding:52px 0 28px;background:
linear-gradient(rgba(244,242,236,.92),rgba(244,242,236,.92)),
repeating-linear-gradient(0deg,transparent 0 39px,rgba(31,107,79,.08) 40px),
repeating-linear-gradient(90deg,transparent 0 79px,rgba(31,107,79,.06) 80px)}
.hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:stretch}
.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--green);font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:13px}
.eyebrow:before{content:"";width:24px;height:3px;background:var(--orange);display:inline-block}
.hero h1{font-size:clamp(36px,5vw,58px);line-height:1.18;letter-spacing:-2px;max-width:720px;margin-bottom:18px}
.hero h1 em{font-style:normal;color:var(--green)}
.hero-intro{font-size:18px;color:#525a53;max-width:650px;line-height:1.75}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 22px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-size:15px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 15px rgba(31,107,79,.2)}
.btn-light{border-color:#bfc7bd;background:transparent;color:var(--green)}
.btn-light:hover{background:#e5ebe4;transform:translateY(-2px)}
.btn:focus,a:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.hero-meta{display:flex;gap:22px;flex-wrap:wrap;color:var(--muted);font-size:13px}
.hero-meta b{color:var(--ink)}
.board-card{background:var(--ink);color:#fff;border-radius:16px;padding:25px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.board-card:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(141,204,172,.25);border-radius:50%;right:-80px;bottom:-70px}
.board-label{font-size:12px;color:#a8cdb7;letter-spacing:1px}
.board-card h2{font-size:25px;line-height:1.35;margin:10px 0 20px}
.board-row{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);padding:12px 0;font-size:14px}
.board-row span{color:#aab4ac}.board-row strong{color:#fff}
.board-card .btn{width:100%;margin-top:16px}
.quick{padding:18px 0 42px}
.quick-wrap{display:flex;align-items:center;gap:18px;background:#fffdf8;border:1px solid var(--line);border-radius:10px;padding:12px 17px;overflow:hidden}
.quick-title{font-weight:800;color:var(--green);white-space:nowrap}
.quick-items{display:flex;gap:28px;overflow:auto;white-space:nowrap;scrollbar-width:none}
.quick-item{font-size:14px;color:#525a53}.quick-item time{color:#9a9c94;margin-left:8px;font-size:12px}
.tag{display:inline-block;font-size:12px;line-height:1;padding:7px 9px;border-radius:4px;background:#e4eee8;color:var(--green);font-weight:700;margin-right:8px}
.tag.hot{background:#fff0e7;color:#c35c20}
.section{padding:68px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}
.section-kicker{font-size:13px;color:var(--orange);font-weight:800;letter-spacing:1px}
.section h2{font-size:32px;line-height:1.3;margin-top:4px;letter-spacing:-1px}
.section-head p{color:var(--muted);font-size:14px}
.text-link{color:var(--green);font-weight:700;font-size:14px;border-bottom:1px solid var(--green)}
.news-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:25px}
.feature-card,.news-list{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.feature-visual{height:270px;background:linear-gradient(135deg,#173f31,#3b8062 55%,#d98242);position:relative;padding:25px;display:flex;align-items:end}
.feature-visual:before{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.35);border-radius:50% 50% 0 0}
.feature-visual:after{content:"BS / 01";position:absolute;right:22px;top:20px;color:#fff;font-size:12px;letter-spacing:2px}
.visual-caption{color:#fff;position:relative;font-size:14px}
.feature-body{padding:22px}
.feature-body h3{font-size:23px;line-height:1.45;margin:12px 0 8px}
.feature-body p{color:var(--muted);font-size:14px;line-height:1.7}
.card-meta{display:flex;gap:15px;color:#92978f;font-size:12px;margin-top:15px}
.news-list{padding:8px 22px}
.news-item{display:grid;grid-template-columns:68px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid var(--line)}
.news-item:last-child{border-bottom:0}
.date-box{color:var(--green);font-weight:800;line-height:1.2;border-right:2px solid var(--sand);padding-right:12px}
.date-box small{display:block;font-size:11px;color:#92978f;margin-top:4px}
.news-item h3{font-size:16px;line-height:1.45;margin-bottom:4px}
.news-item p{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.news-item:hover h3{color:var(--green)}
.download-section{background:var(--sand);padding:72px 0}
.download-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:65px;align-items:center}
.device-art{height:330px;background:#26352d;border-radius:18px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.device-art:before{content:"";width:195px;height:285px;background:#f8f5ed;border:8px solid #111a16;border-radius:25px;box-shadow:18px 18px 0 rgba(32,37,34,.2);position:absolute}
.device-screen{z-index:1;width:166px;height:250px;background:#e8efe9;border-radius:13px;padding:14px;color:var(--ink)}
.screen-top{height:30px;background:var(--green);border-radius:6px;margin-bottom:12px}
.screen-line{height:9px;background:#c1d4c7;border-radius:4px;margin:9px 0}
.screen-line.short{width:62%}.screen-score{height:67px;border-radius:7px;background:#fff;margin-top:14px;border-left:4px solid var(--orange)}
.download-copy h2{font-size:32px;line-height:1.35;margin:6px 0 12px}
.download-copy>p{color:#5b625b;max-width:580px}
.platforms{display:flex;gap:8px;flex-wrap:wrap;margin:21px 0}
.platform{border:1px solid #b9b5a9;background:rgba(255,255,255,.4);padding:7px 12px;border-radius:5px;font-size:13px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}
.step{position:relative;border-top:2px solid var(--green);padding-top:12px}
.step b{font-size:25px;color:var(--green);display:block}.step strong{font-size:14px}.step p{font-size:13px;color:#6c7068;line-height:1.6;margin-top:3px}
.topic-section{padding:68px 0;background:#fffdf8}
.topic-track{display:flex;gap:14px;overflow:auto;padding-bottom:8px;scrollbar-width:thin}
.topic{min-width:250px;border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--paper);transition:.2s}
.topic:first-child{min-width:380px;background:var(--green);color:#fff}
.topic:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.topic-num{font-size:12px;color:var(--orange);font-weight:800}.topic:first-child .topic-num{color:#f8b17c}
.topic h3{font-size:19px;line-height:1.45;margin:18px 0 8px}.topic p{font-size:13px;color:var(--muted)}.topic:first-child p{color:#d6e5db}
.split-section{padding:70px 0}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:27px}
.panel h2{font-size:24px;margin-bottom:22px}
.timeline{border-left:2px solid var(--sand);padding-left:22px}
.timeline-item{position:relative;margin-bottom:22px}.timeline-item:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--green);position:absolute;left:-28px;top:9px}
.timeline time{font-size:12px;color:var(--orange);font-weight:700}.timeline h3{font-size:16px;margin:2px 0}.timeline p{font-size:13px;color:var(--muted)}
.version{padding:15px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:74px 1fr;gap:13px}.version:first-of-type{border-top:0}.version b{color:var(--green);font-size:14px}.version h3{font-size:15px}.version p{font-size:13px;color:var(--muted)}
.faq-section{background:#e8e5dc;padding:70px 0}
.faq-wrap{max-width:820px;margin:auto}.faq-wrap .section-head{display:block;text-align:center;margin-bottom:25px}
.faq-item{background:var(--white);border:1px solid var(--line);border-radius:8px;margin-bottom:10px}
.faq-question{width:100%;border:0;background:none;text-align:left;padding:18px 20px;font-weight:700;display:flex;justify-content:space-between;color:var(--ink)}
.faq-question span{color:var(--green);font-size:20px;line-height:1}
.faq-answer{display:none;padding:0 20px 18px;color:var(--muted);font-size:14px}.faq-item.open .faq-answer{display:block}.faq-item.open .faq-question span{transform:rotate(45deg)}
.cta{padding:64px 0;background:var(--green);color:#fff}
.cta-inner{display:flex;justify-content:space-between;gap:25px;align-items:center}.cta h2{font-size:30px;line-height:1.4}.cta p{color:#d7e8dd;margin-top:6px}.cta .btn-light{border-color:#b9ddc7;color:#fff}
.site-footer{background:var(--ink);color:#dbe2dc;padding:48px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:35px;padding-bottom:38px}
.footer-brand .logo{margin-bottom:13px}.footer-brand p{color:#9da89e;font-size:13px;max-width:280px}
.footer-col h3{font-size:14px;color:#fff;margin-bottom:14px}.footer-col a{display:block;color:#9da89e;font-size:13px;margin:8px 0}.footer-col a:hover{color:#a8d4b8}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#89958b;font-size:12px}
.mobile-bar{display:none}
@media(max-width:1023px){
 .main-nav{gap:13px}.nav-wrap{gap:18px}.main-nav a{font-size:13px}
 .hero-grid,.download-grid{grid-template-columns:1fr}.board-card{max-width:600px}.download-grid{gap:35px}.device-art{height:270px}
}
@media(max-width:767px){
 .container{width:min(100% - 32px,600px)}.topline .container{font-size:11px}.topline .container span:last-child{display:none}
 .site-header{height:auto}.nav-wrap{min-height:68px;flex-wrap:wrap;padding:10px 0}.logo{font-size:16px}.main-nav{order:3;flex-basis:100%;display:none;overflow:auto;padding-bottom:10px}.main-nav.show{display:flex}.main-nav a{padding:7px 0}.main-nav a:after{bottom:1px}.nav-download{display:none}
 .hero{padding-top:38px}.hero h1{font-size:37px;letter-spacing:-1.5px}.hero-intro{font-size:16px}.hero-actions .btn{width:100%}
 .board-card{padding:21px}.section{padding:50px 0}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:12px}
 .news-grid,.split-grid{grid-template-columns:1fr}.feature-visual{height:210px}.feature-body h3{font-size:20px}
 .download-section{padding:50px 0}.download-grid{gap:25px}.download-copy h2{font-size:27px}.steps{grid-template-columns:1fr;gap:13px}.step{display:grid;grid-template-columns:40px 1fr;column-gap:10px}.step b{grid-row:span 2}.step p{grid-column:2}
 .topic:first-child{min-width:310px}.topic{min-width:235px}.cta-inner{display:block}.cta .btn{margin-top:20px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}
 .mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;background:#202522;color:#fff;z-index:30;padding:9px 14px;align-items:center;gap:10px;box-shadow:0 -5px 18px rgba(0,0,0,.15)}.mobile-bar .mini-mark{width:28px;height:28px;border-radius:6px;background:var(--green);display:grid;place-items:center;font-size:13px;font-weight:800}.mobile-bar strong{font-size:13px;flex:1}.mobile-bar small{display:block;color:#aeb9b0;font-size:10px}.mobile-bar .btn{min-height:38px;padding:0 13px;font-size:13px}
}

/* roulang page: category1 */
:root{
 --green:#1f6b4f;--green-dark:#15513b;--ink:#202522;--muted:#6f766f;
 --paper:#f4f2ec;--sand:#ded4c2;--orange:#e87b36;--white:#fffdf8;
 --line:#d9d6cc;--radius:12px;--shadow:0 12px 30px rgba(32,37,34,.08);
 --container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none;transition:color .2s ease,background .2s ease,transform .2s ease,border-color .2s ease}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.topline{height:35px;background:#18201c;color:#c9d0c9;font-size:12px}
.topline .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topline strong{color:#a4d1b5;font-weight:700}
.site-header{height:72px;background:var(--ink);color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:100%;display:flex;align-items:center;gap:35px}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}
.logo-mark{width:30px;height:30px;border:2px solid #8dccac;border-radius:7px;position:relative;display:inline-block;flex:0 0 30px}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#8dccac}
.logo-mark:before{width:15px;height:2px;left:5px;top:13px;transform:rotate(-28deg)}
.logo-mark:after{width:5px;height:5px;border-radius:50%;right:4px;top:6px}
.main-nav{display:flex;align-items:center;gap:22px;flex:1}
.main-nav a{font-size:14px;color:#bfc8c0;padding:25px 0;position:relative;white-space:nowrap}
.main-nav a:after{content:"";height:3px;background:var(--green);position:absolute;left:0;right:100%;bottom:15px;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:#fff;font-weight:700}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{background:var(--green);border-radius:7px;padding:10px 17px!important;color:#fff!important;font-weight:700!important}
.nav-download:after{display:none!important}
.nav-download:hover{background:var(--green-dark)!important;transform:translateY(-1px)}
.menu-toggle{display:none;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;border-radius:7px;width:42px;height:40px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-size:15px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 15px rgba(31,107,79,.2)}
.btn-light{border-color:#bfc7bd;background:var(--white);color:var(--green)}
.btn-light:hover{background:#e5ebe4;transform:translateY(-2px)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#39413c;transform:translateY(-2px)}
.btn:focus,a:focus,button:focus,input:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.page-hero{padding:46px 0 43px;background:linear-gradient(rgba(244,242,236,.92),rgba(244,242,236,.96)),repeating-linear-gradient(90deg,transparent 0 99px,rgba(31,107,79,.06) 100px),repeating-linear-gradient(0deg,transparent 0 48px,rgba(31,107,79,.045) 49px);border-bottom:1px solid var(--line)}
.breadcrumb{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px;margin-bottom:20px}
.breadcrumb span{color:#a2a59f}
.breadcrumb a:hover{color:var(--green)}
.hero-layout{display:grid;grid-template-columns:1fr 275px;gap:42px;align-items:end}
.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--green);font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:11px}
.eyebrow:before{content:"";width:24px;height:3px;background:var(--orange);display:inline-block}
.page-hero h1{font-size:clamp(34px,4.3vw,50px);line-height:1.18;letter-spacing:-2px;margin:0 0 15px}
.page-hero p{max-width:760px;margin:0;color:#596159;font-size:17px;line-height:1.8}
.hero-note{border-left:3px solid var(--orange);padding:12px 0 12px 18px;font-size:13px;color:#555e56}
.hero-note b{display:block;color:var(--ink);font-size:14px;margin-bottom:3px}
.section{padding:54px 0}
.filter-bar{margin-top:-1px;background:var(--white);border-bottom:1px solid var(--line)}
.filter-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.filter-group{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.filter-label{font-size:13px;color:var(--muted);font-weight:700;margin-right:4px}
.filter-pill{border:1px solid var(--line);padding:7px 13px;border-radius:99px;background:#fffdf8;color:#626962;font-size:13px;font-weight:700}
.filter-pill:hover,.filter-pill.active{border-color:var(--green);background:#e3eee6;color:var(--green)}
.sort-switch{display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff}
.sort-switch button{border:0;background:transparent;padding:8px 13px;color:var(--muted);font-size:13px}
.sort-switch button.active{background:var(--ink);color:#fff;font-weight:700}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;align-items:start}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.section-kicker{font-size:13px;color:var(--orange);font-weight:800;letter-spacing:1px}
.section-head h2{font-size:28px;line-height:1.35;letter-spacing:-1px;margin:3px 0 0}
.section-head p{font-size:14px;color:var(--muted);margin:0;white-space:nowrap}
.feature-story{display:grid;grid-template-columns:44% 56%;overflow:hidden;background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);margin-bottom:16px}
.story-visual{min-height:285px;position:relative;overflow:hidden;background:linear-gradient(145deg,#183f30 0%,#1f6b4f 50%,#c66b35 100%)}
.story-visual:before{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(255,255,255,.4);border-radius:50%;left:-78px;top:37px}
.story-visual:after{content:"更新 / 02";position:absolute;right:17px;top:17px;color:#fff;font-weight:800;letter-spacing:2px;font-size:12px;padding:5px 8px;border:1px solid rgba(255,255,255,.45)}
.field-lines{position:absolute;inset:23px;border:1px solid rgba(255,255,255,.28);transform:skewY(-10deg)}
.story-body{padding:27px 29px;display:flex;flex-direction:column;align-items:flex-start}
.tag{display:inline-block;font-size:12px;line-height:1;padding:7px 9px;border-radius:4px;background:#e4eee8;color:var(--green);font-weight:700}
.tag.hot{background:#fff0e7;color:#c35c20}
.story-body h3{font-size:25px;line-height:1.42;letter-spacing:-.5px;margin:15px 0 10px}
.story-body h3 a:hover{color:var(--green)}
.story-body p{font-size:14px;line-height:1.75;color:var(--muted);margin:0}
.card-meta{display:flex;flex-wrap:wrap;gap:15px;color:#8b918a;font-size:12px;margin-top:auto;padding-top:16px}
.news-stream{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.news-row{display:grid;grid-template-columns:70px minmax(0,1fr);gap:17px;padding:20px 22px;border-bottom:1px solid var(--line);transition:.2s}
.news-row:last-child{border-bottom:0}
.news-row:hover{background:#fbfcf8}
.news-row:hover h3{color:var(--green)}
.date-box{height:60px;border-radius:7px;background:#edf0e9;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800;line-height:1.05;color:var(--green)}
.date-box strong{font-size:22px;letter-spacing:-1px}
.date-box small{font-size:11px;color:#747c73;font-weight:700;margin-top:4px}
.news-copy{min-width:0}
.news-copy .tag{font-size:11px;padding:5px 7px;margin-bottom:7px}
.news-copy h3{font-size:18px;line-height:1.45;margin:0 0 5px}
.news-copy p{font-size:13px;color:var(--muted);line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.news-meta{display:flex;gap:14px;color:#9ba098;font-size:12px;margin-top:7px}
.sidebar{display:grid;gap:18px}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.side-card.dark{background:var(--ink);border-color:var(--ink);color:#fff;overflow:hidden;position:relative}
.side-card.dark:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(141,204,172,.27);border-radius:50%;right:-70px;bottom:-70px}
.side-title{font-size:19px;line-height:1.35;margin:0 0 15px}
.side-title small{display:block;font-size:12px;color:var(--orange);letter-spacing:1px;font-weight:800;margin-bottom:3px}
.hot-list{list-style:none;padding:0;margin:0}
.hot-list li{display:grid;grid-template-columns:27px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}
.hot-list li:last-child{border-bottom:0;padding-bottom:0}
.hot-number{color:var(--orange);font-size:16px;font-weight:800;line-height:1.55}
.hot-list a{font-size:14px;line-height:1.5;font-weight:700}
.hot-list a:hover{color:var(--green)}
.update-line{display:flex;gap:10px;padding:11px 0;border-top:1px solid var(--line);font-size:13px}
.update-line:first-of-type{border-top:0}
.update-line time{color:var(--orange);font-weight:700;white-space:nowrap}
.download-mini p{font-size:13px;color:#c3ccc4;line-height:1.7;margin:0 0 13px;position:relative;z-index:1}
.download-mini .mini-version{font-size:12px;color:#91bba1;position:relative;z-index:1}
.download-mini .btn{position:relative;z-index:1;width:100%;margin-top:17px}
.topic-strip{padding:50px 0;background:#e9e5da;border-top:1px solid #d4cebe;border-bottom:1px solid #d4cebe}
.topic-grid{display:grid;grid-template-columns:1.2fr repeat(3,.8fr);gap:15px}
.topic-card{min-height:183px;border-radius:12px;padding:20px;position:relative;overflow:hidden;color:#fff;background:#315d4c;display:flex;flex-direction:column;justify-content:flex-end}
.topic-card:nth-child(2){background:#4d6755}.topic-card:nth-child(3){background:#776750}.topic-card:nth-child(4){background:#9a633e}
.topic-card:before{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(255,255,255,.32);border-radius:50%;top:-70px;right:-40px}
.topic-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.topic-card .topic-no{position:absolute;left:20px;top:15px;color:#dbeade;font-size:12px;font-weight:800;letter-spacing:1px}
.topic-card h3{font-size:18px;line-height:1.4;margin:0;position:relative}
.topic-card p{font-size:12px;line-height:1.6;margin:6px 0 0;color:rgba(255,255,255,.8);position:relative}
.pager{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:30px}
.pager a,.pager span{min-width:39px;height:39px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;background:var(--white);font-size:14px;font-weight:700}
.pager a:hover,.pager .current{background:var(--green);border-color:var(--green);color:#fff}
.cta-band{background:var(--green);color:#fff;padding:37px 0}
.cta-wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}
.cta-wrap h2{font-size:25px;line-height:1.35;margin:0}
.cta-wrap p{margin:4px 0 0;color:#d7ebe0;font-size:14px}
.cta-band .btn{background:#fffdf8;color:var(--green)}
.cta-band .btn:hover{background:#e8f0e9;transform:translateY(-2px)}
.site-footer{background:var(--ink);color:#d2d8d2;padding:53px 0 0}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:38px}
.footer-brand .logo{color:#fff;margin-bottom:14px}
.footer-brand p{font-size:13px;line-height:1.75;color:#abb5ac;max-width:310px;margin:0}
.footer-col h3{font-size:14px;color:#fff;margin:0 0 13px}
.footer-col a{display:block;font-size:13px;color:#aeb7ae;padding:3px 0}
.footer-col a:hover{color:#9bd0ae}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:39px;padding:17px 0 20px;display:flex;justify-content:space-between;gap:20px;color:#89938a;font-size:12px}
.mobile-download{display:none}
@media(max-width:1100px){
 .nav-wrap{gap:22px}.main-nav{gap:15px}.main-nav a{font-size:13px}
 .content-grid{grid-template-columns:minmax(0,1fr) 290px}.hero-layout{grid-template-columns:1fr 240px}
}
@media(max-width:900px){
 .menu-toggle{display:block;margin-left:auto}.nav-wrap{gap:16px}.main-nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--ink);padding:9px 20px 17px;border-top:1px solid rgba(255,255,255,.1);flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:11px 0}.main-nav a:after{bottom:5px}.nav-download{display:none}
 .hero-layout{grid-template-columns:1fr}.hero-note{max-width:570px}
 .content-grid{grid-template-columns:1fr}.sidebar{grid-template-columns:repeat(2,1fr)}.sidebar .dark{grid-column:span 2}
 .topic-grid{grid-template-columns:repeat(2,1fr)}.topic-card:first-child{grid-column:span 2}
 .footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-brand{grid-column:span 3}
}
@media(max-width:767px){
 body{font-size:15px;padding-bottom:68px}.container{width:min(100% - 32px,var(--container))}
 .topline .container{justify-content:center}.topline span:last-child{display:none}.site-header{height:64px}.main-nav{top:64px}.logo{font-size:17px}.logo-mark{width:27px;height:27px;flex-basis:27px}
 .page-hero{padding:32px 0}.page-hero h1{font-size:34px;letter-spacing:-1.3px}.page-hero p{font-size:15px}.breadcrumb{margin-bottom:15px}
 .filter-inner{padding:13px 0;align-items:flex-start;flex-direction:column}.sort-switch{width:100%}.sort-switch button{flex:1}
 .section{padding:39px 0}.section-head{align-items:flex-start;flex-direction:column;margin-bottom:17px}.section-head h2{font-size:25px}.section-head p{white-space:normal}
 .feature-story{grid-template-columns:1fr}.story-visual{min-height:190px}.story-body{padding:21px}.story-body h3{font-size:21px}
 .news-row{grid-template-columns:54px minmax(0,1fr);gap:12px;padding:17px 15px}.date-box{height:52px}.date-box strong{font-size:18px}.news-copy h3{font-size:16px}.news-copy p{white-space:normal;-webkit-line-clamp:2}
 .sidebar{grid-template-columns:1fr}.sidebar .dark{grid-column:auto}.side-card{padding:19px}
 .topic-strip{padding:36px 0}.topic-grid{display:flex;overflow-x:auto;padding-bottom:5px;scroll-snap-type:x mandatory}.topic-card,.topic-card:first-child{min-width:245px;min-height:168px;scroll-snap-align:start}
 .cta-wrap{align-items:flex-start;flex-direction:column}.cta-wrap h2{font-size:22px}.cta-band .btn{width:100%}
 .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:span 2}.footer-bottom{flex-direction:column;gap:4px;margin-top:31px}
 .mobile-download{position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--ink);display:flex;align-items:center;gap:10px;padding:8px 15px;z-index:60;color:#fff;box-shadow:0 -6px 20px rgba(0,0,0,.16)}.mobile-download .logo-mark{width:32px;height:32px;flex-basis:32px}.mobile-download strong{font-size:13px;line-height:1.25;display:block}.mobile-download small{font-size:11px;color:#b8c5ba;display:block}.mobile-download .btn{min-height:40px;padding:0 13px;margin-left:auto;font-size:13px}
}
@media(max-width:520px){
 .topline{font-size:11px}.page-hero h1{font-size:30px}.filter-group{gap:7px}.filter-pill{padding:6px 10px;font-size:12px}.card-meta{gap:9px}.topic-card{min-width:225px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}
}

/* roulang page: category2 */
:root{
 --green:#1f6b4f;--green-dark:#15513b;--ink:#202522;--muted:#6f766f;
 --paper:#f4f2ec;--sand:#ded4c2;--orange:#e87b36;--white:#fffdf8;
 --line:#d9d6cc;--radius:12px;--shadow:0 12px 30px rgba(32,37,34,.08);
 --container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.topline{height:34px;background:#17201b;color:#bfc8c0;font-size:12px}
.topline .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;overflow:hidden}
.topline strong{color:#a4d2b4;font-weight:700}
.site-header{height:72px;background:var(--ink);color:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:100%;display:flex;align-items:center;gap:35px}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}
.logo-mark{width:30px;height:30px;border:2px solid #8dccac;border-radius:7px;position:relative;display:inline-block;flex:none}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#8dccac}
.logo-mark:before{width:15px;height:2px;left:5px;top:13px;transform:rotate(-28deg)}
.logo-mark:after{width:5px;height:5px;border-radius:50%;right:4px;top:6px}
.main-nav{display:flex;align-items:center;gap:22px;flex:1}
.main-nav a{font-size:14px;color:#bfc8c0;padding:25px 0;position:relative;white-space:nowrap}
.main-nav a:after{content:"";height:3px;background:var(--green);position:absolute;left:0;right:100%;bottom:15px;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:#fff;font-weight:700}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{background:var(--green);border-radius:7px;padding:10px 17px!important;color:#fff!important;font-weight:700!important}
.nav-download:after{display:none!important}
.menu-toggle{display:none;background:none;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:6px 10px;font-size:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-size:15px;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 15px rgba(31,107,79,.2)}
.btn-outline{border-color:#b7c1b8;background:var(--white);color:var(--green)}
.btn-outline:hover{background:#e5ebe4;transform:translateY(-2px)}
.btn:focus,a:focus,button:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.breadcrumb-bar{padding:22px 0 0}
.breadcrumb{margin:0;padding:0;background:none;font-size:13px;color:var(--muted)}
.breadcrumb-item+.breadcrumb-item:before{color:#9ba097}
.breadcrumb-item a:hover{color:var(--green)}
.category-hero{padding:21px 0 46px;position:relative;overflow:hidden}
.category-hero:before{content:"";position:absolute;width:420px;height:420px;right:-110px;top:-120px;border:1px solid rgba(31,107,79,.13);border-radius:50%;box-shadow:0 0 0 42px rgba(31,107,79,.035),0 0 0 84px rgba(31,107,79,.025)}
.category-hero-inner{position:relative;display:grid;grid-template-columns:1fr 290px;gap:34px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:30px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:10px}
.eyebrow:before{content:"";display:inline-block;width:24px;height:3px;background:var(--orange)}
h1{font-size:clamp(35px,4.3vw,50px);line-height:1.2;letter-spacing:-2px;margin:0 0 15px;font-weight:850}
.hero-copy{max-width:760px;color:#596159;font-size:17px;line-height:1.8;margin:0}
.hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.stat-box{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:13px 14px;box-shadow:0 5px 14px rgba(32,37,34,.04)}
.stat-box strong{display:block;font-size:22px;line-height:1.2;color:var(--green)}
.stat-box span{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.filter-panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:-18px;position:relative;z-index:2;box-shadow:0 8px 20px rgba(32,37,34,.04)}
.filter-group{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.filter-label{font-size:13px;font-weight:800;color:var(--muted);margin-right:5px}
.filter-chip{border:1px solid var(--line);background:#faf9f4;border-radius:99px;padding:7px 13px;color:#596159;font-size:13px;font-weight:700;transition:.2s}
.filter-chip:hover,.filter-chip.active{background:var(--green);border-color:var(--green);color:#fff}
.filter-note{font-size:13px;color:var(--muted);white-space:nowrap}
.main-section{padding:44px 0 72px}
.content-layout{display:grid;grid-template-columns:minmax(0,8fr) minmax(280px,4fr);gap:28px;align-items:start}
.section-title-row{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}
.section-title-row h2{font-size:27px;letter-spacing:-1px;line-height:1.35;margin:0}
.section-title-row p{font-size:13px;color:var(--muted);margin:0}
.guide-feature{display:grid;grid-template-columns:42% 58%;background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);transition:.25s;margin-bottom:16px}
.guide-feature:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(32,37,34,.12)}
.guide-cover{min-height:280px;background:linear-gradient(145deg,#1d4e3c 0%,#2f7959 58%,#d97e40 58%,#e8b267 100%);position:relative;overflow:hidden;padding:22px}
.guide-cover:before{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(255,255,255,.42);border-radius:50%;left:-74px;bottom:-82px}
.guide-cover:after{content:"操作 / GUIDE";color:rgba(255,255,255,.9);font-size:12px;letter-spacing:1.5px;position:absolute;right:17px;top:18px;writing-mode:vertical-rl}
.cover-board{position:absolute;left:24px;right:42px;bottom:26px;border:1px solid rgba(255,255,255,.35);padding:12px;color:#fff;font-size:13px;font-weight:700;line-height:1.5}
.feature-content{padding:27px 29px}
.badge-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tag{display:inline-block;font-size:12px;line-height:1;padding:7px 9px;border-radius:4px;background:#e4eee8;color:var(--green);font-weight:800}
.tag.orange{background:#fff0e7;color:#c35c20}
.feature-content h3{font-size:24px;line-height:1.42;letter-spacing:-.6px;margin:14px 0 10px}
.feature-content h3 a:hover,.guide-item h3 a:hover{color:var(--green)}
.feature-content p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}
.meta-line{display:flex;gap:16px;flex-wrap:wrap;color:#8a9088;font-size:12px;margin-top:17px}
.guide-list{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:0 21px}
.guide-item{display:grid;grid-template-columns:58px 1fr auto;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.guide-item:last-child{border-bottom:0}
.item-no{color:var(--orange);font-size:13px;font-weight:900;line-height:1;text-align:center;border-right:1px solid var(--line);padding:11px 8px 11px 0}
.guide-item h3{font-size:16px;line-height:1.48;margin:0 0 4px;font-weight:800}
.guide-item p{margin:0;color:var(--muted);font-size:13px;line-height:1.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}
.item-meta{font-size:12px;color:#899087;white-space:nowrap;text-align:right}
.item-meta b{display:block;color:var(--green);font-size:12px;margin-bottom:3px}
.pagination-wrap{display:flex;justify-content:center;gap:7px;margin-top:28px}
.page-btn{width:39px;height:39px;border:1px solid var(--line);background:var(--white);border-radius:6px;display:grid;place-items:center;color:#5f675f;font-size:14px;font-weight:700;transition:.2s}
.page-btn:hover,.page-btn.active{background:var(--green);border-color:var(--green);color:#fff;transform:translateY(-1px)}
.sidebar{display:grid;gap:18px}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:21px;box-shadow:0 6px 18px rgba(32,37,34,.04)}
.side-card h2{font-size:19px;line-height:1.35;margin:0 0 15px;letter-spacing:-.4px}
.start-steps{margin:0;padding:0;list-style:none;counter-reset:step}
.start-steps li{position:relative;counter-increment:step;padding:0 0 18px 44px;font-size:14px;line-height:1.65;color:#566056}
.start-steps li:last-child{padding-bottom:0}
.start-steps li:before{content:counter(step);position:absolute;left:0;top:0;width:27px;height:27px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.start-steps li:not(:last-child):after{content:"";position:absolute;width:1px;background:#c8d7cd;top:30px;bottom:3px;left:13px}
.start-steps strong{display:block;color:var(--ink);font-size:14px}
.question-link{display:flex;gap:10px;border-top:1px solid var(--line);padding:13px 0;font-size:14px;font-weight:700;line-height:1.5;transition:.2s}
.question-link:first-of-type{border-top:0;padding-top:0}
.question-link:last-child{padding-bottom:0}
.question-link:before{content:"问";background:#f1e8da;color:#b96028;width:23px;height:23px;border-radius:4px;display:grid;place-items:center;font-size:11px;flex:none}
.question-link:hover{color:var(--green);padding-left:3px}
.version-card{background:var(--ink);color:#fff;border-color:var(--ink);position:relative;overflow:hidden}
.version-card:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(141,204,172,.22);border-radius:50%;right:-65px;bottom:-65px}
.version-card h2{color:#fff;position:relative;z-index:1}
.version-card p{color:#bec7bf;font-size:13px;line-height:1.7;position:relative;z-index:1;margin-bottom:15px}
.version-data{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.15);padding-top:12px;font-size:12px;position:relative;z-index:1}
.version-data strong{color:#a6dbb8}
.path-section{background:var(--sand);padding:68px 0}
.path-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.path-heading h2{font-size:31px;line-height:1.35;letter-spacing:-1px;margin:8px 0 13px}
.path-heading p{color:#5d655d;margin:0 0 21px}
.path-card{background:var(--white);border:1px solid rgba(112,104,91,.24);border-radius:16px;padding:12px}
.path-row{display:grid;grid-template-columns:47px 1fr auto;gap:13px;align-items:center;padding:17px 10px;border-bottom:1px solid var(--line)}
.path-row:last-child{border-bottom:0}
.path-num{width:33px;height:33px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;color:var(--green);font-size:13px;font-weight:900}
.path-row h3{margin:0;font-size:16px;line-height:1.4}
.path-row p{margin:2px 0 0;font-size:13px;color:var(--muted);line-height:1.55}
.path-row span{font-size:12px;color:var(--orange);font-weight:800}
.faq-section{padding:68px 0}
.faq-wrap{max-width:850px;margin:auto}
.faq-head{text-align:center;margin-bottom:25px}
.faq-head h2{font-size:31px;letter-spacing:-1px;margin:6px 0}
.faq-head p{font-size:14px;color:var(--muted);margin:0}
.faq-item{background:var(--white);border:1px solid var(--line);border-radius:9px;margin-bottom:10px;overflow:hidden}
.faq-question{width:100%;background:none;border:0;text-align:left;padding:17px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--ink);font-weight:800;font-size:16px}
.faq-question span:last-child{width:24px;height:24px;border-radius:50%;background:#e4eee8;color:var(--green);display:grid;place-items:center;flex:none;transition:.2s}
.faq-question[aria-expanded="true"] span:last-child{background:var(--green);color:#fff;transform:rotate(45deg)}
.faq-answer{display:none;padding:0 20px 18px;color:#5f675f;font-size:14px;line-height:1.8}
.faq-answer.show{display:block}
.faq-answer ul{margin:0;padding-left:19px}
.cta-band{background:var(--ink);padding:42px 0;color:#fff}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.cta-inner h2{font-size:28px;line-height:1.35;margin:0 0 5px}
.cta-inner p{color:#bec7bf;margin:0;font-size:14px}
.cta-actions{display:flex;gap:10px;flex-wrap:wrap;flex:none}
.cta-band .btn-outline{background:transparent;border-color:#718279;color:#fff}
.cta-band .btn-outline:hover{background:#303b35}
.site-footer{background:var(--ink);color:#d2d8d3;padding:48px 0 0}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:35px}
.footer-brand .logo{color:#fff;margin-bottom:13px}
.footer-brand p{font-size:13px;line-height:1.75;color:#aeb8af;max-width:290px;margin:0}
.footer-col h3{font-size:14px;color:#fff;margin:3px 0 12px;font-weight:800}
.footer-col a{display:block;color:#aeb8af;font-size:13px;margin:7px 0;transition:.2s}
.footer-col a:hover{color:#9bd3ae;padding-left:3px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding:17px 0;display:flex;justify-content:space-between;gap:15px;color:#98a39a;font-size:12px}
.mobile-download{display:none}
@media(max-width:1024px){
 .nav-wrap{gap:20px}.main-nav{gap:15px}.main-nav a{font-size:13px}
 .content-layout{grid-template-columns:minmax(0,1fr) 285px}.category-hero-inner{grid-template-columns:1fr 260px}
}
@media(max-width:820px){
 .main-nav{position:absolute;left:0;right:0;top:72px;background:var(--ink);display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 16px;border-top:1px solid rgba(255,255,255,.1)}
 .main-nav.open{display:flex}.main-nav a{padding:11px 0}.main-nav a:after{bottom:5px}
 .menu-toggle{display:block;margin-left:auto}.nav-download{display:none}
 .category-hero-inner,.content-layout,.path-grid{grid-template-columns:1fr}
 .hero-stats{max-width:420px}.sidebar{grid-template-columns:repeat(2,1fr)}.sidebar .version-card{grid-column:span 2}
 .guide-item p{max-width:100%}
}
@media(max-width:620px){
 body{font-size:15px}.container{width:min(var(--container),calc(100% - 32px))}
 .topline .container span:last-child{display:none}.site-header{height:64px}.main-nav{top:64px}
 .logo{font-size:17px}.logo-mark{width:27px;height:27px}
 .category-hero{padding:16px 0 34px}.category-hero-inner{padding-bottom:23px;gap:20px}
 h1{font-size:34px;letter-spacing:-1.5px}.hero-copy{font-size:15px}
 .filter-panel{margin-top:-12px;padding:14px;display:block}.filter-note{display:block;margin-top:10px}
 .filter-group{gap:7px}.filter-label{width:100%}.filter-chip{padding:6px 11px}
 .main-section,.faq-section{padding:42px 0}.section-title-row h2{font-size:24px}.section-title-row p{display:none}
 .guide-feature{grid-template-columns:1fr}.guide-cover{min-height:185px}.feature-content{padding:21px}.feature-content h3{font-size:21px}
 .guide-list{padding:0 15px}.guide-item{grid-template-columns:40px 1fr;gap:10px;padding:17px 0}.item-no{font-size:12px}.item-meta{grid-column:2;display:flex;gap:8px;text-align:left}.item-meta b{margin:0}
 .sidebar{grid-template-columns:1fr}.sidebar .version-card{grid-column:auto}
 .path-section{padding:48px 0}.path-heading h2,.faq-head h2{font-size:26px}.path-grid{gap:25px}.path-row{grid-template-columns:38px 1fr}.path-row span{grid-column:2}
 .cta-inner{display:block}.cta-inner h2{font-size:24px}.cta-actions{margin-top:18px}.cta-actions .btn{flex:1}
 .footer-grid{grid-template-columns:1fr 1fr;gap:27px}.footer-brand{grid-column:span 2}.footer-bottom{display:block;line-height:1.8}.footer-bottom span{display:block}
 .mobile-download{position:fixed;display:flex;align-items:center;gap:9px;left:10px;right:10px;bottom:10px;background:var(--ink);color:#fff;padding:9px 10px;border-radius:10px;z-index:40;box-shadow:0 8px 24px rgba(0,0,0,.28)}.mobile-download .logo-mark{width:29px;height:29px}.mobile-download .m-copy{font-size:11px;line-height:1.35;flex:1}.mobile-download .m-copy strong{font-size:13px;display:block}.mobile-download .btn{min-height:38px;padding:0 12px;font-size:13px}
}

/* roulang page: category3 */
:root{
 --green:#1f6b4f;--green-dark:#15513b;--ink:#202522;--muted:#6f766f;
 --paper:#f4f2ec;--sand:#ded4c2;--orange:#e87b36;--white:#fffdf8;
 --line:#d9d6cc;--radius:12px;--shadow:0 12px 30px rgba(32,37,34,.08);
 --container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.topline{height:34px;background:#173d2e;color:#c8d7cd;font-size:12px}
.topline .container{height:100%;display:flex;align-items:center;justify-content:space-between}
.site-header{height:72px;background:var(--ink);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:100%;display:flex;align-items:center;gap:35px}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}
.logo-mark{width:30px;height:30px;border:2px solid #8dccac;border-radius:7px;position:relative;display:inline-block}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#8dccac}
.logo-mark:before{width:15px;height:2px;left:5px;top:13px;transform:rotate(-28deg)}
.logo-mark:after{width:5px;height:5px;border-radius:50%;right:4px;top:6px}
.main-nav{display:flex;align-items:center;gap:22px;flex:1}
.main-nav a{font-size:14px;color:#bfc8c0;padding:25px 0;position:relative;white-space:nowrap}
.main-nav a:after{content:"";height:3px;background:var(--green);position:absolute;left:0;right:100%;bottom:15px;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:#fff;font-weight:700}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{background:var(--green);border-radius:7px;padding:10px 17px!important;color:#fff!important;font-weight:700!important}
.nav-download:after{display:none}
.menu-toggle{display:none;background:none;border:1px solid #68716b;color:#fff;border-radius:6px;padding:5px 9px}
.breadcrumb{padding:30px 0 12px;color:var(--muted);font-size:13px}
.breadcrumb a{color:var(--green)}
.page-hero{padding:18px 0 54px;background:linear-gradient(rgba(244,242,236,.94),rgba(244,242,236,.94)),repeating-linear-gradient(0deg,transparent 0 39px,rgba(31,107,79,.08) 40px),repeating-linear-gradient(90deg,transparent 0 79px,rgba(31,107,79,.06) 80px)}
.page-hero-grid{display:grid;grid-template-columns:1fr 330px;gap:45px;align-items:end}
.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--green);font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:13px}
.eyebrow:before{content:"";width:24px;height:3px;background:var(--orange);display:inline-block}
.page-hero h1{font-size:clamp(36px,5vw,56px);line-height:1.18;letter-spacing:-2px;margin:0 0 17px}
.page-hero h1 em{font-style:normal;color:var(--green)}
.hero-intro{font-size:17px;color:#525a53;max-width:700px;line-height:1.8}
.hero-note{border-left:3px solid var(--orange);padding:16px 0 16px 20px;color:#596159;font-size:14px}
.hero-note strong{display:block;color:var(--ink);font-size:22px;margin-bottom:4px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-size:15px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 15px rgba(31,107,79,.2)}
.btn-light{border-color:#bfc7bd;background:transparent;color:var(--green)}
.btn-light:hover{background:#e5ebe4;transform:translateY(-2px)}
.btn:focus,a:focus,input:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.filter-bar{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:-28px;position:relative;z-index:2;box-shadow:var(--shadow)}
.filter-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.filter-label{font-size:13px;color:var(--muted);font-weight:700;margin-right:5px}
.filter-chip{border:1px solid var(--line);background:transparent;color:#596159;border-radius:5px;padding:7px 13px;font-size:13px;transition:.2s}
.filter-chip:hover,.filter-chip.active{background:var(--green);border-color:var(--green);color:#fff}
.section{padding:68px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}
.section-kicker{font-size:13px;color:var(--orange);font-weight:800;letter-spacing:1px}
.section h2{font-size:32px;line-height:1.3;margin:4px 0 0;letter-spacing:-1px}
.section-head p{color:var(--muted);font-size:14px;margin:0}
.content-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:28px}
.event-flow{position:relative}
.event-flow:before{content:"";position:absolute;left:82px;top:15px;bottom:15px;width:1px;background:#c5cfc6}
.event-card{position:relative;display:grid;grid-template-columns:66px 1fr;gap:31px;padding:0 0 27px;margin-bottom:27px}
.event-date{z-index:1;background:var(--paper);text-align:center;color:var(--green);font-weight:800;line-height:1.15;padding:5px 0}
.event-date b{display:block;font-size:27px}
.event-date span{font-size:12px;color:var(--muted)}
.event-body{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;transition:.2s}
.event-body:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#b5c8bb}
.event-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.tag{display:inline-block;font-size:12px;line-height:1;padding:7px 9px;border-radius:4px;background:#e4eee8;color:var(--green);font-weight:700;margin-right:8px}
.tag.hot{background:#fff0e7;color:#c35c20}
.status{font-size:12px;color:var(--green);font-weight:700}
.status.pending{color:#b86a32}
.event-body h3{font-size:20px;line-height:1.45;margin:13px 0 7px}
.event-body p{color:var(--muted);font-size:14px;margin:0}
.event-meta{display:flex;gap:20px;flex-wrap:wrap;color:#92978f;font-size:12px;margin-top:15px}
.sidebar{display:flex;flex-direction:column;gap:20px}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.side-card h3{font-size:19px;margin:0 0 16px}
.side-card p{font-size:14px;color:var(--muted);margin:0 0 15px}
.topic-list{list-style:none;margin:0;padding:0}
.topic-list li{border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}
.topic-list li:last-child{border-bottom:0}
.topic-list a:hover{color:var(--green)}
.rule-box{background:var(--ink);color:#fff;border-radius:var(--radius);padding:23px}
.rule-box h3{margin:0 0 10px;font-size:19px}
.rule-box p{color:#c2cbc4;font-size:13px;margin:0 0 17px}
.rule-box .btn-light{color:#fff;border-color:#718178}
.subscribe{background:#e5ebe4}
.subscribe input{width:100%;height:44px;border:1px solid #bec9bf;border-radius:6px;background:#fffdf8;padding:0 12px;margin-bottom:10px;color:var(--ink)}
.board-section{background:var(--sand);padding:66px 0}
.board-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.timeline-board,.update-board{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:27px}
.timeline-board h2,.update-board h2{font-size:24px;margin:0 0 20px}
.timeline-row{display:grid;grid-template-columns:88px 1fr;gap:18px;padding:15px 0;border-top:1px solid var(--line)}
.timeline-row time{font-size:13px;color:var(--orange);font-weight:800}
.timeline-row h3{font-size:16px;margin:0 0 3px}
.timeline-row p{font-size:13px;color:var(--muted);margin:0}
.update-item{border-top:1px solid var(--line);padding:16px 0}
.update-title{display:flex;justify-content:space-between;gap:12px}
.update-title strong{color:var(--green);font-size:17px}
.update-title time{color:var(--muted);font-size:12px}
.update-item ul{margin:8px 0 0 18px;padding:0;color:var(--muted);font-size:13px}
.cta{padding:64px 0}
.cta-box{background:var(--green);border-radius:16px;color:#fff;padding:36px 42px;display:flex;justify-content:space-between;align-items:center;gap:25px;position:relative;overflow:hidden}
.cta-box:after{content:"";position:absolute;right:30px;bottom:-70px;width:220px;height:220px;border:1px solid rgba(255,255,255,.2);border-radius:50%}
.cta-box h2{font-size:28px;margin:0 0 8px}
.cta-box p{color:#d8e6dc;margin:0;font-size:14px}
.cta-box .btn{background:#fff;color:var(--green);position:relative;z-index:1}
.site-footer{background:var(--ink);color:#fff;padding:48px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}
.footer-brand .logo{margin-bottom:14px}
.footer-brand p{color:#aeb9b1;font-size:13px;max-width:300px}
.footer-col h3{font-size:14px;margin:0 0 12px;color:#fff}
.footer-col a{display:block;color:#aeb9b1;font-size:13px;margin:7px 0;transition:.2s}
.footer-col a:hover{color:#8dccac;transform:translateX(2px)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#8f9b92;font-size:12px}
.mobile-download{display:none}
@media(max-width:1023px){
 .nav-wrap{gap:18px}.main-nav{gap:14px}.main-nav a{font-size:13px}
 .page-hero-grid{grid-template-columns:1fr}.hero-note{max-width:420px}
 .content-layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
 .container{width:min(100% - 32px,var(--container))}
 .topline .container span:last-child{display:none}
 .site-header{height:64px}.nav-wrap{justify-content:space-between}
 .main-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--ink);padding:8px 20px 18px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #38413b}
 .main-nav.open{display:flex}.main-nav a{padding:12px 0}.main-nav a:after{bottom:5px}
 .nav-download{margin-top:5px;text-align:center}
 .menu-toggle{display:block}
 .breadcrumb{padding-top:22px}
 .page-hero{padding-bottom:38px}.page-hero h1{font-size:38px;letter-spacing:-1.4px}
 .hero-intro{font-size:16px}.filter-bar{margin-top:-18px;display:block}.filter-group{margin-bottom:10px}.filter-group:last-child{margin-bottom:0}
 .section{padding:48px 0}.section-head{display:block}.section-head p{margin-top:8px}.section h2{font-size:27px}
 .event-flow:before{left:47px}.event-card{grid-template-columns:38px 1fr;gap:18px}
 .event-date b{font-size:22px}.event-body{padding:18px}.event-body h3{font-size:18px}
 .sidebar{display:flex}.board-grid{grid-template-columns:1fr}.timeline-board,.update-board{padding:21px}
 .cta-box{display:block;padding:28px 24px}.cta-box h2{font-size:24px}.cta-box .btn{margin-top:20px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}
 .footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}
 .mobile-download{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--ink);color:#fff;padding:9px 13px;align-items:center;gap:10px;box-shadow:0 -5px 18px rgba(0,0,0,.15)}
 .mobile-download .mini-mark{width:26px;height:26px;border:2px solid #8dccac;border-radius:6px}
 .mobile-download strong{font-size:13px;display:block}.mobile-download small{color:#aeb9b1;font-size:11px}
 .mobile-download .btn{margin-left:auto;min-height:39px;padding:0 13px;font-size:13px}
}
@media(max-width:520px){
 .filter-bar{padding:15px}.filter-label{display:block;width:100%;margin-bottom:4px}
 .timeline-row{grid-template-columns:70px 1fr;gap:10px}.timeline-row h3{font-size:15px}
 .footer-grid{grid-template-columns:1fr 1fr}.footer-col h3{font-size:13px}
}

/* roulang page: category5 */
:root{
 --green:#1f6b4f;--green-dark:#15513b;--ink:#202522;--muted:#6f766f;
 --paper:#f4f2ec;--sand:#ded4c2;--orange:#e87b36;--white:#fffdf8;
 --line:#d9d6cc;--radius:12px;--shadow:0 12px 30px rgba(32,37,34,.08);
 --container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.topline{height:34px;background:#173e30;color:#c8d8ce;font-size:12px}
.topline .container{height:100%;display:flex;align-items:center;justify-content:space-between}
.site-header{height:72px;background:var(--ink);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:100%;display:flex;align-items:center;gap:35px}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}
.logo-mark{width:30px;height:30px;border:2px solid #8dccac;border-radius:7px;position:relative;display:inline-block}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#8dccac}
.logo-mark:before{width:15px;height:2px;left:5px;top:13px;transform:rotate(-28deg)}
.logo-mark:after{width:5px;height:5px;border-radius:50%;right:4px;top:6px}
.main-nav{display:flex;align-items:center;gap:22px;flex:1}
.main-nav a{font-size:14px;color:#bfc8c0;padding:25px 0;position:relative;white-space:nowrap}
.main-nav a:after{content:"";height:3px;background:var(--green);position:absolute;left:0;right:100%;bottom:15px;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:#fff;font-weight:700}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{background:var(--green);border-radius:7px;padding:10px 17px!important;color:#fff!important;font-weight:700!important}
.nav-download:after{display:none}
.breadcrumb{padding:30px 0 12px;color:var(--muted);font-size:13px}
.breadcrumb a{color:var(--green);font-weight:700}
.page-hero{padding:18px 0 58px}
.page-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:30px;align-items:end}
.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--green);font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:12px}
.eyebrow:before{content:"";width:24px;height:3px;background:var(--orange);display:inline-block}
h1{font-size:clamp(36px,5vw,56px);line-height:1.2;letter-spacing:-2px;margin:0 0 18px}
.page-intro{font-size:18px;color:#525a53;max-width:700px;line-height:1.8;margin:0}
.progress-box{background:var(--ink);color:#fff;border-radius:16px;padding:24px;box-shadow:var(--shadow)}
.progress-box small{color:#afbbb2;font-size:12px}
.progress-title{display:flex;justify-content:space-between;align-items:center;margin:7px 0 14px;font-weight:700}
.progress-bar{height:8px;background:#4c5b51;border-radius:8px;overflow:hidden}
.progress-bar span{display:block;width:33%;height:100%;background:var(--orange)}
.progress-note{color:#c3cec5;font-size:13px;margin:14px 0 0}
.section{padding:68px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}
.section-kicker{font-size:13px;color:var(--orange);font-weight:800;letter-spacing:1px}
h2{font-size:32px;line-height:1.3;margin:4px 0 0;letter-spacing:-1px}
.section-head p{color:var(--muted);font-size:14px;margin:0}
.path-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.path-nav a{border:1px solid var(--line);background:var(--white);border-radius:7px;padding:9px 15px;color:var(--green);font-size:14px;font-weight:700;transition:.2s}
.path-nav a:hover,.path-nav a.active{background:var(--green);border-color:var(--green);color:#fff}
.guide-layout{display:grid;grid-template-columns:1.5fr .75fr;gap:28px;align-items:start}
.guide-list{display:flex;flex-direction:column;gap:14px}
.guide-item{display:grid;grid-template-columns:76px 1fr auto;gap:20px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;transition:.2s}
.guide-item:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#abc4b4}
.step-number{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#e5eee8;color:var(--green);font-size:20px;font-weight:800}
.guide-item h3{font-size:19px;line-height:1.45;margin:0 0 5px}
.guide-item p{font-size:14px;color:var(--muted);margin:0;line-height:1.7}
.guide-item .read-time{font-size:12px;color:var(--muted);white-space:nowrap}
.side-stack{display:flex;flex-direction:column;gap:16px}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:23px}
.side-card.dark{background:var(--ink);color:#fff;border-color:var(--ink)}
.side-card h3{font-size:19px;margin:0 0 14px}
.side-card p{font-size:14px;color:var(--muted);margin:0 0 16px}
.side-card.dark p{color:#c3cec5}
.side-links{list-style:none;padding:0;margin:0}
.side-links li{border-top:1px solid var(--line);padding:10px 0;font-size:14px}
.side-card.dark .side-links li{border-color:rgba(255,255,255,.14)}
.side-links a{color:var(--green);font-weight:700}
.side-card.dark .side-links a{color:#cfe7d8}
.mini-step{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.13)}
.mini-step:last-child{border-bottom:0}
.mini-step b{color:var(--orange);font-size:18px;line-height:1.4}
.mini-step span{font-size:14px;color:#d8e0da}
.notice-band{background:var(--sand);padding:58px 0}
.notice-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center}
.notice-grid h2{max-width:410px}
.notice-grid p{color:#596057;margin:15px 0 0}
.check-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0;padding:0;list-style:none}
.check-list li{background:rgba(255,253,248,.72);border:1px solid rgba(32,37,34,.1);border-radius:9px;padding:14px 16px;font-size:14px}
.check-list li:before{content:"✓";color:var(--green);font-weight:800;margin-right:8px}
.faq-section{padding:70px 0}
.faq-wrap{max-width:850px;margin:0 auto}
.faq-item{background:var(--white);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;overflow:hidden}
.faq-question{width:100%;border:0;background:transparent;padding:18px 22px;text-align:left;display:flex;justify-content:space-between;align-items:center;font-weight:700;color:var(--ink)}
.faq-question span:last-child{color:var(--green);font-size:23px;line-height:1;transition:.2s}
.faq-answer{padding:0 22px 20px;color:var(--muted);font-size:14px;line-height:1.8}
.faq-item:not(.open) .faq-answer{display:none}
.faq-item:not(.open) .faq-question span:last-child{transform:rotate(45deg)}
.cta{padding:58px 0}
.cta-box{background:var(--green);color:#fff;border-radius:16px;padding:38px 42px;display:flex;justify-content:space-between;align-items:center;gap:25px;position:relative;overflow:hidden}
.cta-box:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-70px;top:-90px}
.cta-box h2{font-size:28px;margin:0 0 8px;position:relative;z-index:1}
.cta-box p{color:#d6e7dc;margin:0;position:relative;z-index:1;font-size:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-size:15px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 15px rgba(31,107,79,.2)}
.btn-light{border-color:#bfc7bd;background:transparent;color:var(--green)}
.btn-light:hover{background:#e5ebe4;transform:translateY(-2px)}
.cta-box .btn-light{background:#fffdf8;border-color:#fffdf8}
.btn:focus,a:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.site-footer{background:var(--ink);color:#fff;padding:52px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}
.footer-brand .logo{margin-bottom:15px}
.footer-brand p{color:#aeb8b0;max-width:320px;font-size:14px;line-height:1.8;margin:0}
.footer-col{display:flex;flex-direction:column;gap:8px}
.footer-col h3{font-size:15px;margin:0 0 7px;color:#fff}
.footer-col a{font-size:14px;color:#aeb8b0;transition:.2s}
.footer-col a:hover{color:#8dccac;padding-left:3px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#8f9b92;font-size:12px}
.mobile-download{display:none}
@media(max-width:1023px){
 .nav-wrap{gap:18px}.main-nav{gap:14px}.main-nav a{font-size:13px}
 .page-hero-grid,.guide-layout,.notice-grid{grid-template-columns:1fr}
 .progress-box{max-width:520px}
 .guide-layout{gap:22px}
}
@media(max-width:767px){
 .container{width:min(100% - 32px,var(--container))}
 .topline .container span:last-child{display:none}
 .site-header{height:auto;min-height:68px}
 .nav-wrap{min-height:68px;flex-wrap:wrap;padding:10px 0}
 .logo{font-size:17px}
 .main-nav{order:3;display:none;width:100%;padding:5px 0 12px;flex-direction:column;align-items:stretch;gap:0}
 .main-nav.show{display:flex}
 .main-nav a{padding:9px 4px}
 .main-nav a:after{bottom:3px}
 .nav-download{position:absolute;right:16px;top:16px;padding:7px 11px!important;font-size:13px!important}
 .logo{padding-right:100px}
 .breadcrumb{padding-top:22px}
 .page-hero{padding-bottom:38px}
 h1{font-size:38px;letter-spacing:-1.5px}
 .page-intro{font-size:16px}
 .path-nav{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}
 .path-nav a{white-space:nowrap}
 .section{padding:48px 0}
 .section-head{display:block;margin-bottom:20px}
 .section-head p{margin-top:8px}
 .guide-item{grid-template-columns:56px 1fr;gap:14px;padding:17px}
 .step-number{width:45px;height:45px;font-size:17px}
 .guide-item .read-time{grid-column:2}
 .check-list{grid-template-columns:1fr}
 .notice-band{padding:45px 0}
 .cta{padding:45px 0}
 .cta-box{display:block;padding:30px 24px}
 .cta-box .btn{margin-top:22px;width:100%;position:relative;z-index:1}
 .footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px}
 .footer-brand{grid-column:1/-1}
 .footer-bottom{display:block;line-height:1.8}
 .footer-bottom span{display:block;margin-bottom:6px}
 .mobile-download{position:fixed;display:flex;align-items:center;gap:10px;bottom:0;left:0;right:0;background:var(--ink);color:#fff;padding:9px 14px;z-index:30;border-top:1px solid rgba(255,255,255,.15)}
 .mobile-download .mobile-mark{width:30px;height:30px;border-radius:7px;background:var(--green);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
 .mobile-download strong{font-size:13px;display:block;line-height:1.3}
 .mobile-download small{display:block;color:#aab6ad;font-size:11px}
 .mobile-download .btn{margin-left:auto;min-height:40px;padding:0 14px;font-size:13px}
}
@media(max-width:520px){
 .topline{font-size:11px}
 .logo{font-size:15px}
 .hero-actions .btn{width:100%}
 .side-card{padding:19px}
 .cta-box h2{font-size:24px}
}

/* roulang page: category4 */
:root{
 --green:#1f6b4f;
 --green-dark:#15513b;
 --ink:#202522;
 --muted:#6f766f;
 --paper:#f4f2ec;
 --sand:#ded4c2;
 --orange:#e87b36;
 --white:#fffdf8;
 --line:#d9d6cc;
 --soft:#e7eee8;
 --radius:12px;
 --shadow:0 12px 30px rgba(32,37,34,.08);
 --container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;
 background:var(--paper);
 color:var(--ink);
 font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
 font-size:16px;
 line-height:1.8;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
.topline{
 height:34px;
 background:#18201b;
 color:#bfc8c0;
 font-size:12px;
}
.topline .container{
 height:100%;
 display:flex;
 align-items:center;
 justify-content:space-between;
}
.site-header{
 height:72px;
 background:var(--ink);
 color:#fff;
 position:sticky;
 top:0;
 z-index:20;
 border-bottom:1px solid rgba(255,255,255,.08);
}
.nav-wrap{
 height:100%;
 display:flex;
 align-items:center;
 gap:35px;
}
.logo{
 display:flex;
 align-items:center;
 gap:10px;
 font-size:19px;
 font-weight:800;
 letter-spacing:-.5px;
 white-space:nowrap;
}
.logo-mark{
 width:30px;
 height:30px;
 border:2px solid #8dccac;
 border-radius:7px;
 position:relative;
 display:inline-block;
}
.logo-mark:before,.logo-mark:after{
 content:"";
 position:absolute;
 background:#8dccac;
}
.logo-mark:before{
 width:15px;
 height:2px;
 left:5px;
 top:13px;
 transform:rotate(-28deg);
}
.logo-mark:after{
 width:5px;
 height:5px;
 border-radius:50%;
 right:4px;
 top:6px;
}
.main-nav{
 display:flex;
 align-items:center;
 gap:22px;
 flex:1;
}
.main-nav a{
 font-size:14px;
 color:#bfc8c0;
 padding:25px 0;
 position:relative;
 white-space:nowrap;
}
.main-nav a:after{
 content:"";
 height:3px;
 background:var(--green);
 position:absolute;
 left:0;
 right:100%;
 bottom:15px;
 transition:.2s;
}
.main-nav a:hover,.main-nav a.active{
 color:#fff;
 font-weight:700;
}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{
 background:var(--green);
 border-radius:7px;
 padding:10px 17px!important;
 color:#fff!important;
 font-weight:700!important;
}
.nav-download:after{display:none}
.breadcrumb{
 padding:28px 0 0;
 color:var(--muted);
 font-size:13px;
}
.breadcrumb a{color:var(--green);font-weight:700}
.page-hero{
 padding:28px 0 58px;
 background:
 linear-gradient(rgba(244,242,236,.94),rgba(244,242,236,.94)),
 repeating-linear-gradient(0deg,transparent 0 39px,rgba(31,107,79,.08) 40px),
 repeating-linear-gradient(90deg,transparent 0 79px,rgba(31,107,79,.06) 80px);
}
.eyebrow{
 display:inline-flex;
 gap:8px;
 align-items:center;
 color:var(--green);
 font-size:13px;
 font-weight:800;
 letter-spacing:1px;
 margin:22px 0 13px;
}
.eyebrow:before{
 content:"";
 width:24px;
 height:3px;
 background:var(--orange);
 display:inline-block;
}
.page-hero h1{
 max-width:760px;
 margin:0 0 15px;
 font-size:clamp(34px,5vw,54px);
 line-height:1.2;
 letter-spacing:-2px;
}
.page-hero h1 em{font-style:normal;color:var(--green)}
.lead{
 max-width:760px;
 color:#525a53;
 font-size:18px;
 line-height:1.8;
 margin:0;
}
.section{padding:68px 0}
.section-head{
 display:flex;
 justify-content:space-between;
 align-items:end;
 gap:20px;
 margin-bottom:26px;
}
.section-kicker{
 color:var(--orange);
 font-size:13px;
 font-weight:800;
 letter-spacing:1px;
}
.section h2{
 font-size:clamp(25px,3vw,34px);
 line-height:1.3;
 margin:4px 0 0;
 letter-spacing:-1px;
}
.section-head p{color:var(--muted);font-size:14px;margin:0}
.content-grid{
 display:grid;
 grid-template-columns:1.45fr .75fr;
 gap:28px;
 align-items:start;
}
.download-panel{
 background:var(--ink);
 color:#fff;
 border-radius:16px;
 padding:30px;
 box-shadow:var(--shadow);
 position:relative;
 overflow:hidden;
}
.download-panel:after{
 content:"安全核验";
 position:absolute;
 right:-22px;
 top:26px;
 padding:7px 28px;
 transform:rotate(32deg);
 background:var(--orange);
 color:#fff;
 font-size:12px;
 font-weight:800;
}
.download-panel h2{
 font-size:27px;
 line-height:1.35;
 margin:0 0 14px;
}
.download-panel p{color:#c7d0c8;margin:0 0 21px}
.panel-label{
 display:inline-block;
 padding:6px 9px;
 border-radius:4px;
 background:rgba(141,204,172,.15);
 color:#9ed1b2;
 font-size:12px;
 font-weight:700;
 margin-bottom:16px;
}
.btn{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:46px;
 padding:0 20px;
 border-radius:7px;
 border:1px solid transparent;
 font-size:15px;
 font-weight:700;
 transition:.2s;
}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{
 background:var(--green-dark);
 transform:translateY(-2px);
 box-shadow:0 8px 15px rgba(31,107,79,.2);
}
.btn-light{
 border-color:#bfc7bd;
 background:transparent;
 color:var(--green);
}
.btn-light:hover{background:#e5ebe4;transform:translateY(-2px)}
.btn-muted{
 background:#46514a;
 color:#e0e7e1;
 cursor:not-allowed;
}
.btn:focus,a:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.platforms{
 display:flex;
 flex-wrap:wrap;
 gap:8px;
 margin:22px 0;
}
.platform{
 border:1px solid rgba(255,255,255,.2);
 background:rgba(255,255,255,.06);
 padding:7px 12px;
 border-radius:5px;
 color:#dbe5dc;
 font-size:13px;
}
.notice-box{
 margin-top:22px;
 padding:15px 17px;
 background:rgba(232,123,54,.12);
 border-left:3px solid var(--orange);
 color:#f0d3c1;
 font-size:13px;
 line-height:1.7;
}
.info-card{
 background:var(--white);
 border:1px solid var(--line);
 border-radius:var(--radius);
 padding:25px;
 box-shadow:0 8px 22px rgba(32,37,34,.04);
}
.info-card h3{font-size:20px;margin:0 0 15px}
.info-card ul,.step-list{
 list-style:none;
 padding:0;
 margin:0;
}
.info-card li{
 padding:12px 0;
 border-bottom:1px solid var(--line);
 font-size:14px;
 color:#565e57;
}
.info-card li:last-child{border-bottom:0}
.info-card li strong{display:block;color:var(--ink);font-size:15px}
.steps-section{background:var(--sand)}
.steps{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:0;
 counter-reset:step;
}
.step{
 position:relative;
 padding:20px 35px 20px 72px;
 border-top:1  border-top:1px solid rgba(32,37,34,.22);
}
.step:before{
 counter-increment:step;
 content:counter(step,decimal-leading-zero);
 position:absolute;
 left:0;
 top:18px;
 width:48px;
 height:48px;
 display:flex;
 align-items:center;
 justify-content:center;
 border-radius:50%;
 background:var(--green);
 color:#fff;
 font-size:14px;
 font-weight:800;
}
.step:not(:last-child):after{
 content:"";
 position:absolute;
 left:48px;
 right:0;
 top:42px;
 border-top:1px dashed rgba(31,107,79,.45);
}
.step h3{font-size:18px;margin:0 0 7px}
.step p{color:#5c635d;font-size:14px;margin:0}
.version-section{background:var(--white)}
.version-layout{
 display:grid;
 grid-template-columns:.7fr 1.3fr;
 gap:48px;
 align-items:start;
}
.device-preview{
 min-height:330px;
 border-radius:18px;
 background:
 linear-gradient(145deg,rgba(255,255,255,.1),transparent),
 #1e3027;
 border:12px solid #26332c;
 box-shadow:0 10px 0 #b6b2a6,0 18px 30px rgba(32,37,34,.13);
 padding:28px 20px;
 color:#fff;
 position:relative;
 overflow:hidden;
}
.device-preview:before{
 content:"";
 position:absolute;
 top:9px;
 left:50%;
 width:64px;
 height:5px;
 border-radius:5px;
 background:#718078;
 transform:translateX(-50%);
}
.device-preview .screen-top{
 display:flex;
 justify-content:space-between;
 align-items:center;
 margin:16px 0 20px;
 font-size:13px;
 color:#cfe1d3;
}
.score-lines{
 display:grid;
 gap:12px;
}
.score-line{
 height:52px;
 padding:0 14px;
 display:flex;
 align-items:center;
 justify-content:space-between;
 border-radius:8px;
 background:rgba(255,255,255,.09);
 border:1px solid rgba(255,255,255,.12);
 font-size:13px;
}
.score-line b{color:#a6d4b5}
.version-list{
 background:var(--paper);
 border:1px solid var(--line);
 border-radius:var(--radius);
 overflow:hidden;
}
.version-row{
 display:grid;
 grid-template-columns:110px 120px 1fr;
 gap:20px;
 align-items:start;
 padding:21px 24px;
 border-bottom:1px solid var(--line);
}
.version-row:last-child{border-bottom:0}
.version-no{font-weight:800;color:var(--green)}
.version-date{font-size:13px;color:var(--muted)}
.version-row p{margin:0;color:#555d56;font-size:14px}
.check-section{padding:70px 0}
.check-grid{
 display:grid;
 grid-template-columns:repeat(2,1fr);
 gap:16px;
}
.check-card{
 padding:22px 23px;
 background:var(--white);
 border:1px solid var(--line);
 border-radius:var(--radius);
 transition:.2s;
}
.check-card:hover{
 transform:translateY(-3px);
 box-shadow:var(--shadow);
 border-color:#a9c5b2;
}
.check-icon{
 width:36px;
 height:36px;
 border-radius:8px;
 display:flex;
 align-items:center;
 justify-content:center;
 margin-bottom:12px;
 background:var(--soft);
 color:var(--green);
 font-weight:800;
}
.check-card h3{font-size:18px;margin:0 0 6px}
.check-card p{font-size:14px;color:var(--muted);margin:0}
.faq-section{background:#e9e6dc}
.faq-wrap{max-width:840px}
.faq-item{
 background:var(--white);
 border:1px solid var(--line);
 border-radius:var(--radius);
 margin-bottom:10px;
 overflow:hidden;
}
.faq-question{
 width:100%;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:15px;
 padding:18px 21px;
 background:transparent;
 color:var(--ink);
 border:0;
 text-align:left;
 font-weight:800;
}
.faq-question span:last-child{
 color:var(--green);
 font-size:22px;
 line-height:1;
 transition:.2s;
}
.faq-answer{
 display:none;
 padding:0 21px 18px;
 color:#5c635d;
 font-size:14px;
 line-height:1.8;
}
.faq-item.open .faq-answer{display:block}
.faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
.cta{
 padding:54px 0;
 background:var(--green);
 color:#fff;
}
.cta-inner{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:30px;
}
.cta h2{font-size:30px;line-height:1.35;margin:0 0 8px}
.cta p{color:#d2e3d6;margin:0;font-size:15px}
.cta .btn-light{border-color:#b3d0ba;color:#fff}
.cta .btn-light:hover{background:#367c60}
.site-footer{
 background:var(--ink);
 color:#fff;
 padding:52px 0 0;
}
.footer-grid{
 display:grid;
 grid-template-columns:1.5fr 1fr 1fr 1fr;
 gap:35px;
 padding-bottom:38px;
}
.footer-brand p{
 max-width:310px;
 color:#aeb8b0;
 font-size:14px;
 margin:17px 0 0;
}
.footer-col h3{
 font-size:15px;
 margin:2px 0 13px;
 color:#fff;
}
.footer-col a{
 display:block;
 width:max-content;
 color:#aeb8b0;
 font-size:14px;
 margin:6px 0;
 transition:.2s;
}
.footer-col a:hover{color:#9ed1b2;transform:translateX(2px)}
.footer-bottom{
 border-top:1px solid rgba(255,255,255,.12);
 min-height:62px;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:20px;
 color:#89948b;
 font-size:12px;
}
.mobile-download{display:none}
@media (max-width:1023px){
 .nav-wrap{gap:20px}
 .main-nav{gap:14px}
 .main-nav a{font-size:13px}
 .content-grid{grid-template-columns:1fr}
 .download-panel{order:1}
 .info-card{order:2}
 .version-layout{grid-template-columns:1fr 1fr;gap:28px}
}
@media (max-width:767px){
 .container{width:min(100% - 32px,var(--container))}
 .topline{height:auto;padding:6px 0}
 .topline .container{display:block;text-align:center}
 .site-header{height:auto;min-height:68px}
 .nav-wrap{min-height:68px;flex-wrap:wrap;padding:13px 0;gap:10px}
 .logo{font-size:16px}
 .logo-mark{width:27px;height:27px}
 .main-nav{
  order:3;
  display:none;
  width:100%;
  padding:8px 0 4px;
  flex-wrap:wrap;
  gap:0 18px;
 }
 .main-nav.show{display:flex}
 .main-nav a{padding:7px 0;font-size:13px}
 .main-nav a:after{bottom:1px}
 .nav-download{
  margin-left:auto;
  padding:8px 12px!important;
 }
 .menu-toggle{
  display:inline-flex!important;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:7px;
  color:#fff;
  background:transparent;
 }
 .breadcrumb{padding-top:20px}
 .page-hero{padding-bottom:38px}
 .page-hero h1{font-size:36px;letter-spacing:-1px}
 .lead{font-size:16px}
 .section{padding:48px 0}
 .section-head{display:block;margin-bottom:20px}
 .section-head p{margin-top:8px}
 .steps{display:block}
 .step{padding:17px 10px 23px 67px}
 .step:not(:last-child):after{display:none}
 .version-layout{grid-template-columns:1fr}
 .version-row{grid-template-columns:1fr 1fr;gap:4px 12px;padding:17px}
 .version-row p{grid-column:1 / -1;margin-top:5px}
 .check-grid{grid-template-columns:1fr}
 .cta-inner{display:block}
 .cta .hero-actions{margin-bottom:0}
 .footer-grid{grid-template-columns:1fr 1fr;gap:27px 18px}
 .footer-brand{grid-column:1 / -1}
 .footer-bottom{display:block;padding:16px 0;line-height:1.8}
 .footer-bottom span{display:block}
 .mobile-download{
  display:flex;
  position:fixed;
  z-index:30;
  left:10px;
  right:10px;
  bottom:10px;
  min-height:58px;
  padding:8px 10px;
  align-items:center;
  gap:10px;
  border-radius:12px;
  background:var(--ink);
  color:#fff;
  box-shadow:0 8px 28px rgba(0,0,0,.25);
 }
 .mobile-download .mini-mark{
  width:32px;
  height:32px;
  border:2px solid #8dccac;
  border-radius:7px;
  flex:0 0 auto;
 }
 .mobile-download strong{display:block;font-size:13px;line-height:1.25}
 .mobile-download small{display:block;color:#aeb8b0;font-size:11px}
 .mobile-download .btn{margin-left:auto;min-height:40px;padding:0 13px;font-size:13px}
 body{padding-bottom:76px}
}
@media (min-width:768px){
 .menu-toggle{display:none}
}

/* roulang page: category6 */
:root{
 --green:#1f6b4f;--green-dark:#15513b;--ink:#202522;--muted:#6f766f;
 --paper:#f4f2ec;--sand:#ded4c2;--orange:#e87b36;--white:#fffdf8;
 --line:#d9d6cc;--radius:12px;--shadow:0 12px 30px rgba(32,37,34,.08);
 --container:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.site-header{height:72px;background:var(--ink);color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:100%;display:flex;align-items:center;gap:35px}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}
.logo-mark{width:30px;height:30px;border:2px solid #8dccac;border-radius:7px;position:relative;display:inline-block;flex:0 0 30px}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#8dccac}
.logo-mark:before{width:15px;height:2px;left:5px;top:13px;transform:rotate(-28deg)}
.logo-mark:after{width:5px;height:5px;border-radius:50%;right:4px;top:6px}
.main-nav{display:flex;align-items:center;gap:22px;flex:1}
.main-nav a{font-size:14px;color:#bfc8c0;padding:25px 0;position:relative;white-space:nowrap}
.main-nav a:after{content:"";height:3px;background:var(--green);position:absolute;left:0;right:100%;bottom:15px;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:#fff;font-weight:700}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-download{background:var(--green);border-radius:7px;padding:10px 17px!important;color:#fff!important;font-weight:700!important}
.nav-download:after{display:none!important}
.nav-toggle{display:none;background:transparent;border:0;color:#fff;font-size:25px;padding:7px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-size:15px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);color:#fff;transform:translateY(-2px);box-shadow:0 8px 15px rgba(31,107,79,.2)}
.btn-outline{border-color:#b9c1b9;color:var(--green);background:var(--white)}
.btn-outline:hover{background:#e5ebe4;transform:translateY(-2px)}
.btn:focus,a:focus,button:focus,input:focus{outline:3px solid rgba(232,123,54,.42);outline-offset:3px}
.topline{background:#e7e2d7;border-bottom:1px solid #d7d0c3;color:#505951;font-size:13px}
.topline .container{height:38px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.status-dot{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:7px}
.breadcrumb{padding:22px 0 0;margin:0;font-size:13px;color:var(--muted)}
.breadcrumb a{color:var(--green);font-weight:700}
.breadcrumb span{padding:0 8px;color:#a3a49d}
.page-hero{padding:28px 0 48px;background:
 linear-gradient(rgba(244,242,236,.92),rgba(244,242,236,.97)),
 repeating-linear-gradient(90deg,transparent 0 89px,rgba(31,107,79,.055) 90px),
 repeating-linear-gradient(0deg,transparent 0 45px,rgba(31,107,79,.055) 46px)}
.page-hero-grid{display:grid;grid-template-columns:1.28fr .72fr;gap:38px;align-items:end}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:13px}
.eyebrow:before{content:"";width:24px;height:3px;background:var(--orange)}
.page-hero h1{font-size:clamp(36px,4.5vw,52px);letter-spacing:-2px;line-height:1.18;margin:0 0 15px}
.page-hero h1 em{font-style:normal;color:var(--green)}
.page-hero p{max-width:720px;color:#555d56;font-size:17px;line-height:1.85;margin:0}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#bcbcaf;border:1px solid #bcbcaf;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}
.stat{background:var(--white);padding:16px 13px}
.stat strong{display:block;font-size:25px;color:var(--green);line-height:1.1}
.stat span{font-size:12px;color:var(--muted)}
.topic-filter{padding:18px 0;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.filter-inner{display:flex;align-items:center;gap:11px;overflow:auto;scrollbar-width:none}
.filter-label{font-size:13px;color:var(--muted);font-weight:700;white-space:nowrap;margin-right:4px}
.filter-chip{white-space:nowrap;border:1px solid var(--line);padding:7px 13px;border-radius:5px;background:#fffdf8;color:#5c655d;font-size:13px;font-weight:700;transition:.2s}
.filter-chip:hover,.filter-chip.active{border-color:var(--green);background:#e4eee8;color:var(--green)}
.main-area{padding:58px 0 72px}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:32px;align-items:start}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:21px}
.section-heading h2{font-size:29px;line-height:1.3;letter-spacing:-1px;margin:0}
.section-heading p{font-size:14px;line-height:1.65;color:var(--muted);margin:5px 0 0}
.text-link{color:var(--green);font-size:14px;font-weight:800;border-bottom:1px solid var(--green);white-space:nowrap}
.lead-topic{min-height:338px;background:var(--ink);border-radius:16px;overflow:hidden;position:relative;padding:34px;display:flex;align-items:flex-end;color:#fff;box-shadow:var(--shadow);isolation:isolate}
.lead-topic:before{content:"";position:absolute;z-index:-1;inset:-25%;background:
 radial-gradient(circle at 74% 45%,rgba(232,123,54,.95) 0 4%,transparent 4.4%),
 radial-gradient(circle at 78% 48%,transparent 0 15%,rgba(141,204,172,.42) 15.2% 15.7%,transparent 16%),
 linear-gradient(135deg,#123c2d 0%,#236c4e 50%,#1a2923 100%)}
.lead-topic:after{content:"";position:absolute;z-index:-1;width:480px;height:480px;right:-150px;top:-190px;border:2px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 38px rgba(255,255,255,.06),0 0 0 78px rgba(255,255,255,.04)}
.topic-no{position:absolute;top:28px;right:31px;color:rgba(255,255,255,.6);font-weight:800;font-size:13px;letter-spacing:2px}
.topic-content{max-width:590px}
.topic-content .tag{background:rgba(255,255,255,.16);color:#d7f0df}
.topic-content h3{font-size:30px;line-height:1.35;letter-spacing:-1px;margin:14px 0 10px}
.topic-content p{font-size:15px;line-height:1.75;color:#e0e7e1;margin:0 0 17px;max-width:530px}
.topic-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:#b7c6bc}
.topic-meta strong{color:#fff}
.topic-index{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin-top:18px}
.topic-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:22px;min-height:225px;position:relative;overflow:hidden;transition:.22s;display:flex;flex-direction:column}
.topic-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b9cbbd}
.topic-card:hover h3{color:var(--green)}
.topic-card:nth-child(2){background:#e9eee7}
.topic-card:nth-child(3){background:#f1e6da}
.topic-card:nth-child(4){background:#e5ece8}
.topic-number{font-size:12px;font-weight:800;letter-spacing:1px;color:var(--orange)}
.topic-card h3{font-size:20px;line-height:1.45;margin:14px 0 9px;transition:.2s}
.topic-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.topic-footer{margin-top:auto;padding-top:15px;display:flex;justify-content:space-between;gap:10px;color:#777e77;font-size:12px;border-top:1px solid rgba(88,98,88,.16)}
.topic-mini{margin-top:17px;border-top:1px solid var(--line)}
.mini-row{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);transition:.2s}
.mini-row:hover{padding-left:7px}
.mini-row:hover h3{color:var(--green)}
.mini-row .num{font-size:13px;font-weight:800;color:var(--orange)}
.mini-row h3{font-size:16px;line-height:1.45;margin:0;transition:.2s}
.mini-row p{margin:3px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.mini-row time{font-size:12px;color:#8c928b;white-space:nowrap}
.sidebar-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:18px}
.sidebar-card h2{font-size:19px;line-height:1.4;margin:0 0 15px}
.sidebar-card h2:before{content:"";display:inline-block;width:4px;height:19px;background:var(--orange);vertical-align:-3px;margin-right:9px;border-radius:2px}
.tag-cloud{display:flex;gap:8px;flex-wrap:wrap}
.tag-cloud a{padding:7px 10px;background:#eef2ed;color:var(--green);font-size:13px;border-radius:4px;font-weight:700;transition:.2s}
.tag-cloud a:hover{background:var(--green);color:#fff}
.update-item{display:grid;grid-template-columns:44px 1fr;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}
.update-item:last-child{border-bottom:0;padding-bottom:0}
.date-box{font-size:11px;text-align:center;line-height:1.2;color:var(--muted);border-right:1px solid var(--line)}
.date-box strong{display:block;color:var(--green);font-size:18px;line-height:1.15}
.update-item h3{font-size:14px;line-height:1.5;margin:0}
.update-item p{font-size:12px;line-height:1.45;color:var(--muted);margin:3px 0 0}
.download-panel{background:var(--ink);color:#fff;border-color:var(--ink);position:relative;overflow:hidden}
.download-panel:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(141,204,172,.3);border-radius:50%;right:-70px;bottom:-75px}
.download-panel h2{position:relative;z-index:1}
.download-panel h2:before{background:#8dccac}
.download-panel p{position:relative;z-index:1;color:#c4cec6;font-size:13px;line-height:1.65}
.download-panel .btn{position:relative;z-index:1;width:100%;margin-top:8px}
.side-note{font-size:12px;color:#9fa99f;margin:11px 0 0}
.topic-cta{padding:60px 0;background:var(--sand)}
.cta-box{background:var(--green);color:#fff;border-radius:16px;padding:39px 43px;display:flex;justify-content:space-between;align-items:center;gap:30px;position:relative;overflow:hidden}
.cta-box:after{content:"";position:absolute;right:-58px;top:-100px;width:280px;height:280px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.06)}
.cta-box h2{font-size:28px;line-height:1.35;margin:0 0 7px;position:relative;z-index:1}
.cta-box p{margin:0;color:#dcece0;position:relative;z-index:1;font-size:15px}
.cta-box .btn{position:relative;z-index:1;background:var(--white);color:var(--green);white-space:nowrap}
.cta-box .btn:hover{background:#edf5ef;transform:translateY(-2px)}
.site-footer{background:var(--ink);color:#d0d7d1;padding:52px 0 0}
.footer-grid{display:grid;grid-template-columns:1.55fr repeat(3,1fr);gap:35px;padding-bottom:40px}
.footer-brand .logo{color:#fff;margin-bottom:13px}
.footer-brand p{max-width:320px;margin:0;color:#aeb9af;font-size:14px;line-height:1.75}
.footer-col h3{color:#fff;font-size:15px;margin:0 0 13px}
.footer-col a{display:block;color:#aeb9af;font-size:14px;padding:3px 0;transition:.2s}
.footer-col a:hover{color:#8dccac;padding-left:4px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:17px 0 20px;display:flex;justify-content:space-between;gap:15px;color:#909a92;font-size:12px}
.mobile-download{display:none}
@media(max-width:1024px){
 .nav-wrap{gap:20px}.main-nav{gap:14px}.main-nav a{font-size:13px}
 .page-hero-grid{grid-template-columns:1fr}.hero-stats{max-width:510px}
 .content-grid{grid-template-columns:minmax(0,1fr) 285px;gap:22px}
}
@media(max-width:767px){
 body{font-size:15px;padding-bottom:70px}.container{width:min(100% - 32px,var(--container))}
 .site-header{height:64px}.nav-wrap{justify-content:space-between;gap:12px}.logo{font-size:16px}.logo-mark{width:27px;height:27px;flex-basis:27px}
 .main-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--ink);padding:8px 20px 17px;border-top:1px solid rgba(255,255,255,.08);box-shadow:0 12px 20px rgba(0,0,0,.15)}
 .main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav a{padding:11px 0}.main-nav a:after{bottom:5px}
 .nav-download{display:none}.nav-toggle{display:block}
 .topline .container{height:34px;font-size:12px;white-space:nowrap;overflow:hidden}.topline span:last-child{display:none}
 .breadcrumb{padding-top:15px}.page-hero{padding:20px 0 32px}.page-hero h1{font-size:35px;letter-spacing:-1.5px}.page-hero p{font-size:15px}
 .hero-stats{grid-template-columns:repeat(3,1fr)}.stat{padding:12px 9px}.stat strong{font-size:21px}
 .topic-filter{padding:13px 0}.filter-inner{gap:8px}
 .main-area{padding:39px 0 48px}.content-grid{grid-template-columns:1fr;gap:28px}.section-heading h2{font-size:25px}
 .lead-topic{min-height:315px;padding:25px}.topic-content h3{font-size:25px}.topic-content p{font-size:14px}.topic-no{top:19px;right:20px}
 .topic-index{grid-template-columns:1fr;gap:13px}.topic-card{min-height:195px;padding:19px}
 .sidebar{display:grid;grid-template-columns:1fr;gap:0}.sidebar-card{margin-bottom:14px}
 .cta-box{padding:30px 24px;display:block}.cta-box h2{font-size:24px}.cta-box p{font-size:14px;margin-bottom:20px}.cta-box .btn{width:100%}
 .footer-grid{grid-template-columns:1fr 1fr;gap:27px 20px;padding-bottom:29px}.footer-brand{grid-column:1/-1}.footer-bottom{display:block;line-height:1.7}.footer-bottom span{display:block}
 .mobile-download{display:flex;position:fixed;z-index:45;bottom:0;left:0;right:0;min-height:63px;background:rgba(32,37,34,.97);color:#fff;padding:8px 16px;align-items:center;gap:9px;border-top:1px solid rgba(255,255,255,.14)}
 .mobile-download .mini-mark{width:31px;height:31px;border:1px solid #8dccac;border-radius:7px;position:relative;flex:0 0 31px}.mini-mark:after{content:"";width:14px;height:2px;background:#8dccac;position:absolute;top:14px;left:8px;transform:rotate(-28deg)}
 .mobile-download strong{font-size:13px;line-height:1.2;display:block}.mobile-download span{font-size:11px;color:#b9c5bb;display:block;line-height:1.2}.mobile-download .btn{margin-left:auto;min-height:42px;padding:0 13px;font-size:13px}
}
@media(max-width:520px){
 .hero-stats{max-width:none}.stat span{font-size:11px}.topic-meta{gap:9px}.mini-row{grid-template-columns:32px 1fr}.mini-row time{display:none}
 .footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-col{border-top:1px solid rgba(255,255,255,.12);padding-top:17px}
}

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
