/* roulang page: index */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{
            background:var(--paper);
            color:var(--text);
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;
            line-height:1.8;
            -webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        :focus-visible{outline:3px solid var(--coral);outline-offset:3px}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{
            background:var(--ink);
            color:var(--paper);
            position:sticky;top:0;z-index:20;
            border-bottom:1px solid var(--line-dark);
        }
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral)}
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px}
        .hero{
            background:var(--ink);
            color:var(--paper);
            padding:88px 0 74px;
            position:relative;overflow:hidden;
        }
        .hero:before,.hero:after{content:"";position:absolute;pointer-events:none}
        .hero:before{width:330px;height:330px;border:1px solid rgba(183,227,74,.17);right:-100px;top:-130px;transform:rotate(28deg)}
        .hero:after{width:10px;height:180px;background:var(--coral);right:9%;bottom:-80px;transform:rotate(28deg)}
        .hero-grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:75px;position:relative;z-index:1}
        .eyebrow,.section-kicker{font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;margin-bottom:22px}
        .eyebrow:before{content:"";width:32px;height:3px;background:var(--coral)}
        h1{font-size:clamp(40px,5.4vw,68px);line-height:1.12;letter-spacing:-.065em;max-width:680px;margin-bottom:25px}
        .hero-copy{color:#c6c8be;font-size:17px;line-height:1.9;max-width:610px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}
        .btn{min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;transform:translateY(-2px)}
        .btn-outline{color:var(--paper);border:1px solid rgba(245,240,232,.35);background:transparent}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime)}
        .terminal{
            min-height:390px;background:var(--ink-2);border:1px solid rgba(245,240,232,.18);
            border-radius:18px;padding:18px;position:relative;box-shadow:18px 18px 0 rgba(183,227,74,.8)
        }
        .terminal-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line-dark);padding:2px 3px 14px;color:#aeb1a6;font-size:12px}
        .dots{display:flex;gap:6px}.dots i{width:8px;height:8px;border-radius:50%;background:var(--coral)}.dots i:nth-child(2){background:var(--lime)}.dots i:nth-child(3){background:#777b70}
        .terminal-body{padding:30px 22px}
        .terminal-label{color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.12em}
        .terminal-title{font-size:31px;line-height:1.2;font-weight:900;margin:12px 0 22px;max-width:320px}
        .screen-lines{display:grid;gap:10px;margin-bottom:28px}.screen-lines span{height:8px;background:#4a4e45;border-radius:2px}.screen-lines span:nth-child(1){width:86%;background:var(--coral)}.screen-lines span:nth-child(2){width:64%}.screen-lines span:nth-child(3){width:75%}
        .terminal-foot{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line-dark);padding-top:18px;color:#afb2a7;font-size:12px}
        .status{display:inline-flex;align-items:center;gap:7px}.status:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime)}
        .quick-bar{background:var(--lime);color:var(--ink)}
        .quick-inner{display:grid;grid-template-columns:repeat(3,1fr);min-height:92px}
        .quick-item{padding:20px 24px;display:flex;align-items:center;gap:16px;border-right:1px solid rgba(23,24,23,.17)}
        .quick-item:last-child{border-right:0}.quick-num{font-size:12px;font-weight:900;color:#586d24}.quick-item strong{display:block;font-size:16px;line-height:1.3}.quick-item small{color:#536126;font-size:12px}
        .section{padding:96px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-kicker{color:var(--coral);margin-bottom:10px}.section-title{font-size:38px;line-height:1.2;letter-spacing:-.05em}.section-intro{max-width:500px;color:var(--muted);font-size:15px}
        .guide-layout{display:grid;grid-template-columns:1.35fr .85fr;gap:20px}
        .feature-panel{background:var(--ink);color:var(--paper);min-height:365px;padding:34px;border-radius:var(--radius);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
        .feature-panel:after{content:"PG";position:absolute;right:-16px;bottom:-48px;font-weight:900;font-size:190px;line-height:1;color:rgba(183,227,74,.12)}
        .feature-panel h3{font-size:29px;line-height:1.3;max-width:430px;margin:14px 0}.feature-panel p{color:#bdc0b5;max-width:470px;font-size:15px}
        .tag{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:5px;padding:3px 8px;font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.04em}
        .tag-lime{color:var(--lime)}.tag-coral{color:var(--coral)}
        .feature-link{color:var(--lime);font-size:14px;font-weight:800;position:relative;z-index:1}.feature-link span{margin-left:8px;transition:.2s}.feature-link:hover span{margin-left:13px}
        .guide-side{display:grid;gap:20px}.guide-card{background:#fff;border:1px solid var(--line);padding:27px;border-radius:var(--radius);transition:.2s}.guide-card:hover{border-color:var(--lime-dark);transform:translateY(-3px);box-shadow:var(--shadow)}.guide-card h3{font-size:21px;line-height:1.35;margin:13px 0 8px}.guide-card p{font-size:14px;color:var(--muted);line-height:1.75}.guide-card a{display:inline-block;color:var(--coral-dark);font-size:13px;font-weight:800;margin-top:13px}
        .download-section{background:var(--paper-2);padding:92px 0}.download-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.download-copy h2{font-size:40px;line-height:1.2;letter-spacing:-.055em;margin:9px 0 18px}.download-copy>p{color:var(--muted);max-width:480px}.steps{display:grid;gap:16px;margin:28px 0}.step{display:flex;gap:15px;align-items:flex-start}.step-no{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;background:var(--ink);color:var(--lime);border-radius:6px;font-size:13px;font-weight:900}.step h4{font-size:15px;line-height:1.35}.step p{font-size:13px;color:var(--muted);line-height:1.6}
        .download-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}.download-box-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.download-box h3{font-size:24px;line-height:1.3}.version{color:var(--coral-dark);font-size:12px;font-weight:800;background:#fff0ec;padding:5px 9px;border-radius:5px}.download-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:25px}.meta-cell{background:var(--paper);padding:14px;border-radius:8px}.meta-cell small{display:block;color:var(--muted);font-size:12px}.meta-cell strong{font-size:14px}.download-box .btn{width:100%}.download-note{font-size:12px;color:var(--muted);margin-top:14px;text-align:center}
        .news-section{background:var(--paper)}.news-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:22px}.news-main{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:31px;min-height:285px;display:flex;flex-direction:column;justify-content:space-between}.news-main h3{font-size:27px;line-height:1.35;margin:14px 0 10px}.news-main p{color:#bfc2b7;font-size:14px;max-width:550px}.news-main .news-link{color:var(--lime);font-size:13px;font-weight:800;margin-top:22px}.news-list{display:grid;gap:10px}.news-item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 19px;display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;transition:.2s}.news-item:hover{border-color:var(--lime-dark);box-shadow:0 8px 20px rgba(23,24,23,.07);transform:translateX(3px)}.news-index{font-size:12px;color:var(--coral-dark);font-weight:900}.news-item h4{font-size:15px;line-height:1.4;margin-bottom:3px}.news-item p{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.news-date{font-size:11px;color:var(--muted);white-space:nowrap}.empty-state{background:#fff;border:1px dashed var(--line);border-radius:12px;padding:35px;color:var(--muted);font-size:14px}
        .process-section{background:var(--ink);color:var(--paper)}.process-section .section-kicker{color:var(--lime)}.process-section .section-intro{color:#bfc2b7}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.process-item{padding:28px 20px 28px 0;margin-right:22px;border-right:1px solid var(--line-dark)}.process-item:last-child{border-right:0}.process-item strong{display:block;color:var(--lime);font-size:13px;margin-bottom:22px}.process-item h3{font-size:19px;line-height:1.4;margin-bottom:8px}.process-item p{color:#aeb1a6;font-size:13px;line-height:1.7}
        .faq-section{background:var(--paper-2)}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px}.faq-copy h2{font-size:37px;line-height:1.25;letter-spacing:-.05em;margin:10px 0 15px}.faq-copy p{color:var(--muted);font-size:15px}.faq-list{display:grid;gap:10px}.faq-item{background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 20px}.faq-item summary{list-style:none;cursor:pointer;padding:19px 26px 19px 0;font-weight:800;font-size:15px;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:0;color:var(--coral);font-size:22px;font-weight:400;top:15px}.faq-item[open] summary{color:var(--coral-dark)}.faq-item[open] summary:after{content:"−"}.faq-answer{border-top:1px solid var(--line);padding:14px 0 18px;color:var(--muted);font-size:14px;line-height:1.8}
        .cta{background:var(--lime);padding:54px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:32px;line-height:1.25;letter-spacing:-.05em}.cta p{color:#52621f;font-size:14px;margin-top:6px}.cta-actions{display:flex;gap:10px}.cta .btn-outline{border-color:var(--ink);color:var(--ink)}.cta .btn-outline:hover{background:var(--ink);color:var(--lime)}
        .site-footer{background:#111210;color:#d3d4cc;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .9fr 1fr;gap:40px;padding-bottom:48px}.footer-brand p{color:#85887d;font-size:13px;max-width:270px;margin-top:16px;line-height:1.8}.footer-title{color:var(--lime);font-size:13px;font-weight:800;margin-bottom:15px}.footer-links{display:grid;gap:8px}.footer-links a{color:#aeb1a6;font-size:13px;transition:.2s}.footer-links a:hover{color:var(--lime);padding-left:3px}.footer-note{color:#85887d;font-size:13px;line-height:1.8}.copyright{border-top:1px solid var(--line-dark);padding-top:20px;color:#70736b;font-size:12px;display:flex;justify-content:space-between;gap:20px}
        @media(max-width:1024px){.hero-grid{gap:40px}.main-nav{gap:0}.main-nav a{padding:9px 9px}.guide-layout,.news-layout{grid-template-columns:1fr}.download-grid{gap:40px}.faq-layout{gap:35px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}}
        @media(max-width:767px){.container{width:min(100% - 36px,var(--container))}.nav-wrap{height:68px}.brand{font-size:14px}.brand-mark{width:24px;height:24px;font-size:13px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ink);padding:12px 18px 20px;border-top:1px solid var(--line-dark);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:13px 12px}.nav-download{margin:5px 0 0!important;text-align:center}.hero{padding:60px 0 54px}.hero-grid{grid-template-columns:1fr;gap:45px}h1{font-size:41px}.hero-copy{font-size:15px}.terminal{min-height:330px;box-shadow:10px 10px 0 rgba(183,227,74,.8)}.terminal-title{font-size:26px}.quick-inner{grid-template-columns:1fr}.quick-item{min-height:70px;padding:14px 0;border-right:0;border-bottom:1px solid rgba(23,24,23,.17)}.quick-item:last-child{border-bottom:0}.section,.download-section{padding:65px 0}.section-head{display:block;margin-bottom:25px}.section-title{font-size:30px}.section-intro{margin-top:12px}.feature-panel{min-height:330px;padding:25px}.feature-panel h3{font-size:25px}.download-grid{grid-template-columns:1fr}.download-copy h2,.faq-copy h2{font-size:31px}.download-meta{gap:8px}.news-main{min-height:250px;padding:25px}.news-main h3{font-size:23px}.news-item{grid-template-columns:30px 1fr;gap:9px}.news-date{grid-column:2}.news-item p{max-width:100%}.process-grid{grid-template-columns:1fr}.process-item{border-right:0;border-bottom:1px solid var(--line-dark);margin:0;padding:23px 0}.process-item:last-child{border-bottom:0}.faq-layout{grid-template-columns:1fr}.cta{padding:42px 0}.cta-inner{display:block}.cta h2{font-size:27px}.cta-actions{margin-top:22px;display:grid;grid-template-columns:1fr 1fr}.cta-actions .btn{padding-left:10px;padding-right:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px;padding-bottom:35px}.footer-brand{grid-column:1/-1}.copyright{display:block}.copyright span{display:block;margin-top:6px}}
        @media(max-width:520px){.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn{width:100%}.terminal-body{padding:25px 14px}.download-box{padding:22px}.download-box-head{display:block}.version{display:inline-block;margin-top:10px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.cta-actions{grid-template-columns:1fr}.news-item{padding:14px}.section-title{font-size:28px}}

/* roulang page: article */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            background:var(--paper);
            color:var(--text);
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;
            line-height:1.8;
            -webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        a:focus-visible,button:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
        img{display:block;max-width:100%;height:auto}
        button{font:inherit;cursor:pointer;border:0}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line-dark)}
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral)}
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px}
        .article-hero{background:var(--ink);color:var(--paper);padding:68px 0 76px;position:relative;overflow:hidden}
        .article-hero:after{content:"PG";position:absolute;right:4%;bottom:-58px;color:rgba(183,227,74,.08);font-size:220px;font-weight:900;line-height:1}
        .breadcrumb{display:flex;gap:10px;align-items:center;color:#adb0a5;font-size:13px;margin-bottom:28px;position:relative;z-index:1}
        .breadcrumb a{color:var(--lime)}
        .breadcrumb span{color:#666b61}
        .article-head{max-width:900px;position:relative;z-index:1}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800;margin-bottom:18px}
        .eyebrow:before{content:"";width:32px;height:3px;background:var(--coral)}
        .article-head h1{font-size:clamp(34px,5vw,58px);line-height:1.22;letter-spacing:-.055em;margin:0 0 23px;font-weight:900}
        .article-summary{max-width:780px;color:#c8cac1;font-size:17px;line-height:1.9;margin:0}
        .article-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px;color:#b8bbae;font-size:13px}
        .meta-pill{border:1px solid rgba(245,240,232,.2);border-radius:5px;padding:4px 10px}
        .meta-pill:first-child{color:var(--coral);border-color:rgba(255,118,92,.45)}
        .article-section{padding:76px 0 94px}
        .article-layout{display:grid;grid-template-columns:minmax(0,820px) 280px;gap:60px;align-items:start}
        .article-body{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(26px,5vw,58px);box-shadow:var(--shadow);overflow:hidden}
        .article-body h2{font-size:30px;line-height:1.35;margin:36px 0 15px;letter-spacing:-.035em}
        .article-body h3{font-size:21px;line-height:1.4;margin:28px 0 10px}
        .article-body p{margin:0 0 20px;color:#444640}
        .article-body ul,.article-body ol{padding-left:25px;margin:15px 0 24px;color:#444640}
        .article-body li{padding:4px 0}
        .article-body blockquote{margin:28px 0;padding:18px 22px;border-left:4px solid var(--lime);background:#f1f5e6;color:#4c542c}
        .article-body img{border-radius:10px;margin:25px auto}
        .article-body table{width:100%;border-collapse:collapse;margin:25px 0;display:block;overflow-x:auto}
        .article-body th,.article-body td{padding:12px 14px;border:1px solid var(--line);text-align:left;white-space:nowrap}
        .article-body th{background:var(--ink);color:var(--paper)}
        .article-body a{color:var(--coral-dark);font-weight:700;border-bottom:1px solid rgba(217,86,67,.35)}
        .empty-state{text-align:center;padding:65px 20px;background:#fff;border:1px dashed var(--line);border-radius:var(--radius)}
        .empty-state h2{margin:0 0 10px;font-size:28px}
        .empty-state p{color:var(--muted);margin:0 0 22px}
        .btn{min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;transform:translateY(-2px)}
        .btn-dark{background:var(--ink);color:var(--paper)}
        .btn-dark:hover{background:var(--ink-3);transform:translateY(-2px)}
        .article-aside{position:sticky;top:104px}
        .aside-card{background:var(--ink-2);color:var(--paper);padding:24px;border-radius:var(--radius);margin-bottom:16px}
        .aside-card h3{font-size:18px;margin:0 0 15px;color:var(--lime)}
        .aside-links{display:grid;gap:3px}
        .aside-links a{padding:9px 0;color:#d6d8d0;font-size:14px;border-bottom:1px solid var(--line-dark);transition:.2s}
        .aside-links a:hover{color:var(--lime);padding-left:4px}
        .aside-card p{color:#bfc2b7;font-size:14px;line-height:1.75;margin:0 0 17px}
        .related-section{background:var(--paper-2);padding:70px 0}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}
        .section-kicker{color:var(--coral);font-size:12px;letter-spacing:.14em;font-weight:800}
        .section-title{font-size:34px;line-height:1.25;letter-spacing:-.05em;margin:8px 0 0}
        .related-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
        .related-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;display:flex;justify-content:space-between;gap:20px;transition:.2s}
        .related-card:hover{border-color:var(--lime-dark);transform:translateY(-3px);box-shadow:var(--shadow)}
        .related-card h3{font-size:18px;line-height:1.45;margin:0 0 7px}
        .related-card p{font-size:13px;color:var(--muted);margin:0}
        .arrow{color:var(--coral);font-size:24px;align-self:center}
        .cta{padding:65px 0;background:var(--lime)}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
        .cta h2{font-size:32px;line-height:1.3;margin:0 0 7px;letter-spacing:-.04em}
        .cta p{margin:0;color:#4e5e27}
        .cta-actions{display:flex;gap:10px;flex-wrap:wrap}
        .site-footer{background:var(--ink);color:var(--paper);padding:58px 0 23px}
        .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:35px;padding-bottom:44px}
        .footer-brand p,.footer-note{color:#aeb1a7;font-size:13px;line-height:1.8;margin:18px 0 0}
        .footer-title{font-size:13px;color:var(--lime);font-weight:800;margin-bottom:13px}
        .footer-links{display:grid;gap:6px}
        .footer-links a{color:#c9cbc3;font-size:13px;transition:.2s}
        .footer-links a:hover{color:var(--lime);padding-left:3px}
        .copyright{border-top:1px solid var(--line-dark);padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#858a80;font-size:12px}
        @media(max-width:1024px){
            .nav-wrap{gap:16px}.main-nav a{padding:9px 9px}
            .article-layout{grid-template-columns:minmax(0,1fr) 240px;gap:28px}
            .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
            .footer-grid>div:last-child{grid-column:1/-1}
        }
        @media(max-width:767px){
            .container{width:min(var(--container),calc(100% - 36px))}
            .nav-wrap{height:70px}.brand{font-size:15px}.menu-toggle{display:block;margin-left:auto}
            .main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--ink);padding:12px 18px 20px;flex-direction:column;align-items:stretch;border-top:1px solid var(--line-dark)}
            .main-nav.open{display:flex}.main-nav a{padding:13px 14px}.nav-download{margin:6px 0 0!important;text-align:center}
            .article-hero{padding:48px 0 56px}.article-head h1{font-size:36px}.article-summary{font-size:15px}
            .article-section{padding:45px 0 60px}.article-layout{display:block}.article-aside{position:static;margin-top:25px}
            .article-body{padding:26px 21px}.article-body h2{font-size:25px}
            .related-section{padding:48px 0}.related-row{grid-template-columns:1fr}.section-title{font-size:28px}
            .cta{padding:48px 0}.cta-inner{display:block}.cta h2{font-size:27px}.cta-actions{margin-top:22px}
            .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:last-child{grid-column:1/-1}
            .copyright{display:block}.copyright span{display:block;margin-top:5px}
        }
        @media(max-width:520px){
            .footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}
            .article-meta{gap:7px}.article-head h1{font-size:31px}
            .cta-actions .btn{width:100%}
        }

/* roulang page: category1 */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--paper);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        :focus-visible{outline:3px solid var(--coral);outline-offset:3px}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line-dark)}
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral)}
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .main-nav .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .main-nav .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px}
        .page-hero{background:var(--ink);color:var(--paper);padding:74px 0 82px;position:relative;overflow:hidden}
        .page-hero:before{content:"01";position:absolute;right:5%;top:-42px;color:rgba(183,227,74,.1);font-size:240px;font-weight:900;line-height:1}
        .page-hero .container{position:relative;z-index:1}
        .breadcrumb{display:flex;gap:10px;align-items:center;color:#aeb1a6;font-size:13px;margin-bottom:26px}
        .breadcrumb a:hover{color:var(--lime)}
        .breadcrumb span{color:var(--coral)}
        .eyebrow,.section-kicker{font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;margin-bottom:18px}
        .eyebrow:before{content:"";width:32px;height:3px;background:var(--coral)}
        h1{font-size:clamp(36px,5vw,62px);line-height:1.18;letter-spacing:-.055em;margin:0 0 22px;font-weight:900;max-width:780px}
        .hero-summary{max-width:700px;color:#c6c8be;font-size:17px;line-height:1.9;margin:0}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
        .btn{min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;transform:translateY(-2px)}
        .btn-outline{color:var(--paper);border:1px solid rgba(245,240,232,.35);background:transparent}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime)}
        .section{padding:92px 0}
        .section-light{background:var(--paper)}
        .section-dark{background:var(--ink);color:var(--paper)}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}
        .section-kicker{color:var(--coral);margin-bottom:10px}
        .section-dark .section-kicker{color:var(--lime)}
        .section-title{font-size:clamp(29px,4vw,40px);line-height:1.2;letter-spacing:-.05em;margin:0;font-weight:900}
        .section-intro{max-width:520px;color:var(--muted);font-size:15px;margin:0}
        .section-dark .section-intro{color:#bdc0b5}
        .guide-layout{display:grid;grid-template-columns:280px 1fr;gap:52px;align-items:start}
        .guide-index{position:sticky;top:105px;background:var(--ink-2);color:var(--paper);padding:24px;border-radius:var(--radius);border:1px solid var(--line-dark)}
        .guide-index h2{font-size:18px;margin:0 0 15px}
        .guide-index a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line-dark);font-size:14px;color:#c6c8be;transition:.2s}
        .guide-index a:last-child{border-bottom:0}
        .guide-index a:hover{color:var(--lime);padding-left:4px}
        .guide-content{display:grid;gap:18px}
        .info-block{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 30px;transition:.2s}
        .info-block:hover{border-color:var(--lime-dark);box-shadow:var(--shadow)}
        .number{display:inline-flex;background:var(--lime);color:var(--ink);font-size:12px;font-weight:900;padding:3px 9px;border-radius:5px;margin-bottom:13px}
        .info-block h2{font-size:25px;line-height:1.35;margin:0 0 10px}
        .info-block p{color:var(--muted);margin:0 0 12px}
        .info-block p:last-child{margin-bottom:0}
        .feature-strip{background:var(--ink-2);padding:30px;border-radius:var(--radius);display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
        .feature-strip h2{font-size:29px;line-height:1.35;margin:10px 0}
        .feature-strip p{color:#bdc0b5;margin:0}
        .tag{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:5px;padding:3px 8px;font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.04em}
        .tag-lime{color:var(--lime)}
        .tag-coral{color:var(--coral)}
        .visual-frame{min-height:205px;background:var(--paper-2);border:1px solid rgba(183,227,74,.35);border-radius:12px;padding:20px;display:flex;align-items:end;justify-content:space-between;color:var(--ink)}
        .visual-frame strong{font-size:24px;line-height:1.3}
        .visual-frame span{font-size:12px;font-weight:800;color:var(--coral-dark)}
        .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:30px}
        .step{background:#fff;padding:25px 22px;min-height:185px}
        .step-no{color:var(--coral);font-weight:900;font-size:14px}
        .step h3{font-size:19px;margin:12px 0 7px}
        .step p{font-size:14px;color:var(--muted);margin:0}
        .compatibility{background:var(--paper-2)}
        .compat-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
        .compat-card{padding:27px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
        .compat-card h3{font-size:21px;margin:0 0 9px}
        .compat-card p{color:var(--muted);font-size:14px;margin:0}
        .faq-list{max-width:850px;margin:0 auto}
        .faq-item{border-bottom:1px solid var(--line-dark);padding:21px 0}
        .faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:800;font-size:17px}
        .faq-item summary::-webkit-details-marker{display:none}
        .faq-item summary:after{content:"+";color:var(--lime);font-size:24px;line-height:1}
        .faq-item[open] summary:after{content:"−"}
        .faq-item p{color:#bdc0b5;margin:13px 38px 0 0;font-size:15px}
        .cta{background:var(--lime);padding:52px 0}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}
        .cta h2{font-size:32px;line-height:1.25;margin:0 0 7px;letter-spacing:-.04em}
        .cta p{margin:0;color:#536126}
        .cta .btn{background:var(--ink);color:var(--paper)}
        .cta .btn:hover{background:var(--ink-2);transform:translateY(-2px)}
        .site-footer{background:var(--ink);color:var(--paper);padding:62px 0 22px}
        .footer-grid{display:grid;grid-template-columns:1.45fr .8fr .9fr 1.1fr;gap:38px;padding-bottom:48px}
        .footer-brand p,.footer-note{color:#aeb1a6;font-size:14px;line-height:1.8;margin:18px 0 0}
        .footer-title{font-weight:800;font-size:14px;margin-bottom:14px;color:var(--lime)}
        .footer-links{display:grid;gap:8px}
        .footer-links a{color:#c6c8be;font-size:14px;transition:.2s}
        .footer-links a:hover{color:var(--lime);padding-left:3px}
        .copyright{border-top:1px solid var(--line-dark);padding-top:19px;display:flex;justify-content:space-between;gap:20px;color:#81847b;font-size:12px}
        @media(max-width:1024px){
            .hero-grid{gap:35px}.guide-layout{grid-template-columns:230px 1fr;gap:28px}
            .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
            .footer-grid>div:last-child{grid-column:span 3}
        }
        @media(max-width:767px){
            .container{width:min(100% - 36px,var(--container))}
            .nav-wrap{height:68px;justify-content:space-between}.menu-toggle{display:block}
            .main-nav{display:none;position:absolute;left:18px;right:18px;top:68px;background:var(--ink-2);padding:12px;flex-direction:column;align-items:stretch;border:1px solid var(--line-dark);box-shadow:var(--shadow)}
            .main-nav.is-open{display:flex}.main-nav a{padding:13px 15px}.main-nav .nav-download{margin:5px 0 0;text-align:center}
            .page-hero{padding:54px 0 60px}.page-hero:before{font-size:150px;right:-10px;top:20px}
            h1{font-size:39px}.hero-summary{font-size:16px}.hero-actions .btn{flex:1;min-width:145px}
            .section{padding:62px 0}.section-head{display:block;margin-bottom:25px}.section-intro{margin-top:13px}
            .guide-layout{display:block}.guide-index{position:static;margin-bottom:20px}.guide-content{gap:14px}
            .info-block{padding:23px}.info-block h2{font-size:22px}
            .feature-strip,.compat-grid{grid-template-columns:1fr}.visual-frame{min-height:165px}
            .steps{grid-template-columns:1fr}.step{min-height:auto;padding:21px}
            .cta-inner{display:block}.cta h2{font-size:27px}.cta .btn{margin-top:20px;width:100%}
            .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:last-child{grid-column:span 2}
            .copyright{display:block}.copyright span{display:block;margin-top:5px}
        }
        @media(max-width:520px){
            .brand{font-size:14px}.brand-mark{width:25px;height:25px}
            .hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn{width:100%}
            .footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}
        }

/* roulang page: category2 */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;background:var(--paper);color:var(--text);
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line-dark)}
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral)}
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .main-nav .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .main-nav .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px}
        .hero{background:var(--ink);color:var(--paper);padding:76px 0 72px;position:relative;overflow:hidden}
        .hero:before{content:"DOWNLOAD";position:absolute;right:-28px;top:24px;color:rgba(183,227,74,.08);font-size:100px;line-height:1;font-weight:900;letter-spacing:-.08em;transform:rotate(-8deg)}
        .hero:after{content:"";position:absolute;width:180px;height:10px;background:var(--coral);right:12%;bottom:30px;transform:rotate(-28deg)}
        .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center;position:relative;z-index:1}
        .eyebrow,.section-kicker{font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;margin-bottom:20px}
        .eyebrow:before{content:"";width:32px;height:3px;background:var(--coral)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(38px,5vw,62px);line-height:1.16;letter-spacing:-.06em;margin-bottom:22px;font-weight:900}
        .hero-copy{color:#c6c8be;font-size:17px;line-height:1.9;max-width:610px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}
        .btn{min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s}
        .btn:focus-visible,.main-nav a:focus-visible,.faq-question:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;transform:translateY(-2px)}
        .btn-outline{color:var(--paper);border:1px solid rgba(245,240,232,.35);background:transparent}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime)}
        .download-terminal{background:var(--paper);color:var(--text);border-radius:var(--radius);box-shadow:10px 10px 0 rgba(255,118,92,.65);overflow:hidden}
        .terminal-head{background:var(--ink-2);padding:14px 20px;color:#dfe1d7;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800}
        .terminal-dots{display:flex;gap:6px}.terminal-dots i{width:8px;height:8px;border-radius:50%;background:var(--coral)}.terminal-dots i:nth-child(2){background:var(--lime)}.terminal-dots i:nth-child(3){background:#d9d8c9}
        .terminal-body{padding:29px 27px}
        .terminal-body h2{font-size:32px;line-height:1.25;font-weight:900;margin:0 0 10px}
        .terminal-body p{color:var(--muted);font-size:14px;margin-bottom:22px}
        .qr-row{display:grid;grid-template-columns:108px 1fr;gap:18px;align-items:center;margin-bottom:24px}
        .qr-box{height:108px;background:repeating-linear-gradient(45deg,#252623 0 4px,#f5f0e8 4px 8px);border:8px solid #fff;outline:1px solid var(--line);display:grid;place-items:center}
        .qr-box span{background:var(--paper);font-size:11px;font-weight:800;padding:4px;color:var(--text)}
        .terminal-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
        .terminal-meta div{background:var(--paper-2);padding:10px 12px;border-radius:8px}
        .terminal-meta small,.meta-cell small{display:block;color:var(--muted);font-size:11px}.terminal-meta strong{font-size:14px}
        .status-bar{background:var(--lime);color:var(--ink);padding:17px 0}
        .status-grid{display:grid;grid-template-columns:repeat(3,1fr)}
        .status-item{padding:3px 25px;border-right:1px solid rgba(23,24,23,.2)}.status-item:last-child{border:0}
        .status-item small{display:block;font-size:12px;font-weight:700;color:#536126}.status-item strong{font-size:17px;line-height:1.3}
        .section{padding:88px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}
        .section-kicker{color:var(--coral);margin-bottom:10px}.section-title{font-size:38px;line-height:1.2;letter-spacing:-.05em;margin-bottom:0;font-weight:900}.section-intro{max-width:510px;color:var(--muted);font-size:15px}
        .prep-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}
        .prep-main{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:34px;min-height:300px;position:relative;overflow:hidden}
        .prep-main:after{content:"01";position:absolute;right:15px;bottom:-36px;font-size:160px;line-height:1;font-weight:900;color:rgba(183,227,74,.12)}
        .prep-main h3{font-size:29px;line-height:1.3;margin:17px 0 10px;position:relative;z-index:1}.prep-main p{color:#bdc0b5;max-width:520px;position:relative;z-index:1}
        .prep-side{display:grid;gap:22px}.guide-card{background:#fff;border:1px solid var(--line);padding:25px;border-radius:var(--radius);transition:.2s}
        .guide-card:hover{border-color:var(--lime-dark);transform:translateY(-3px);box-shadow:var(--shadow)}.guide-card h3{font-size:21px;line-height:1.35;margin:12px 0 7px}.guide-card p{font-size:14px;color:var(--muted);line-height:1.75;margin-bottom:0}
        .tag{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:5px;padding:3px 8px;font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.04em}.tag-lime{color:var(--lime)}.tag-coral{color:var(--coral-dark)}
        .download-section{background:var(--paper-2);padding:88px 0}.download-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
        .download-section .section-title{margin-bottom:18px}.download-section .section-intro{max-width:560px;margin-bottom:25px}
        .download-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-bottom:24px}.meta-cell{background:var(--paper);padding:14px;border-radius:8px}.meta-cell strong{font-size:14px}
        .device-panel{background:var(--ink);border-radius:var(--radius);padding:29px;color:var(--paper);display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:center;box-shadow:var(--shadow)}
        .device{height:270px;width:145px;border:7px solid #3b3e37;border-radius:24px;background:#10110f;padding:12px;position:relative;box-shadow:inset 0 0 0 2px #777b6d}
        .device:before{content:"";display:block;width:45px;height:5px;border-radius:5px;background:#4d5148;margin:0 auto 18px}.device-screen{height:195px;background:var(--lime);border-radius:10px;padding:12px;color:var(--ink);font-size:12px;font-weight:900}.screen-line{height:8px;background:var(--ink);opacity:.72;margin:9px 0;border-radius:2px}.screen-block{height:53px;background:var(--coral);margin-top:16px;border-radius:6px}
        .device-panel h3{font-size:25px;line-height:1.3;margin:0 0 10px}.device-panel p{color:#bec2b6;font-size:14px}.system-tags{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.system-tags span{border:1px solid var(--line-dark);padding:4px 9px;border-radius:5px;font-size:12px;color:#dfe1d7}
        .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
        .step{padding:27px 22px 28px;border-right:1px solid var(--line);position:relative}.step:last-child{border-right:0}.step-number{color:var(--coral);font-size:13px;font-weight:900;letter-spacing:.1em}.step h3{font-size:19px;margin:12px 0 7px}.step p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}
        .faq-wrap{max-width:850px;margin:0 auto}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-question{width:100%;background:none;text-align:left;padding:21px 4px;display:flex;justify-content:space-between;align-items:center;font-size:17px;font-weight:800;color:var(--text)}.faq-question span:last-child{font-size:24px;color:var(--coral);font-weight:400}.faq-answer{display:none;color:var(--muted);font-size:15px;padding:0 38px 20px 4px;line-height:1.85}.faq-item.open .faq-answer{display:block}.faq-item.open .faq-question{color:var(--coral-dark)}
        .cta{background:var(--lime);padding:44px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:31px;line-height:1.25;margin:0 0 7px;letter-spacing:-.04em}.cta p{margin:0;color:#536126;font-size:15px}.cta-actions{display:flex;gap:10px;flex-wrap:wrap}.cta .btn-primary{background:var(--ink)}.cta .btn-primary:hover{background:var(--ink-2)}.cta .btn-outline{color:var(--ink);border-color:rgba(23,24,23,.4)}.cta .btn-outline:hover{border-color:var(--ink);color:var(--ink);background:rgba(255,255,255,.18)}
        .site-footer{background:var(--ink);color:var(--paper);padding:55px 0 23px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .8fr 1fr;gap:35px;padding-bottom:43px}.footer-brand p,.footer-note{color:#aeb1a6;font-size:13px;line-height:1.8;margin-top:18px}.footer-title{font-size:13px;font-weight:800;color:var(--lime);margin-bottom:15px}.footer-links{display:grid;gap:8px}.footer-links a{color:#d0d2c9;font-size:13px;transition:.2s}.footer-links a:hover{color:var(--lime);padding-left:4px}.copyright{border-top:1px solid var(--line-dark);padding-top:19px;display:flex;justify-content:space-between;gap:15px;color:#858980;font-size:12px}
        @media(max-width:1024px){.hero-grid,.download-grid{gap:38px}.main-nav a{padding-left:9px;padding-right:9px}.footer-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:1px solid var(--line)}}
        @media(max-width:767px){.container{width:min(var(--container),calc(100% - 36px))}.nav-wrap{height:68px}.brand{font-size:15px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ink);padding:12px 18px 20px;flex-direction:column;align-items:stretch;border-top:1px solid var(--line-dark)}.main-nav.open{display:flex}.main-nav a{padding:13px 14px}.main-nav .nav-download{margin:6px 0 0;text-align:center}.hero{padding:58px 0 55px}.hero:before{font-size:60px;top:30px}.hero-grid,.download-grid,.prep-grid{grid-template-columns:1fr}.hero-grid{gap:42px}h1{font-size:39px}.hero-copy{font-size:15px}.status-grid{grid-template-columns:1fr}.status-item{padding:12px 0;border-right:0;border-bottom:1px solid rgba(23,24,23,.2)}.status-item:last-child{border-bottom:0}.section,.download-section{padding:63px 0}.section-head{display:block;margin-bottom:25px}.section-intro{margin-top:15px}.section-title{font-size:31px}.device-panel{grid-template-columns:120px 1fr;gap:19px;padding:20px}.device{width:115px;height:225px}.device-screen{height:155px}.download-meta{gap:9px}.steps{grid-template-columns:1fr}.step{border-right:0!important;border-bottom:1px solid var(--line)}.step:last-child{border-bottom:0}.cta-inner{display:block}.cta h2{font-size:27px}.cta-actions{margin-top:22px}.cta-actions .btn{flex:1}.footer-grid{grid-template-columns:1fr;gap:25px}.copyright{display:block}.copyright span{display:block;margin-top:6px}}
        @media(max-width:520px){.hero-actions,.hero-actions .btn{width:100%}.terminal-body{padding:23px 19px}.terminal-body h2{font-size:27px}.qr-row{grid-template-columns:92px 1fr}.qr-box{height:92px}.device-panel{grid-template-columns:1fr}.device{margin:0 auto}.device-panel .btn{width:100%}.cta-actions{display:grid;grid-template-columns:1fr}.copyright{font-size:11px}}

/* roulang page: category3 */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --white:#fffdf8;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --radius-sm:9px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;background:var(--paper);color:var(--text);
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{
            background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:30;
            border-bottom:1px solid var(--line-dark);
        }
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{
            width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;
            border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral);
        }
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px;line-height:1}
        .page-hero{
            background:var(--ink);color:var(--paper);position:relative;overflow:hidden;padding:72px 0 78px;
        }
        .page-hero:before{
            content:"";position:absolute;width:410px;height:410px;right:-160px;top:-230px;
            border:1px solid rgba(183,227,74,.24);transform:rotate(33deg);
        }
        .page-hero:after{
            content:"";position:absolute;width:146px;height:12px;background:var(--coral);right:13%;bottom:24px;transform:rotate(-18deg);
        }
        .breadcrumb{position:relative;z-index:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#bfc2b7;font-size:13px;margin:0 0 23px;padding:0;list-style:none}
        .breadcrumb a:hover{color:var(--lime)}
        .breadcrumb .separator{color:var(--lime);font-size:16px}
        .hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:60px;align-items:end}
        .eyebrow,.section-kicker{font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;margin-bottom:18px}
        .eyebrow:before{content:"";width:31px;height:3px;background:var(--coral)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:52px;line-height:1.16;letter-spacing:-.055em;margin:0 0 20px;font-weight:900}
        .hero-copy{max-width:725px;color:#c6c8be;font-size:17px;line-height:1.9;margin:0}
        .hero-side{
            border:1px solid rgba(245,240,232,.2);background:var(--ink-2);padding:22px 23px;border-radius:var(--radius);
            position:relative;
        }
        .hero-side:before{content:"";position:absolute;top:0;left:22px;right:22px;border-top:3px solid var(--lime)}
        .hero-side strong{display:block;font-size:17px;line-height:1.4;margin:9px 0 5px}
        .hero-side p{font-size:13px;line-height:1.65;color:#bfc2b7;margin:0}
        .status-dot{display:inline-flex;align-items:center;gap:7px;color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.08em}
        .status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime)}
        .btn{
            min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;
            gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s,color .2s;
        }
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);color:#fff;transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;color:var(--ink);transform:translateY(-2px)}
        .btn-outline{color:var(--paper);border:1px solid rgba(245,240,232,.35);background:transparent}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime)}
        .section{padding:92px 0}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}
        .section-kicker{color:var(--coral);margin-bottom:10px}
        .section-title{font-size:38px;line-height:1.2;letter-spacing:-.05em;margin:0;font-weight:900}
        .section-intro{max-width:510px;color:var(--muted);font-size:15px;line-height:1.8;margin:0}
        .filter-row{
            display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:18px 0 26px;border-bottom:1px solid var(--line);
        }
        .filter-label{font-size:13px;color:var(--muted);font-weight:800;margin-right:4px}
        .filter-chip{
            border:1px solid var(--line);background:var(--white);color:var(--text);border-radius:6px;padding:7px 12px;
            font-size:13px;font-weight:800;transition:.2s;
        }
        .filter-chip:hover,.filter-chip.active{background:var(--ink);border-color:var(--ink);color:var(--lime)}
        .news-grid{display:grid;grid-template-columns:minmax(0,1fr) 284px;gap:45px;align-items:start;margin-top:34px}
        .news-stage{min-width:0}
        .news-stage-head{
            display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:16px;border-bottom:2px solid var(--ink);
        }
        .news-stage-head strong{font-size:18px}
        .news-stage-head span{font-size:12px;color:var(--muted);font-weight:800}
        .empty-news{
            min-height:332px;background:var(--white);border:1px dashed rgba(37,38,35,.28);border-radius:var(--radius);
            display:flex;align-items:center;padding:42px;margin-top:20px;position:relative;overflow:hidden;
        }
        .empty-news:after{
            content:"NEWS";font-size:108px;font-weight:900;letter-spacing:-.1em;color:rgba(37,38,35,.045);
            position:absolute;right:-9px;bottom:-45px;pointer-events:none;
        }
        .empty-icon{
            flex:0 0 52px;width:52px;height:52px;border-radius:10px;background:var(--lime);display:grid;place-items:center;
            color:var(--ink);font-size:23px;font-weight:900;margin-right:22px;box-shadow:5px 5px 0 var(--coral);
        }
        .empty-news h2{font-size:25px;line-height:1.35;margin:0 0 9px;font-weight:900}
        .empty-news p{max-width:490px;color:var(--muted);font-size:15px;line-height:1.8;margin:0}
        .news-aside{border-left:1px solid var(--line);padding-left:28px}
        .aside-block{padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid var(--line)}
        .aside-block:last-child{border-bottom:0;margin:0;padding:0}
        .aside-title{display:flex;align-items:center;gap:9px;font-weight:900;font-size:17px;margin-bottom:13px}
        .aside-title:before{content:"";width:8px;height:8px;background:var(--coral)}
        .topic-list{list-style:none;margin:0;padding:0}
        .topic-list li{border-bottom:1px solid var(--line)}
        .topic-list li:last-child{border-bottom:0}
        .topic-list a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:11px 0;font-size:14px;font-weight:700;transition:.2s}
        .topic-list a span{color:var(--coral);font-size:17px;transition:.2s}
        .topic-list a:hover{color:var(--coral-dark)}
        .topic-list a:hover span{transform:translateX(4px)}
        .download-mini{background:var(--ink);color:var(--paper);padding:22px;border-radius:12px}
        .download-mini .tag{color:var(--lime);border:1px solid var(--lime);font-size:10px}
        .download-mini h3{font-size:21px;line-height:1.35;margin:13px 0 9px;font-weight:900}
        .download-mini p{font-size:13px;color:#c1c4ba;line-height:1.7;margin-bottom:18px}
        .download-mini .btn{width:100%;min-height:44px}
        .updates-band{background:var(--paper-2);padding:76px 0}
        .update-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:58px;align-items:start}
        .update-layout .section-title{font-size:32px}
        .update-note{color:var(--muted);font-size:15px;margin:15px 0 0}
        .update-steps{position:relative;margin:0;padding:0;list-style:none}
        .update-steps:before{content:"";position:absolute;left:18px;top:28px;bottom:28px;border-left:1px dashed rgba(37,38,35,.32)}
        .update-step{position:relative;display:grid;grid-template-columns:58px 1fr;gap:20px;padding:0 0 27px}
        .update-step:last-child{padding-bottom:0}
        .step-number{
            width:37px;height:37px;border-radius:50%;background:var(--ink);color:var(--lime);display:grid;place-items:center;
            font-size:13px;font-weight:900;position:relative;z-index:1;
        }
        .step-content{padding-top:2px}
        .step-content h3{font-size:18px;line-height:1.4;margin:0 0 5px;font-weight:900}
        .step-content p{font-size:14px;line-height:1.75;color:var(--muted);margin:0}
        .info-section{background:var(--ink);color:var(--paper);padding:86px 0}
        .info-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
        .info-section .section-kicker{color:var(--lime)}
        .info-section .section-title{font-size:37px}
        .info-section .section-intro{color:#c3c6bb;margin-top:17px}
        .notice-board{border:1px solid var(--line-dark);border-radius:var(--radius);overflow:hidden}
        .notice-row{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:17px 21px;border-bottom:1px solid var(--line-dark)}
        .notice-row:last-child{border-bottom:0}
        .notice-label{color:var(--lime);font-size:12px;letter-spacing:.08em;font-weight:900}
        .notice-text{font-size:14px;line-height:1.7;color:#e4e4dc}
        .faq-section{padding:92px 0}
        .faq-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:70px;align-items:start}
        .faq-layout .section-intro{margin-top:16px}
        .faq-list{border-top:1px solid var(--line)}
        .faq-item{border-bottom:1px solid var(--line)}
        .faq-question{
            width:100%;background:transparent;color:var(--text);display:flex;align-items:center;justify-content:space-between;
            text-align:left;padding:21px 0;gap:20px;font-size:17px;line-height:1.5;font-weight:900;
        }
        .faq-question span:last-child{
            width:27px;height:27px;flex:0 0 27px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;
            color:var(--coral);font-size:19px;line-height:1;transition:.2s;
        }
        .faq-answer{display:none;padding:0 48px 21px 0;color:var(--muted);font-size:15px;line-height:1.85}
        .faq-item.open .faq-answer{display:block}
        .faq-item.open .faq-question span:last-child{background:var(--ink);border-color:var(--ink);color:var(--lime);transform:rotate(45deg)}
        .cta-section{padding:0 0 92px}
        .cta-box{
            background:var(--lime);color:var(--ink);padding:43px 48px;border-radius:var(--radius);display:flex;
            align-items:center;justify-content:space-between;gap:30px;position:relative;overflow:hidden;
        }
        .cta-box:after{content:"PG";position:absolute;right:24px;bottom:-68px;font-size:188px;line-height:1;font-weight:900;color:rgba(23,24,23,.08)}
        .cta-copy{position:relative;z-index:1}
        .cta-copy h2{font-size:30px;line-height:1.25;letter-spacing:-.04em;margin:0 0 8px;font-weight:900}
        .cta-copy p{margin:0;font-size:15px;max-width:580px}
        .cta-actions{position:relative;z-index:1;display:flex;gap:11px;flex-wrap:wrap}
        .cta-actions .btn-primary{background:var(--ink)}
        .cta-actions .btn-primary:hover{background:var(--ink-3)}
        .cta-actions .btn-outline{border-color:rgba(23,24,23,.42);color:var(--ink)}
        .cta-actions .btn-outline:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}
        .site-footer{background:#111210;color:var(--paper);padding:65px 0 24px}
        .footer-grid{display:grid;grid-template-columns:1.35fr .75fr .8fr 1.1fr;gap:42px}
        .footer-brand p{font-size:14px;line-height:1.8;color:#aeb1a7;margin:18px 0 0;max-width:320px}
        .footer-title{color:var(--lime);font-size:13px;font-weight:900;letter-spacing:.06em;margin-bottom:15px}
        .footer-links{display:flex;flex-direction:column;gap:8px}
        .footer-links a{color:#c2c4bc;font-size:14px;transition:.2s}
        .footer-links a:hover{color:var(--lime);transform:translateX(3px)}
        .footer-note{color:#aeb1a7;font-size:13px;line-height:1.8;margin:0}
        .copyright{border-top:1px solid var(--line-dark);margin-top:48px;padding-top:20px;color:#85887e;font-size:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
        @media (max-width:1024px){
            .nav-wrap{gap:18px}.main-nav a{padding:9px 9px}
            .hero-layout{gap:35px}.news-grid{gap:28px}.info-grid,.faq-layout{gap:45px}
            .footer-grid{grid-template-columns:1.25fr 1fr 1fr}
            .footer-grid>div:last-child{grid-column:1/-1}
        }
        @media (max-width:768px){
            .container{width:min(var(--container),calc(100% - 36px))}
            .nav-wrap{height:70px;position:relative}.brand{font-size:15px}.brand-mark{width:25px;height:25px}
            .menu-toggle{display:block;margin-left:auto}
            .main-nav{
                display:none;position:absolute;top:69px;left:-18px;right:-18px;background:var(--ink);
                padding:12px 18px 20px;border-bottom:1px solid var(--line-dark);box-shadow:0 15px 25px rgba(0,0,0,.18);
                flex-direction:column;align-items:stretch;gap:4px;
            }
            .main-nav.show{display:flex}.main-nav a{padding:12px 14px}.nav-download{margin:8px 0 0;text-align:center}
            .page-hero{padding:55px 0 59px}.hero-layout{grid-template-columns:1fr;gap:28px}.hero-side{max-width:470px}
            h1{font-size:40px}.section{padding:65px 0}.section-head{display:block;margin-bottom:26px}.section-intro{margin-top:14px}
            .section-title{font-size:31px}.news-grid{grid-template-columns:1fr}.news-aside{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}
            .updates-band{padding:61px 0}.update-layout{grid-template-columns:1fr;gap:32px}
            .info-section{padding:65px 0}.info-grid,.faq-layout{grid-template-columns:1fr;gap:32px}
            .faq-layout .section-intro{max-width:540px}.cta-section{padding-bottom:65px}.cta-box{padding:34px;display:block}.cta-actions{margin-top:24px}
            .footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}
        }
        @media (max-width:520px){
            body{font-size:15px}.container{width:calc(100% - 32px)}
            h1{font-size:34px}.hero-copy{font-size:15px}.page-hero{padding:46px 0 51px}
            .hero-side{padding:20px}.section{padding:53px 0}.section-title{font-size:28px}
            .filter-row{gap:8px}.filter-label{width:100%;margin-bottom:2px}.filter-chip{padding:6px 10px;font-size:12px}
            .empty-news{padding:29px 22px;align-items:flex-start;min-height:290px}.empty-icon{margin-right:15px;width:43px;height:43px;flex-basis:43px}
            .empty-news h2{font-size:21px}.empty-news p{font-size:14px}.notice-row{grid-template-columns:1fr;gap:4px;padding:16px}
            .faq-question{font-size:16px;padding:18px 0}.faq-answer{padding-right:0;font-size:14px}.cta-box{padding:29px 23px}.cta-copy h2{font-size:25px}
            .cta-actions{display:grid;grid-template-columns:1fr}.cta-actions .btn{width:100%}.footer-grid{grid-template-columns:1fr;gap:29px}.footer-brand{grid-column:auto}
            .copyright{display:block;margin-top:35px}.copyright span{display:block;margin-bottom:5px}
        }

/* roulang page: category2 */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            background:var(--paper);
            color:var(--text);
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;
            line-height:1.8;
            -webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line-dark)}
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral)}
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px}
        .page-hero{background:var(--ink);color:var(--paper);padding:72px 0 78px;position:relative;overflow:hidden}
        .page-hero:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(183,227,74,.18);right:-120px;top:-210px;transform:rotate(35deg)}
        .page-hero:after{content:"";position:absolute;width:170px;height:12px;background:var(--coral);left:5%;bottom:24px;transform:rotate(-16deg)}
        .breadcrumb{color:#9da096;font-size:13px;margin-bottom:28px;position:relative;z-index:1}
        .breadcrumb a:hover{color:var(--lime)}
        .breadcrumb span{margin:0 9px;color:var(--coral)}
        .hero-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;position:relative;z-index:1}
        .eyebrow,.section-kicker{font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;margin-bottom:20px}
        .eyebrow:before{content:"";width:32px;height:3px;background:var(--coral)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(38px,5vw,62px);line-height:1.18;letter-spacing:-.06em;margin-bottom:22px}
        .hero-text{max-width:650px;color:#c6c8be;font-size:17px;line-height:1.9}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}
        .btn{min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s}
        .btn:focus-visible,.main-nav a:focus-visible,.faq-question:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;transform:translateY(-2px)}
        .btn-outline{color:var(--paper);border:1px solid rgba(245,240,232,.35);background:transparent}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime)}
        .download-card{background:var(--paper);color:var(--text);border-radius:var(--radius);padding:27px;box-shadow:10px 10px 0 rgba(255,118,92,.85);position:relative}
        .download-card:before{content:"APP";position:absolute;right:22px;top:18px;color:var(--coral);font-size:12px;font-weight:900;letter-spacing:.15em}
        .card-label{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.12em}
        .download-card h2{font-size:29px;line-height:1.25;margin:10px 0 21px;letter-spacing:-.04em}
        .status-row{display:flex;align-items:center;gap:9px;padding:13px 0;border-top:1px solid var(--line);font-size:14px}
        .status-dot{width:9px;height:9px;border-radius:50%;background:var(--lime-dark);box-shadow:0 0 0 4px rgba(142,184,43,.15)}
        .download-card .btn{width:100%;margin-top:18px}
        .section{padding:88px 0}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}
        .section-kicker{color:var(--coral);margin-bottom:10px}
        .section-title{font-size:38px;line-height:1.2;letter-spacing:-.05em;margin-bottom:0}
        .section-intro{max-width:520px;color:var(--muted);font-size:15px}
        .version-strip{background:var(--lime);padding:24px 0}
        .version-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
        .version-item{padding:8px 28px;border-right:1px solid rgba(23,24,23,.2)}
        .version-item:first-child{padding-left:0}
        .version-item:last-child{border-right:0}
        .version-item small{display:block;color:#536126;font-size:12px;font-weight:800}
        .version-item strong{font-size:20px;line-height:1.35}
        .prep-area{background:var(--paper)}
        .prep-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:start}
        .intro-block p{color:var(--muted);font-size:16px}
        .note-box{margin-top:25px;padding:20px;background:var(--ink);color:var(--paper);border-left:5px solid var(--coral);font-size:14px}
        .steps{border-top:1px solid var(--line)}
        .step{display:grid;grid-template-columns:58px 1fr;gap:22px;padding:23px 0;border-bottom:1px solid var(--line)}
        .step-no{width:38px;height:38px;background:var(--ink);color:var(--lime);border-radius:7px;display:grid;place-items:center;font-weight:900}
        .step h3{font-size:20px;margin:0 0 5px}
        .step p{margin:0;color:var(--muted);font-size:14px}
        .system-section{background:var(--paper-2)}
        .system-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
        .system-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;transition:.2s}
        .system-card:hover{border-color:var(--lime-dark);transform:translateY(-3px);box-shadow:var(--shadow)}
        .system-card h3{font-size:23px;margin:0 0 9px}
        .system-card p{font-size:14px;color:var(--muted);margin-bottom:19px}
        .tag{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:5px;padding:3px 8px;font-size:11px;line-height:1.4;font-weight:800}
        .tag-lime{color:var(--lime-dark)}
        .tag-coral{color:var(--coral-dark)}
        .qr-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
        .qr-box{min-height:205px;background:var(--ink);color:var(--paper);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;position:relative;overflow:hidden}
        .qr-box:after{content:"";position:absolute;width:130px;height:130px;border:2px dashed rgba(183,227,74,.5);transform:rotate(12deg)}
        .qr-box span{position:relative;z-index:1;color:var(--lime);font-size:13px;font-weight:800}
        .entry-box{border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:28px}
        .entry-box h3{font-size:22px;margin-bottom:9px}
        .entry-box p{color:var(--muted);font-size:14px}
        .entry-box .btn{width:100%;margin-top:8px}
        .faq-section{background:var(--paper)}
        .faq-list{max-width:900px;border-top:1px solid var(--line);margin:0 auto}
        .faq-item{border-bottom:1px solid var(--line)}
        .faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;background:none;padding:21px 4px;color:var(--text);font-weight:800;font-size:17px}
        .faq-question span:last-child{font-size:24px;color:var(--coral);font-weight:400;transition:.2s}
        .faq-answer{display:none;padding:0 40px 21px 4px;color:var(--muted);font-size:14px}
        .faq-item.open .faq-answer{display:block}
        .faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
        .cta{background:var(--lime);padding:52px 0}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
        .cta h2{font-size:32px;line-height:1.25;letter-spacing:-.05em;margin-bottom:7px}
        .cta p{margin:0;color:#536126;font-size:15px}
        .cta-actions{display:flex;gap:10px;flex-wrap:wrap}
        .cta .btn-outline{color:var(--ink);border-color:rgba(23,24,23,.38)}
        .cta .btn-outline:hover{border-color:var(--ink);background:rgba(23,24,23,.06)}
        .site-footer{background:var(--ink);color:var(--paper);padding:62px 0 24px}
        .footer-grid{display:grid;grid-template-columns:1.5fr .75fr .85fr 1.2fr;gap:40px;padding-bottom:47px}
        .footer-brand p,.footer-note{color:#aeb1a6;font-size:13px;line-height:1.8;margin:18px 0 0}
        .footer-title{font-size:13px;color:var(--lime);font-weight:800;margin-bottom:15px}
        .footer-links{display:flex;flex-direction:column;gap:8px;color:#c4c6bd;font-size:13px}
        .footer-links a{transition:.2s}
        .footer-links a:hover{color:var(--lime);padding-left:4px}
        .copyright{border-top:1px solid var(--line-dark);padding-top:19px;display:flex;justify-content:space-between;gap:20px;color:#858980;font-size:12px}
        @media(max-width:1024px){
            .hero-layout{gap:40px}
            .prep-grid{gap:40px}
            .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
            .footer-grid>div:last-child{grid-column:1/-1}
        }
        @media(max-width:768px){
            .container{width:min(var(--container),calc(100% - 36px))}
            .nav-wrap{height:70px}
            .menu-toggle{display:block;margin-left:auto}
            .main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--ink);padding:12px 18px 20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line-dark)}
            .main-nav.is-open{display:flex}
            .main-nav a{padding:13px 14px}
            .nav-download{margin:6px 0 0!important;text-align:center}
            .hero-layout,.prep-grid{grid-template-columns:1fr}
            .page-hero{padding:53px 0 65px}
            .hero-layout{gap:38px}
            .section{padding:65px 0}
            .section-head{display:block;margin-bottom:25px}
            .section-intro{margin-top:14px}
            .version-item{padding:8px 13px}
            .version-item:first-child{padding-left:0}
            .version-item strong{font-size:16px}
            .qr-layout,.system-grid{grid-template-columns:1fr}
            .cta-inner{display:block}
            .cta-actions{margin-top:23px}
            .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
            .footer-grid>div:last-child{grid-column:1/-1}
        }
        @media(max-width:520px){
            h1{font-size:38px}
            .hero-actions,.cta-actions{display:grid;grid-template-columns:1fr}
            .hero-actions .btn,.cta-actions .btn{width:100%}
            .version-grid{grid-template-columns:1fr}
            .version-item,.version-item:first-child{border-right:0;border-bottom:1px solid rgba(23,24,23,.2);padding:12px 0}
            .version-item:last-child{border-bottom:0}
            .download-card{padding:23px;box-shadow:6px 6px 0 rgba(255,118,92,.85)}
            .footer-grid{grid-template-columns:1fr}
            .footer-grid>div:last-child{grid-column:auto}
            .copyright{display:block}
            .copyright span{display:block;margin-top:6px}
        }

/* roulang page: category3 */
:root{
            --ink:#171817;
            --ink-2:#242622;
            --ink-3:#30332e;
            --lime:#b7e34a;
            --lime-dark:#8eb82b;
            --coral:#ff765c;
            --coral-dark:#d95643;
            --paper:#f5f0e8;
            --paper-2:#ebe5da;
            --text:#252623;
            --muted:#75776d;
            --line:rgba(37,38,35,.14);
            --line-dark:rgba(245,240,232,.16);
            --radius:16px;
            --shadow:0 14px 36px rgba(23,24,23,.10);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;background:var(--paper);color:var(--text);
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line-dark)}
        .nav-wrap{height:78px;display:flex;align-items:center;gap:30px}
        .brand{display:inline-flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
        .brand-mark{width:27px;height:27px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:15px;box-shadow:4px 4px 0 var(--coral)}
        .main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
        .main-nav a{color:#d4d5ce;padding:10px 14px;border-radius:7px;font-size:14px;font-weight:700;transition:.2s ease}
        .main-nav a:hover,.main-nav a.active{color:var(--lime);background:rgba(183,227,74,.09)}
        .nav-download{background:var(--coral)!important;color:#fff!important;padding:10px 17px!important;margin-left:9px}
        .nav-download:hover{background:var(--coral-dark)!important;transform:translateY(-2px)}
        .menu-toggle{display:none;background:none;color:var(--paper);font-size:25px;padding:7px}
        .page-hero{background:var(--ink);color:var(--paper);padding:68px 0 76px;position:relative;overflow:hidden}
        .page-hero:after{content:"NEWS";position:absolute;right:-20px;bottom:-45px;color:rgba(183,227,74,.08);font-size:145px;font-weight:900;line-height:1;letter-spacing:-.08em}
        .hero-inner{position:relative;z-index:1;max-width:850px}
        .crumbs{color:#aeb2a7;font-size:13px;margin-bottom:28px}
        .crumbs a:hover{color:var(--lime)}
        .crumbs span{margin:0 9px;color:var(--coral)}
        .eyebrow,.section-kicker{font-size:12px;line-height:1.2;letter-spacing:.14em;font-weight:800}
        .eyebrow{color:var(--lime);display:flex;align-items:center;gap:10px;margin-bottom:20px}
        .eyebrow:before{content:"";width:32px;height:3px;background:var(--coral)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(38px,5vw,62px);line-height:1.16;letter-spacing:-.06em;margin-bottom:22px;font-weight:900}
        .hero-summary{color:#c6c8be;max-width:700px;font-size:17px;line-height:1.9;margin-bottom:30px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
        .btn{min-height:48px;padding:11px 20px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,border-color .2s}
        .btn:focus-visible,.main-nav a:focus-visible,.faq-question:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:var(--coral-dark);transform:translateY(-2px)}
        .btn-lime{background:var(--lime);color:var(--ink)}
        .btn-lime:hover{background:#c9ee65;transform:translateY(-2px)}
        .btn-outline{color:var(--paper);border:1px solid rgba(245,240,232,.35);background:transparent}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime)}
        .section{padding:88px 0}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}
        .section-kicker{color:var(--coral);margin-bottom:10px}
        .section-title{font-size:38px;line-height:1.2;letter-spacing:-.05em;margin-bottom:0;font-weight:900}
        .section-intro{max-width:520px;color:var(--muted);font-size:15px;margin-bottom:0}
        .topic-bar{background:var(--lime);padding:17px 22px;display:flex;align-items:center;gap:14px;overflow:auto;margin-top:-1px}
        .topic-label{font-size:13px;font-weight:900;white-space:nowrap}
        .topic-filter{border:1px solid rgba(23,24,23,.22);background:rgba(255,255,255,.22);padding:7px 13px;border-radius:5px;font-size:13px;font-weight:700;white-space:nowrap;transition:.2s}
        .topic-filter:hover,.topic-filter.active{background:var(--ink);color:var(--lime);border-color:var(--ink)}
        .news-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
        .news-feature{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:34px;min-height:340px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
        .news-feature:after{content:"01";position:absolute;right:20px;bottom:-25px;font-size:150px;line-height:1;font-weight:900;color:rgba(183,227,74,.1)}
        .feature-top{display:flex;justify-content:space-between;gap:20px;position:relative;z-index:1}
        .tag{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:5px;padding:3px 8px;font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.04em}
        .tag-lime{color:var(--lime)}
        .tag-coral{color:var(--coral)}
        .news-feature h2{font-size:30px;line-height:1.35;max-width:580px;margin:28px 0 13px;position:relative;z-index:1}
        .news-feature p{color:#bdc0b5;max-width:600px;font-size:15px;position:relative;z-index:1}
        .news-date{font-size:12px;color:#9da197;white-space:nowrap}
        .feature-link{color:var(--lime);font-size:14px;font-weight:800;position:relative;z-index:1;display:inline-block;margin-top:18px}
        .feature-link span{margin-left:8px;transition:.2s}
        .feature-link:hover span{margin-left:13px}
        .news-list{margin-top:18px;border-top:1px solid var(--line)}
        .news-row{display:grid;grid-template-columns:78px 1fr auto;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:.2s}
        .news-row:hover{padding-left:8px;background:rgba(183,227,74,.08)}
        .row-number{font-size:26px;font-weight:900;color:var(--lime-dark)}
        .news-row h3{font-size:18px;line-height:1.4;margin:0 0 5px}
        .news-row p{font-size:14px;color:var(--muted);margin:0;line-height:1.65}
        .row-meta{font-size:12px;color:var(--muted);white-space:nowrap}
        .sidebar{display:flex;flex-direction:column;gap:18px}
        .side-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
        .side-card.dark{background:var(--ink-2);color:var(--paper);border-color:transparent}
        .side-title{font-size:18px;font-weight:900;margin-bottom:16px}
        .side-links{display:flex;flex-direction:column;gap:3px}
        .side-links a{padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:700;display:flex;justify-content:space-between}
        .side-links a:last-child{border-bottom:0}
        .side-links a:hover{color:var(--coral)}
        .side-card p{font-size:14px;color:var(--muted);line-height:1.75;margin-bottom:18px}
        .side-card.dark p{color:#bdc0b5}
        .side-card .btn{width:100%}
        .update-strip{background:var(--paper-2);padding:76px 0}
        .update-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
        .update-block{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:27px}
        .update-block h3{font-size:22px;margin-bottom:10px}
        .update-block p{color:var(--muted);font-size:14px;margin-bottom:20px}
        .status-list{display:grid;gap:10px}
        .status-item{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px;font-size:14px}
        .status-item strong{font-size:13px}
        .status-dot{width:8px;height:8px;background:var(--lime-dark);border-radius:50%;display:inline-block;margin-right:7px}
        .timeline{max-width:850px;margin:0 auto;border-left:2px solid var(--lime-dark);padding-left:34px}
        .timeline-item{position:relative;padding:4px 0 35px}
        .timeline-item:last-child{padding-bottom:0}
        .timeline-item:before{content:"";position:absolute;left:-42px;top:10px;width:14px;height:14px;background:var(--coral);border:4px solid var(--paper);box-shadow:0 0 0 1px var(--coral);border-radius:50%}
        .timeline-label{color:var(--coral-dark);font-size:12px;font-weight:900;letter-spacing:.08em}
        .timeline h3{font-size:22px;margin:7px 0 5px}
        .timeline p{color:var(--muted);font-size:15px;margin:0;max-width:680px}
        .faq-section{background:var(--ink-2);color:var(--paper)}
        .faq-section .section-kicker{color:var(--lime)}
        .faq-section .section-intro{color:#bfc2b8}
        .faq-list{max-width:850px;border-top:1px solid var(--line-dark)}
        .faq-item{border-bottom:1px solid var(--line-dark)}
        .faq-question{width:100%;background:transparent;color:var(--paper);padding:21px 0;text-align:left;display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:17px}
        .faq-question span:last-child{color:var(--lime);font-size:23px;transition:.2s}
        .faq-answer{display:none;color:#bdc0b5;font-size:14px;padding:0 45px 20px 0}
        .faq-item.open .faq-answer{display:block}
        .faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
        .cta{background:var(--lime);padding:52px 0}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
        .cta h2{font-size:32px;line-height:1.25;margin:0 0 7px;font-weight:900;letter-spacing:-.04em}
        .cta p{margin:0;color:#536126;font-size:15px}
        .cta-actions{display:flex;gap:10px;flex-wrap:wrap}
        .cta .btn-outline{color:var(--ink);border-color:rgba(23,24,23,.4)}
        .cta .btn-outline:hover{border-color:var(--ink);background:rgba(23,24,23,.08);color:var(--ink)}
        .site-footer{background:var(--ink);color:var(--paper);padding:58px 0 25px}
        .footer-grid{display:grid;grid-template-columns:1.5fr .8fr .9fr 1.2fr;gap:38px;padding-bottom:42px}
        .footer-brand p,.footer-note{color:#aeb2a7;font-size:13px;line-height:1.8;margin:18px 0 0}
        .footer-title{color:var(--lime);font-size:13px;font-weight:900;margin-bottom:13px}
        .footer-links{display:flex;flex-direction:column;gap:6px}
        .footer-links a{color:#c9cbc3;font-size:13px;transition:.2s}
        .footer-links a:hover{color:var(--lime);padding-left:4px}
        .copyright{border-top:1px solid var(--line-dark);padding-top:19px;display:flex;justify-content:space-between;gap:15px;color:#858a7f;font-size:12px}
        @media(max-width:1024px){
            .hero-inner{max-width:760px}.news-layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
        }
        @media(max-width:768px){
            .container{width:min(var(--container),calc(100% - 36px))}
            .nav-wrap{height:68px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;padding:12px 18px 20px;background:var(--ink);border-top:1px solid var(--line-dark);flex-direction:column;align-items:stretch;margin:0}.main-nav.open{display:flex}.main-nav a{padding:13px 14px}.nav-download{margin:6px 0 0!important;text-align:center}
            .page-hero{padding:48px 0 58px}h1{font-size:40px}.section{padding:62px 0}.section-head{display:block}.section-intro{margin-top:15px}.news-feature{padding:25px;min-height:310px}.news-row{grid-template-columns:45px 1fr;gap:13px}.row-meta{grid-column:2}.sidebar,.update-grid{grid-template-columns:1fr}.topic-bar{padding-left:18px}.cta-inner{display:block}.cta-actions{margin-top:23px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.copyright{display:block}.copyright span{display:block;margin-top:5px}
        }
        @media(max-width:520px){
            .container{width:calc(100% - 32px)}h1{font-size:34px}.hero-summary{font-size:15px}.hero-actions .btn{width:100%}.news-feature h2{font-size:24px}.news-row h3{font-size:16px}.news-row p{font-size:13px}.footer-grid{grid-template-columns:1fr}.cta h2{font-size:27px}
        }

/* 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}
