/* roulang page: index */
:root{--ink:#16282f;--muted:#63727a;--paper:#f4f6f4;--white:#fff;--line:#dce3df;--dark:#101c23;--primary:#b8ed61;--green:#326347;--accent:#e1b781;--radius:18px;--shadow:0 12px 36px rgba(18,39,31,.07);--space:80px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none;transition:color .2s,background .2s,transform .2s}a:hover{color:var(--green)}img,svg{max-width:100%;vertical-align:middle}button,input{font:inherit}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #72a845;outline-offset:5px}::selection{background:var(--primary);color:var(--dark)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.3;font-weight:750;letter-spacing:-.035em}h2{font-size:clamp(27px,3vw,38px);margin-bottom:20px}h3{font-size:21px;margin-bottom:12px}p{color:var(--muted);margin-bottom:16px}small{font-size:13px}.container{max-width:1200px;padding-left:28px;padding-right:28px}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.navbar{min-height:78px;padding:12px 0;gap:24px}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:21px;font-weight:800;letter-spacing:-.7px;white-space:nowrap}.brand-icon{width:33px;height:33px;display:grid;place-items:center;background:var(--dark);color:var(--primary);border-radius:9px;font-size:23px;font-style:italic}.navbar-nav{gap:10px}.navbar .nav-link{color:var(--muted);font-weight:600;font-size:14px;padding:10px 18px!important;border-radius:8px}.navbar .nav-link.active{background:#edf4e6;color:#345323}.navbar .nav-link:hover{background:#f0f3f0;color:var(--ink)}.navbar-toggler{padding:7px 12px;font-size:14px;border:1px solid var(--line);border-radius:8px;box-shadow:none!important}.nav-note{border-left:1px solid var(--line);padding-left:24px;font-size:12px;color:var(--muted);margin-left:18px}
section{padding:var(--space) 0;border-bottom:1px solid var(--line)}.section-white{background:var(--white)}.eyebrow{display:block;color:var(--green);font-size:12px;font-weight:750;letter-spacing:2px;margin-bottom:16px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:44px;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading p{max-width:570px;margin:0;font-size:15px}.intro{max-width:750px;font-size:16px;margin-bottom:30px}.btn{--bs-btn-border-radius:9px;padding:12px 24px;font-size:14px;font-weight:700;border:1px solid transparent;transition:all .2s}.btn-primary{--bs-btn-bg:var(--primary);--bs-btn-color:var(--dark);--bs-btn-border-color:var(--primary);--bs-btn-hover-bg:#c8fa7a;--bs-btn-hover-color:var(--dark);--bs-btn-hover-border-color:#c8fa7a;--bs-btn-active-bg:#a7dc52;--bs-btn-active-color:var(--dark);--bs-btn-active-border-color:#a7dc52}.btn-outline-light{color:#fff;border-color:#60716e;background:rgba(255,255,255,.03)}.btn-outline-light:hover{background:#fff;color:var(--dark)}.btn-dark{background:var(--dark);color:#fff;border-color:var(--dark)}.btn-dark:hover{background:#2e443e;border-color:#2e443e}.btn:active{transform:translateY(1px)}.badge-tag{display:inline-flex;align-items:center;font-size:12px;font-weight:600;background:#edf2e9;color:var(--green);border:1px solid #dce7d4;border-radius:5px;padding:4px 9px}.hero{position:relative;overflow:hidden;background:var(--dark);color:#fff;padding:82px 0 0;border:0;isolation:isolate}.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 85% 5%,#2b4a34 0,transparent 54%),linear-gradient(115deg,#101c23 30%,#142b28)}.hero::after{content:"";position:absolute;right:-60px;top:-95px;width:580px;height:580px;border:1px solid #9bcc6430;transform:rotate(36deg);box-shadow:0 0 0 75px #9bcc6407,0 0 0 150px #9bcc6405;z-index:-1}.hero-top{display:flex;align-items:center;gap:15px;font-size:13px;color:#c5d4c8;letter-spacing:1px;margin-bottom:27px}.pulse{height:7px;width:7px;display:inline-block;border-radius:50%;background:var(--primary);box-shadow:0 0 0 5px #b8ed6115}.hero h1{font-size:clamp(38px,5.8vw,68px);max-width:970px;line-height:1.16;margin-bottom:25px}.hero h1 span{color:var(--primary)}.hero-copy{max-width:780px;color:#b8c7c7;font-size:16px;line-height:1.95}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 54px}.hero-stamp{position:absolute;right:38px;bottom:116px;font-size:122px;font-weight:900;color:#d5ffbd08;line-height:1;letter-spacing:-8px;pointer-events:none}.countdown-bar{background:#ffffff06;border-top:1px solid #ffffff18;padding:21px 0}.countdown-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}.countdown-caption{font-size:13px;color:#9cb0aa}.countdown-caption strong{display:block;font-size:15px;color:#e3eddf;margin-bottom:3px}.countdown-state{display:flex;align-items:center;gap:14px;font-size:13px;color:#b1c0ba}.countdown-state b{background:#ffffff08;border:1px solid #ffffff15;padding:9px 17px;border-radius:8px;color:var(--primary);font-size:15px}.card{height:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:none;overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-body{padding:27px}.card p{font-size:14px;margin-bottom:0}.metric{font-size:39px;font-weight:800;line-height:1.2;letter-spacing:-1.5px;color:var(--green);margin-bottom:18px}.metric small{font-size:16px;letter-spacing:0;margin-left:5px}.resource{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:27px 0;border-top:1px solid var(--line)}.resource:last-child{border-bottom:1px solid var(--line)}.resource h3{font-size:19px}.resource p{font-size:14px;margin:0;max-width:760px}.resource-icon{flex:none;width:48px;height:54px;display:grid;place-items:center;border:1px solid #d1dccc;border-radius:8px;background:#edf2e9;font-weight:800;font-size:12px;color:var(--green)}.resource-content{flex:1}.text-link{font-size:14px;color:var(--green);font-weight:700;white-space:nowrap}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.settlement{background:#e9eee7}.notice{display:flex;gap:18px;border-left:3px solid var(--green);padding:21px 25px;background:#fff;border-radius:0 12px 12px 0}.notice p{margin:0;font-size:14px}.plain-list{padding:0;margin:0;list-style:none}.plain-list li{padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;justify-content:space-between;gap:24px}.plain-list strong{min-width:104px}.proof-panel{padding:30px;background:var(--dark);color:#fff;border-radius:var(--radius)}.proof-panel p{color:#b8c7c3}.proof-panel h3{font-size:25px}.proof-mark{color:var(--primary);font-size:40px;font-weight:800;margin-bottom:20px}.source-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.source-row:first-child{padding-top:0}.source-row h3{font-size:18px;margin-bottom:6px}.source-row p{font-size:14px;margin:0}.source-row a{font-size:13px;white-space:nowrap;color:var(--green);font-weight:700}.scene-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.scene{border-top:2px solid var(--green);padding-top:24px}.scene .number{font-size:12px;color:var(--green);font-weight:700;margin-bottom:15px}.scene p{font-size:14px}.scene a{font-size:13px;font-weight:700;color:var(--green)}.demo-section{background:var(--dark);color:white}.demo-section .eyebrow{color:var(--primary)}.demo-section p{color:#aebfba}.match-demo{border-radius:var(--radius);border:1px solid #394b47;background:#1a2b2d;overflow:hidden;box-shadow:0 20px 45px #0002}.demo-top{padding:18px 24px;background:#ffffff04;display:flex;justify-content:space-between;border-bottom:1px solid #394b47;font-size:14px}.demo-top span:last-child{font-size:12px;color:#b8ed61}.demo-body{padding:30px}.demo-event{font-size:12px;color:#aebfba;margin-bottom:24px}.match-teams{display:flex;align-items:center;justify-content:space-between;text-align:center;gap:12px}.team-symbol{width:50px;height:50px;background:#ffffff06;border:1px solid #4e6258;display:grid;place-items:center;margin:0 auto 12px;border-radius:12px;color:var(--primary);font-size:25px}.team-name{font-size:14px}.match-vs{font-size:22px;font-weight:800;color:#7e958b}.demo-footer{padding:15px 24px;border-top:1px solid #394b47;font-size:12px;color:#aebfba}.check-list{list-style:none;padding:0;margin:25px 0 0}.check-list li{padding:12px 0;font-size:14px;border-bottom:1px solid #ffffff15;color:#d0dad5}.check-list li::before{content:"✓";color:var(--primary);margin-right:12px}.price-card{padding:28px;background:white;border-radius:var(--radius);border:1px solid var(--line);height:100%}.price-card.featured{border-color:#94b270;background:#f3f8ec}.price{font-size:29px;font-weight:800;color:var(--ink);margin:20px 0}.price small{font-weight:400;font-size:13px;color:var(--muted)}.price-card p{font-size:14px}.price-card .badge-tag{margin-bottom:17px}.price-bottom{border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:12px}.voices{display:grid;grid-template-columns:1fr 1fr;gap:20px}.voice{border:1px solid var(--line);border-radius:14px;background:#fff;padding:25px}.voice strong{display:block;margin-bottom:10px;font-size:17px}.voice p{margin:0;font-size:14px}.voice-label{display:block;font-size:12px;color:var(--green);margin-top:17px}.downloads{background:#edf1eb}.download-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:27px;display:flex;flex-direction:column;height:100%}.download-card p{font-size:14px;flex:1}.platform{font-size:12px;color:var(--green);margin-bottom:14px}.download-card .text-link{padding-top:17px;border-top:1px solid var(--line)}.article-list{border-top:1px solid var(--line)}.article-item{display:grid;grid-template-columns:110px 1fr 30px;align-items:center;gap:24px;padding:27px 0;border-bottom:1px solid var(--line)}.article-item:hover{background:#edf2e960}.article-item h3{font-size:19px;margin-bottom:8px}.article-item p{margin:0;font-size:14px}.article-topic{font-size:12px;color:var(--green)}.article-arrow{font-size:22px;color:var(--green)}.join{background:#dcedcb}.join-box{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.join p{color:#52634d}.reminder-form{background:#ffffffb3;padding:28px;border:1px solid #c7d7b9;border-radius:var(--radius)}.form-label{font-size:14px;font-weight:700}.form-control{border:1px solid #c8d4c1;border-radius:8px;background:#fff;min-height:46px;padding:10px 13px;color:var(--ink);font-size:14px}.form-control:focus{border-color:var(--green);box-shadow:0 0 0 3px #32634715}.form-text{font-size:12px;line-height:1.7;color:#637458}.form-status{font-size:13px;color:var(--green);margin-top:12px;min-height:22px}.site-footer{padding:45px 0 24px;background:#fff}.footer-top{display:flex;justify-content:space-between;gap:50px;padding-bottom:28px}.footer-top p{font-size:13px;margin-top:14px;max-width:620px}.footer-links{display:flex;gap:24px;align-items:flex-start;font-size:13px;padding-top:9px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.skip-link{position:fixed;left:16px;top:-80px;z-index:200;background:#fff;padding:10px 20px;border:2px solid var(--green);border-radius:8px}.skip-link:focus{top:12px}
@media(min-width:1025px){.hero-copy{padding-right:15px}}
@media(max-width:1024px){:root{--space:64px}.nav-note{display:none}.hero{padding-top:62px}.hero-stamp{display:none}.section-heading{gap:30px}.section-heading p{max-width:50%}.join-box{gap:30px}.scene-grid{gap:20px}.container{padding-left:24px;padding-right:24px}}
@media(max-width:768px){:root{--space:52px}.navbar{min-height:69px}.navbar-collapse{padding-top:10px}.navbar-nav{padding-bottom:7px}.section-heading{display:block}.section-heading p{max-width:100%;margin-top:20px}.hero{padding-top:48px}.hero-copy{font-size:15px}.hero-actions{margin-bottom:35px}.countdown-inner{align-items:flex-start;flex-direction:column;gap:16px}.scene-grid{grid-template-columns:1fr}.scene{padding-bottom:12px}.join-box{grid-template-columns:1fr;gap:20px}.footer-top{display:block}.footer-links{padding:6px 0 20px}.article-item{grid-template-columns:75px 1fr 20px;gap:12px}.resource{flex-wrap:wrap;gap:16px}.resource .text-link{margin-left:64px}.voices{grid-template-columns:1fr}}
@media(max-width:520px){.container{padding-left:20px;padding-right:20px}.brand{font-size:18px}.hero h1{font-size:36px}.hero-top{font-size:11px;gap:10px}.hero-actions .btn{flex:1;padding:12px 10px}.countdown-state{flex-wrap:wrap;font-size:12px}.countdown-state b{padding:8px 12px}.section-heading h2,h2{font-size:27px}.card-body,.price-card,.download-card{padding:23px}.source-row{align-items:flex-start;flex-direction:column;gap:10px}.plain-list li{flex-direction:column;gap:6px}.article-item{grid-template-columns:1fr 20px}.article-topic{grid-column:1/-1}.article-item h3{font-size:18px}.resource-icon{display:none}.resource .text-link{margin-left:0}.resource-content{flex-basis:100%}.demo-body{padding:23px}.footer-bottom{flex-direction:column;gap:8px}.footer-links{gap:18px;flex-wrap:wrap}.reminder-form{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* roulang page: category1 */
:root{--ink:#16282f;--muted:#63727a;--paper:#f4f6f4;--white:#fff;--line:#dce3df;--dark:#101c23;--primary:#b8ed61;--green:#326347;--accent:#e1b781;--radius:18px;--shadow:0 12px 36px rgba(18,39,31,.07);--space:80px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8}
a{color:inherit;text-decoration:none;transition:color .2s,background .2s,transform .2s}
a:hover{color:var(--green)}
img,svg{max-width:100%;vertical-align:middle}
button,input{font:inherit}
button,a,input{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #72a845;outline-offset:5px}
.container{max-width:1200px;padding-left:28px;padding-right:28px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}
.navbar{min-height:78px;padding:12px 0;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:21px;font-weight:800;letter-spacing:-.7px;white-space:nowrap}
.brand-icon{width:33px;height:33px;display:grid;place-items:center;background:var(--dark);color:var(--primary);border-radius:9px;font-size:23px;font-style:italic}
.navbar-nav{gap:10px}
.navbar .nav-link{color:var(--muted);font-weight:600;font-size:14px;padding:10px 18px!important;border-radius:8px}
.navbar .nav-link.active{background:#edf4e6;color:#345323}
.navbar .nav-link:hover{background:#f0f3f0;color:var(--ink)}
.navbar-toggler{padding:7px 12px;font-size:14px;border:1px solid var(--line);border-radius:8px;box-shadow:none!important}
.nav-note{border-left:1px solid var(--line);padding-left:24px;font-size:12px;color:var(--muted);margin-left:18px}
section{padding:var(--space) 0;border-bottom:1px solid var(--line)}
.section-white{background:var(--white)}
h1,h2,h3,h4{font-weight:750;line-height:1.35;letter-spacing:-.6px}
h2{font-size:30px;margin-bottom:20px}
h3{font-size:20px;margin-bottom:14px}
p{color:var(--muted);margin-bottom:18px}
.eyebrow{display:block;color:var(--green);font-size:12px;font-weight:750;letter-spacing:2px;margin-bottom:16px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:44px;margin-bottom:32px}
.section-heading h2{margin-bottom:0}
.section-heading p{max-width:570px;margin:0;font-size:15px}
.btn{--bs-btn-border-radius:9px;padding:12px 24px;font-size:14px;font-weight:700;border:1px solid transparent;transition:all .2s}
.btn-primary{--bs-btn-bg:var(--primary);--bs-btn-color:var(--dark);--bs-btn-border-color:var(--primary);--bs-btn-hover-bg:#c8fa7a;--bs-btn-hover-color:var(--dark);--bs-btn-hover-border-color:#c8fa7a;--bs-btn-active-bg:#a7dc52;--bs-btn-active-color:var(--dark);--bs-btn-active-border-color:#a7dc52}
.btn-outline-light{color:#fff;border-color:#60716e;background:rgba(255,255,255,.03)}
.btn-outline-light:hover{background:#fff;color:var(--dark)}
.btn-dark{background:var(--dark);color:#fff;border-color:var(--dark)}
.btn-dark:hover{background:#2e443e;border-color:#2e443e}
.btn:active{transform:translateY(1px)}
.badge-tag{display:inline-flex;align-items:center;font-size:12px;font-weight:600;background:#edf2e9;color:var(--green);border:1px solid #dce7d4;border-radius:5px;padding:4px 9px}
.card{height:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:none;overflow:hidden;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card-body{padding:27px}
.card p{font-size:14px;margin-bottom:0}
.text-link{font-size:14px;color:var(--green);font-weight:700}
.text-link:hover{text-decoration:underline;text-underline-offset:4px}
.plain-list{padding:0;margin:0;list-style:none}
.plain-list li{padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;justify-content:space-between;gap:24px}
.plain-list strong{min-width:104px}
.source-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}
.source-row:first-child{padding-top:0}
.source-row h3{font-size:18px;margin-bottom:6px}
.source-row p{font-size:14px;margin:0}
.source-row a{font-size:13px;white-space:nowrap;color:var(--green);font-weight:700}
.scene-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}
.demo-section{background:var(--dark);color:white}
.demo-section .eyebrow{color:var(--primary)}
.demo-section p{color:#aebfba}
.demo-body{padding:30px}
.demo-footer{padding:15px 24px;border-top:1px solid #394b47;font-size:12px;color:#aebfba}
.check-list{list-style:none;padding:0;margin:25px 0 0}
.check-list li{padding:12px 0;font-size:14px;border-bottom:1px solid #ffffff15;color:#d0dad5}
.check-list li::before{content:"✓";color:var(--primary);margin-right:12px}
.price-card{padding:28px;background:white;border-radius:var(--radius);border:1px solid var(--line);height:100%}
.price-card.featured{border-color:#94b270;background:#f3f8ec}
.price-card p{font-size:14px}
.price-card .badge-tag{margin-bottom:17px}
.download-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:27px;display:flex;flex-direction:column;height:100%}
.download-card p{font-size:14px;flex:1}
.platform{font-size:12px;color:var(--green);margin-bottom:14px}
.download-card .text-link{padding-top:17px;border-top:1px solid var(--line)}
.article-list{border-top:1px solid var(--line)}
.article-item{display:grid;grid-template-columns:110px 1fr 30px;align-items:center;gap:24px;padding:27px 0;border-bottom:1px solid var(--line)}
.article-item:hover{background:#edf2e960}
.article-item h3{font-size:19px;margin-bottom:8px}
.article-item p{font-size:14px;margin:0}
.site-footer{padding:48px 0 22px;background:#fff}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;padding-bottom:32px}
.footer-top p{font-size:13px;max-width:630px;margin:20px 0 0}
.footer-links{display:flex;justify-content:flex-end;align-items:flex-start;gap:22px;flex-wrap:wrap;font-size:13px}
.footer-links a:hover{color:var(--green);text-decoration:underline}
.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:24px;font-size:12px;color:var(--muted)}
.topic-hero{padding:38px 0 0;background:var(--dark);color:white;overflow:hidden}
.breadcrumb-line{font-size:12px;color:#abbab6;margin-bottom:36px}
.breadcrumb-line a:hover{color:var(--primary)}
.breadcrumb-line span{margin:0 12px;opacity:.5}
.topic-hero .eyebrow{color:var(--primary)}
.topic-hero h1{font-size:clamp(34px,4.4vw,55px);line-height:1.22;margin-bottom:24px}
.topic-hero h1 span{color:var(--primary)}
.topic-hero p{color:#b9c9c3;max-width:650px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 40px}
.topic-art{height:315px;position:relative;border:1px solid #44574b;border-radius:18px;background:radial-gradient(ellipse at 50% 65%,#36533c,transparent 68%),#15262a;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}
.topic-art::before,.topic-art::after{content:"";position:absolute;width:220px;height:220px;border:1px solid #b8ed6140;transform:rotate(45deg)}
.topic-art::after{width:270px;height:270px;border-color:#b8ed611a}
.art-number{font-size:104px;font-weight:900;letter-spacing:-8px;line-height:1.1;color:var(--primary);z-index:1}
.art-caption{font-size:12px;letter-spacing:4px;color:#d4ddcf;z-index:1}
.art-bottom{position:absolute;bottom:16px;font-size:11px;color:#95aa9f}
.status-strip{display:flex;align-items:center;gap:18px;background:#ffffff07;border-top:1px solid #ffffff18;padding:17px 0;margin-top:34px;font-size:12px;color:#c8d4ce}
.status-dot{width:7px;height:7px;display:inline-block;background:var(--accent);border-radius:50%;margin-right:8px}
.feature-number{font-size:13px;color:var(--green);font-weight:700;display:block;margin-bottom:24px}
.feature-card .card-body{padding:30px}
.scene{border-left:2px solid #a2b68e;padding:0 24px}
.scene p{font-size:14px;margin-bottom:0}
.scene .badge-tag{margin-bottom:18px}
.demo-panel{background:#1b2c30;border:1px solid #425650;border-radius:18px;overflow:hidden}
.demo-header{padding:18px 24px;border-bottom:1px solid #425650;display:flex;justify-content:space-between;gap:15px;font-size:13px}
.demo-header span{color:var(--primary)}
.demo-state{font-size:28px;font-weight:750;margin:10px 0}
.demo-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.demo-fields div{padding:14px;background:#ffffff04;border-radius:8px}
.demo-fields small{display:block;color:#95aaa2;margin-bottom:5px}
.demo-fields strong{font-size:14px;font-weight:500}
.notice{padding:16px 20px;border-left:3px solid var(--accent);background:#f4efe7;font-size:13px;color:#705b40;margin-top:24px;border-radius:0 8px 8px 0}
.cost{font-size:25px;font-weight:800;display:block;margin:16px 0;color:var(--ink)}
.source-note{background:#eaf0e7;border-radius:var(--radius);padding:28px}
.source-note p{font-size:14px}
.cta-section{padding:44px 0;background:#e5efd8}
.cta-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}
.cta-inner h2{font-size:25px;margin-bottom:8px}
.cta-inner p{margin:0;font-size:14px}
@media(min-width:1025px){.topic-hero .row{align-items:center}}
@media(max-width:1024px){:root{--space:64px}.nav-note{display:none}.section-heading{gap:28px}.topic-art{height:285px}.footer-top{gap:35px}.scene{padding-right:8px}}
@media(max-width:767px){:root{--space:52px}.container{padding-left:22px;padding-right:22px}.navbar{gap:12px;min-height:72px}.navbar-collapse{border-top:1px solid var(--line);padding-top:12px}.navbar-nav{gap:5px}.section-heading{display:block}.section-heading p{margin-top:16px}.topic-art{height:230px;margin-top:5px}.art-number{font-size:84px}.topic-hero{padding-top:24px}.hero-actions{margin-bottom:16px}.status-strip{align-items:flex-start;flex-direction:column;gap:7px}.scene-grid{grid-template-columns:1fr;gap:30px}.footer-top{grid-template-columns:1fr;gap:28px}.footer-links{justify-content:flex-start}.footer-bottom{flex-direction:column;gap:8px}.cta-inner{align-items:flex-start;flex-direction:column}.article-item{grid-template-columns:80px 1fr 16px;gap:12px}h2{font-size:27px}}
@media(max-width:520px){.container{padding-left:18px;padding-right:18px}.brand{font-size:19px;gap:8px}.navbar-toggler{font-size:12px;padding:7px 9px}.topic-hero h1{font-size:34px}.topic-art{height:210px}.hero-actions .btn{padding:11px 18px}.card-body,.feature-card .card-body,.download-card,.price-card{padding:23px}.demo-body{padding:23px}.demo-header{padding:16px}.demo-fields{gap:10px}.demo-fields div{padding:10px}.source-row{align-items:flex-start;flex-direction:column;gap:10px}.article-item{grid-template-columns:1fr 16px}.article-item>.badge-tag{grid-column:1/-1;justify-self:start}.article-item h3{font-size:18px}.footer-links{gap:16px}}
@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}
