/* roulang page: index */
:root{--bg:#f4f6f2;--paper:#fff;--ink:#19332f;--muted:#667873;--line:#dce5dc;--mint:#c9f38a;--green:#31584a;--purple:#e8dffc;--dark:#172d2b;--radius:24px;--shadow:0 14px 40px #1d392b09}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none;transition:color .2s,background .2s,transform .2s}a:hover{color:#50742b}img,svg{max-width:100%;vertical-align:middle}button,input,select{font:inherit}button{cursor:pointer}::selection{background:var(--mint);color:var(--ink)}:focus-visible{outline:3px solid #8c68bc;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:750;line-height:1.3;letter-spacing:-.04em}h2{font-size:clamp(26px,3vw,36px);margin-bottom:18px}h3{font-size:20px;letter-spacing:-.02em}p{color:var(--muted);margin-bottom:18px}small{font-size:13px}.container{max-width:1180px;padding-left:26px;padding-right:26px}.site-header{padding:22px 0;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:19px;letter-spacing:-.5px}.brand-icon{width:38px;height:42px;display:grid;place-items:center;background:var(--ink);color:var(--mint);border-radius:12px 12px 19px 19px;font-size:23px}.header-note{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.status-dot{width:7px;height:7px;border-radius:50%;background:#6c9e48;box-shadow:0 0 0 5px #6c9e4815}.hero{padding:28px 0 0}.hero-stage{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;background:var(--dark);padding:60px 54px 36px;color:white;min-height:470px}.hero-art{position:absolute;width:450px;height:450px;right:-75px;top:-80px;opacity:.48;z-index:-1}.hero-stage:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#172d2b 15%,#172d2bdb 60%,transparent)}.eyebrow{display:inline-flex;gap:10px;align-items:center;font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:20px;color:#54714c}.hero .eyebrow{color:var(--mint)}h1{font-size:clamp(34px,5.6vw,63px);max-width:900px;margin-bottom:23px}.hero-lead{max-width:775px;font-size:15px;color:#c5d3cc;line-height:2}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid #ffffff20;padding-top:25px;margin-top:28px}.hero-caption{font-size:13px;color:#b7c9c0}.btn{border-radius:50px;padding:12px 24px;font-weight:650;border:1px solid transparent;transition:all .2s;box-shadow:none}.btn-primary{background:var(--mint);color:var(--ink);border-color:var(--mint)}.btn-primary:hover,.btn-primary:active{background:#b7e776!important;color:var(--ink)!important;border-color:#b7e776!important;transform:translateY(-2px)}.btn-outline{border:1px solid var(--line);color:var(--ink);background:white}.btn-outline:hover{background:var(--purple);border-color:#d7c7f0}.btn:active{transform:translateY(1px)}.pill-nav{display:flex;gap:10px;overflow-x:auto;padding:23px 0;white-space:nowrap;border-bottom:1px solid var(--line)}.pill-nav a{padding:10px 23px;border-radius:40px;font-size:14px;font-weight:650;background:#e9eee7;display:block}.pill-nav a.active{background:var(--ink);color:white}.pill-nav a:hover:not(.active){background:#dfeacf}.section{padding:66px 0;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:38px;margin-bottom:30px}.section-heading>div{flex:1}.section-heading>p{max-width:560px;margin:0;font-size:14px}.section-number{font-size:12px;letter-spacing:2px;color:var(--muted);display:block;margin-bottom:10px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px;height:100%;box-shadow:var(--shadow);transition:transform .2s,border-color .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);border-color:#bdd0b4;box-shadow:0 16px 38px #23492b0c}.card p{font-size:14px;margin-bottom:0}.badge-soft{display:inline-block;background:#edf3e7;color:#446143;padding:5px 11px;border-radius:8px;font-size:11px;font-weight:650;letter-spacing:.5px}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:20px;overflow:hidden;background:white;margin-top:28px}.stat{padding:22px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;font-size:30px;font-weight:750;line-height:1.3}.stat span{font-size:12px;color:var(--muted)}.directory-card{display:flex;flex-direction:column;min-height:220px}.directory-card .index{font-size:13px;color:var(--muted);margin-bottom:22px}.directory-card h3{margin-bottom:14px}.directory-card a{font-size:13px;margin-top:20px;font-weight:700}.tint-mint{background:#e6f0d8}.tint-purple{background:var(--purple)}.feature-panel{border-radius:var(--radius);background:var(--ink);padding:36px;color:white;height:100%;position:relative;overflow:hidden}.feature-panel p{color:#c5d3cc;font-size:14px}.feature-panel .badge-soft{background:#ffffff15;color:var(--mint)}.feature-panel h3{font-size:30px;margin-top:25px}.lane-map{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:28px}.lane-map span{border:1px solid #ffffff25;border-radius:12px;text-align:center;padding:17px 3px;font-size:13px;color:#dbe8d6}.recommendation{padding:20px 0;border-bottom:1px solid var(--line)}.recommendation:first-child{padding-top:0}.recommendation:last-child{border:0;padding-bottom:0}.recommendation h3{font-size:18px}.recommendation p{font-size:14px;margin:0}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:22px}.comparison ul{list-style:none;padding:0;margin:22px 0 0}.comparison li{padding:14px 0;border-top:1px solid #19332f18;font-size:14px}.comparison li b{display:block;margin-bottom:3px}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:30px}.timeline-item{border-top:2px solid #c3d7ad;padding-top:22px}.timeline-item strong{display:block;font-size:24px;color:#6b8759;margin-bottom:14px}.timeline-item p{font-size:14px;margin:0}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:85px 1fr 25px;gap:20px;padding:25px 0;border-bottom:1px solid var(--line);align-items:start}.article-row .article-type{font-size:12px;padding-top:5px;color:#577a48}.article-row h3{font-size:19px}.article-row p{font-size:14px;margin:0;max-width:840px}.article-row details summary{list-style:none;cursor:pointer}.article-row details summary::-webkit-details-marker{display:none}.article-row details[open] summary{margin-bottom:18px}.article-row details[open] h3{color:#637e3d}.article-row .expanded{padding:18px;background:#e9efdf;border-radius:14px}.share-panel{display:flex;align-items:center;justify-content:space-between;gap:35px;border-radius:var(--radius);padding:34px;background:var(--purple)}.share-panel h2{font-size:26px}.share-panel p{max-width:720px;font-size:14px;margin:0}.share-action{min-width:150px;text-align:center}.share-status{display:block;font-size:12px;min-height:24px;margin-top:8px}.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.topic{padding:23px 20px;border-radius:18px;background:white;border:1px solid var(--line)}.topic strong{display:block;margin-bottom:10px}.topic p{font-size:13px;margin:0}.notice{border-left:3px solid #a6c48a;padding:0 0 0 24px;margin-top:26px;font-size:14px;color:var(--muted)}.assurance-list{list-style:none;padding:0;margin:0}.assurance-list li{padding:18px 0;display:flex;gap:15px;border-bottom:1px solid var(--line)}.assurance-list li:last-child{border:0}.check{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#dcebcf;font-size:13px}.assurance-list p{font-size:14px;margin:4px 0 0}.faq .accordion-item{border:1px solid var(--line);border-radius:16px!important;margin-bottom:12px;overflow:hidden;background:white}.faq .accordion-button{padding:22px;background:white;font-size:15px;font-weight:650;color:var(--ink);box-shadow:none}.faq .accordion-button:not(.collapsed){background:#eaf2df}.faq .accordion-button:focus{box-shadow:inset 0 0 0 2px #9ab784}.faq .accordion-body{font-size:14px;color:var(--muted);padding:22px}.prediction-panel{background:var(--ink);color:white;border-radius:28px;padding:40px}.prediction-panel p{color:#c2d1c7;font-size:14px}.form-label{font-size:14px}.form-select{background-color:#f4f7f0;border-color:#d1ddc9;border-radius:12px;padding:13px 35px 13px 15px;color:var(--ink)}.form-select:focus{border-color:#c9f38a;box-shadow:0 0 0 3px #c9f38a33}.form-note{font-size:12px;color:#bfcfbe;margin-top:14px}.prediction-result{margin-top:20px;border-radius:14px;padding:18px;background:#ffffff10;color:#e4f2d9;font-size:14px}.site-footer{padding:42px 0 24px;background:#eaf0e5}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer-top p{max-width:620px;font-size:13px;margin-top:15px}.footer-links{display:flex;gap:22px;font-size:13px;align-items:flex-start}.footer-bottom{border-top:1px solid #cfdbca;padding-top:20px;margin-top:22px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:12px}
@media(min-width:1400px){.container{max-width:1220px}}
@media(max-width:1024px){.hero-stage{padding:42px 35px 30px}.section-heading{gap:25px}.topic-grid{grid-template-columns:repeat(2,1fr)}.card{padding:24px}.hero-art{right:-140px}}
@media(max-width:768px){.container{padding-left:20px;padding-right:20px}.section{padding:45px 0}.section-heading{display:block}.section-heading>p{max-width:none}.hero-stage{padding:34px 27px 27px;border-radius:24px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:14px}.header-note{font-size:11px}.section-heading h2{margin-bottom:17px}.comparison{grid-template-columns:1fr}.timeline{gap:18px}.share-panel{align-items:flex-start;flex-direction:column;padding:28px}.share-action{text-align:left}.footer-top{flex-direction:column}.prediction-panel{padding:28px}.stat-row{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:520px){.brand{font-size:16px;gap:9px}.brand-icon{width:32px;height:36px}.header-note{max-width:75px;line-height:1.5}.header-note .status-dot{display:none}.hero-lead{font-size:14px}.hero-art{opacity:.25}.hero-stage{padding:29px 22px}.pill-nav a{padding:9px 19px}.section-heading{margin-bottom:24px}.timeline{grid-template-columns:1fr}.timeline-item{padding-top:17px}.timeline-item strong{font-size:19px}.topic-grid{gap:10px}.topic{padding:19px 15px}.article-row{grid-template-columns:1fr;gap:5px}.article-row>span:last-child{display:none}.footer-bottom{flex-direction:column}.lane-map{gap:5px}.stat{padding:18px}.feature-panel{padding:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* roulang page: category1 */
:root{--bg:#f4f6f2;--paper:#fff;--ink:#19332f;--muted:#667873;--line:#dce5dc;--mint:#c9f38a;--green:#31584a;--purple:#e8dffc;--dark:#172d2b;--radius:24px;--shadow:0 14px 40px #1d392b09}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none;transition:color .2s,background .2s,transform .2s}a:hover{color:#50742b}img,svg{max-width:100%;vertical-align:middle}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #85aa58;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:750;line-height:1.4;letter-spacing:-.5px}h1{font-size:clamp(29px,4.2vw,48px)}h2{font-size:clamp(24px,3vw,32px)}h3{font-size:19px}p{color:var(--muted)}.container{max-width:1180px;padding-left:26px;padding-right:26px}.site-header{padding:22px 0;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:19px;letter-spacing:-.5px}.brand-icon{width:38px;height:42px;display:grid;place-items:center;background:var(--ink);color:var(--mint);border-radius:12px 12px 19px 19px;font-size:23px;flex-shrink:0}.header-note{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.status-dot{width:7px;height:7px;background:#729952;border-radius:50%}.hero{padding:28px 0 0}.hero-stage{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;background:var(--dark);padding:42px 48px;color:white}.hero-art{position:absolute;width:330px;height:330px;right:-85px;top:-100px;opacity:.25;z-index:-1}.eyebrow{display:inline-flex;gap:10px;align-items:center;font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:16px;color:#54714c}.hero .eyebrow{color:var(--mint)}.hero-lead{max-width:780px;font-size:15px;color:#c5d3cc;line-height:2}.hero-caption{font-size:12px;color:#b7c9c0}.btn{border-radius:50px;padding:12px 24px;font-weight:650;border:1px solid transparent;transition:all .2s;box-shadow:none}.btn-primary{background:var(--mint);color:var(--ink);border-color:var(--mint)}.btn-primary:hover,.btn-primary:active{background:#b7e776!important;color:var(--ink)!important;border-color:#b7e776!important;transform:translateY(-2px)}.btn-outline{border:1px solid var(--line);color:var(--ink);background:white}.btn-outline:hover{background:var(--purple);border-color:#d7c7f0}.btn:active{transform:translateY(1px)}.pill-nav{display:flex;gap:10px;overflow-x:auto;padding:23px 0;white-space:nowrap;border-bottom:1px solid var(--line)}.pill-nav a{padding:10px 23px;border-radius:40px;font-size:14px;font-weight:650;background:#e9eee7;display:block}.pill-nav a.active{background:var(--ink);color:white}.pill-nav a:hover:not(.active){background:#dfeacf}.section{padding:66px 0;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:38px;margin-bottom:30px}.section-heading>div{flex:1}.section-heading>p{max-width:490px;margin:0;font-size:14px}.section-number{font-size:12px;letter-spacing:2px;color:var(--muted);display:block;margin-bottom:10px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px;height:100%;box-shadow:var(--shadow);transition:transform .2s,border-color .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);border-color:#bdd0b4;box-shadow:0 16px 38px #23492b0c}.card p{font-size:14px;margin-bottom:0}.badge-soft{display:inline-block;background:#edf3e7;color:#446143;padding:5px 11px;border-radius:8px;font-size:11px;font-weight:650;letter-spacing:.5px;align-self:flex-start}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:20px;overflow:hidden;background:white;margin-top:24px}.stat{padding:20px 25px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{font-size:28px;font-weight:750;margin-right:10px}.stat span{font-size:13px;color:var(--muted)}.directory-card{display:flex;flex-direction:column;min-height:220px}.directory-card .index{font-size:13px;color:var(--muted);margin-bottom:22px}.directory-card h3{margin-bottom:14px}.feature-panel{border-radius:var(--radius);background:var(--ink);padding:36px;color:white;height:100%;position:relative;overflow:hidden}.feature-panel p{color:#c5d3cc;font-size:14px}.feature-panel .badge-soft{background:#ffffff15;color:var(--mint)}.feature-panel h3{font-size:30px;margin-top:25px}.timeline-item{border-top:2px solid #c3d7ad;padding-top:22px}.timeline-item strong{display:block;font-size:24px;color:#6b8759;margin-bottom:14px}.timeline-item p{font-size:14px;margin:0}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:85px 1fr 25px;gap:20px;padding:25px 0;border-bottom:1px solid var(--line);align-items:start}.article-row .article-type{font-size:12px;padding-top:5px;color:#577a48}.article-row h3{font-size:19px}.article-row p{font-size:14px;margin:0;max-width:840px}.article-row details summary{list-style:none;cursor:pointer}.article-row details summary::-webkit-details-marker{display:none}.article-row details[open] summary{margin-bottom:18px}.article-row details[open] h3{color:#637e3d}.article-row .expanded{padding:18px;background:#e9efdf;border-radius:14px}.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.assurance-list{list-style:none;padding:0;margin:0}.assurance-list li{padding:18px 0;display:flex;gap:15px;border-bottom:1px solid var(--line)}.assurance-list li:last-child{border:0}.assurance-list p{font-size:14px;margin:4px 0 0}.faq .accordion-item{border:1px solid var(--line);border-radius:16px!important;margin-bottom:12px;overflow:hidden;background:white}.faq .accordion-button{padding:22px;background:white;font-size:15px;font-weight:650;color:var(--ink);box-shadow:none}.faq .accordion-button:not(.collapsed){background:#eaf2df}.faq .accordion-button:focus{box-shadow:inset 0 0 0 2px #9ab784}.faq .accordion-body{font-size:14px;color:var(--muted);padding:22px}.form-label{font-size:14px}.form-select,.form-control{background-color:#f4f7f0;border:1px solid #d1ddc9;border-radius:12px;padding:13px 15px;color:var(--ink)}.form-select{padding-right:35px}.form-select:focus,.form-control:focus{border-color:#95b675;box-shadow:0 0 0 3px #c9f38a33;background:white}.form-note{font-size:12px;color:#bfcfbe;margin-top:14px}.site-footer{padding:42px 0 24px;background:#eaf0e5}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer-top p{max-width:620px;font-size:13px;margin-top:15px}.footer-links{display:flex;gap:22px;font-size:13px;align-items:flex-start}.footer-bottom{border-top:1px solid #cfdbca;padding-top:20px;margin-top:22px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:12px}
.search-form{display:flex;gap:10px;max-width:700px;margin:26px auto 14px;background:#fff;padding:7px;border-radius:50px}.search-form input{min-width:0;flex:1;border:0;background:transparent;padding:8px 18px;color:var(--ink);border-radius:40px;outline-offset:0}.search-form input:focus{outline:2px solid #95b675}.search-form .btn{white-space:nowrap}.hot-topics{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;font-size:12px;color:#c5d3cc}.hot-topics a:hover{color:var(--mint)}.matrix-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;font-size:21px;background:var(--purple);margin-bottom:24px}.directory-card:nth-child(even) .matrix-icon{background:var(--mint)}.compare-panel{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:white}.compare-head,.compare-line{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:22px 28px}.compare-head{background:var(--purple);font-weight:700}.compare-line{border-top:1px solid var(--line);font-size:14px}.compare-line p{margin:0}.compare-line strong{display:block;color:var(--ink);margin-bottom:5px}.soft-section{background:#edf2e8}.quick-strip{background:var(--purple);padding:30px;border-radius:24px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}.quick-strip p{margin:0;font-size:14px}.record-panel{background:var(--dark);padding:38px;border-radius:28px;color:white}.record-panel p{color:#c5d3cc}.record-panel .form-label{color:#d7e2d7}.search-status{font-size:13px;margin-bottom:18px}.empty-result{padding:25px;border:1px dashed #b5c6ab;border-radius:16px}.record-result{margin-top:16px;color:var(--mint);font-size:14px}.section[id]{scroll-margin-top:20px}[hidden]{display:none!important}
@media(max-width:1024px){.topic-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:18px}.stat strong{display:block}.footer-links{flex-wrap:wrap;gap:14px}.hero-stage{padding:36px}.section-heading>p{max-width:400px}}
@media(max-width:768px){.section{padding:44px 0}.section-heading{display:block}.section-heading>p{max-width:none;margin-top:15px}.hero-stage{padding:30px 25px}.footer-top,.footer-bottom{flex-direction:column}.quick-strip{grid-template-columns:1fr;gap:20px}.record-panel{padding:26px}.header-note{font-size:11px}.article-row{grid-template-columns:64px 1fr 15px;gap:12px}.compare-head,.compare-line{gap:18px;padding:20px}.hero-art{width:240px}}
@media(max-width:520px){.container{padding-left:18px;padding-right:18px}.site-header{padding:16px 0}.brand{font-size:16px;gap:8px}.header-note{display:none}.hero-stage{border-radius:24px;padding:26px 20px}.search-form{border-radius:18px;flex-wrap:wrap;padding:8px}.search-form input{width:100%;flex-basis:100%;padding:10px}.search-form .btn{width:100%;padding:9px}.hot-topics{gap:12px}.stat-row{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.stat strong{display:inline;font-size:25px}.topic-grid{grid-template-columns:1fr}.directory-card{min-height:auto}.matrix-icon{margin-bottom:16px}.pill-nav a{padding:9px 18px}.card{padding:23px}.article-row{grid-template-columns:1fr 15px}.article-type{grid-column:1/-1}.compare-head,.compare-line{gap:14px;padding:16px;font-size:13px}.feature-panel{padding:26px}.footer-links{gap:16px}.record-panel{padding:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* 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}
