/* roulang page: index */
:root{
            --ink:#17151d;
            --night:#211d2a;
            --night-2:#2c2638;
            --panel:#332c41;
            --paper:#f5f2ea;
            --paper-2:#ebe7dc;
            --lime:#c8f05a;
            --lime-dark:#9aba35;
            --orange:#ff835d;
            --white:#fffdf7;
            --muted:#a9a2b5;
            --text:#25202d;
            --line:rgba(255,255,255,.13);
            --line-dark:rgba(37,32,45,.14);
            --radius:18px;
            --shadow:0 18px 45px rgba(16,12,24,.2);
            --ease:all .25s ease;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:var(--paper);color:var(--text);line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        :focus-visible{outline:3px solid var(--orange);outline-offset:4px}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:32px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta{background:var(--lime);color:var(--ink);font-weight:800;padding:11px 17px;border-radius:10px;font-size:14px;transition:var(--ease)}
        .header-cta:hover{background:#e0ff83;transform:translateY(-2px)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .hero{background:var(--night);color:var(--white);padding:78px 0 40px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 78%);pointer-events:none}
        .hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center;position:relative}
        .eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        .hero h1{font-size:clamp(38px,5vw,60px);line-height:1.18;letter-spacing:-2px;margin:20px 0 21px;max-width:650px}
        .hero h1 span{color:var(--lime)}
        .hero-copy{font-size:17px;color:#c9c2d1;max-width:590px;line-height:1.9}
        .actions{display:flex;gap:13px;flex-wrap:wrap;margin:31px 0 35px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:13px 20px;font-weight:800;transition:var(--ease);border:1px solid transparent}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .btn-outline{border-color:rgba(255,255,255,.28);color:var(--white)}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.06)}
        .hero-notes{display:flex;gap:25px;flex-wrap:wrap}
        .hero-note{font-size:12px;color:var(--muted);padding-left:13px;border-left:1px solid var(--orange)}
        .hero-note strong{display:block;color:var(--white);font-size:14px;margin-bottom:2px}
        .console{background:#17141d;border:1px solid rgba(200,240,90,.35);border-radius:24px;padding:16px;box-shadow:var(--shadow);transform:rotate(1deg)}
        .console-top{display:flex;justify-content:space-between;align-items:center;color:#9d96aa;font:12px monospace;padding:4px 5px 14px}
        .signal{display:flex;align-items:center;gap:7px;color:var(--lime)}
        .signal i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px var(--lime)}
        .screen{border-radius:15px;background:linear-gradient(145deg,#4b3d5b,#292333);min-height:285px;padding:23px;position:relative;overflow:hidden}
        .screen:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 5px,rgba(255,255,255,.025) 6px);pointer-events:none}
        .screen-title{font-size:13px;color:#cbc4d4;display:flex;justify-content:space-between}
        .screen-title b{color:var(--lime);font-size:17px}
        .game-art{margin:24px 0 18px;height:112px;border-radius:12px;background:linear-gradient(120deg,#ff805c,#d84474 48%,#6047a3);display:flex;align-items:flex-end;padding:15px;color:white;font-size:25px;font-weight:900;letter-spacing:2px}
        .screen-row{display:flex;gap:8px}
        .screen-chip{background:rgba(255,255,255,.1);color:#e7e2eb;border-radius:7px;padding:6px 9px;font:11px monospace}
        .screen-chip.on{background:var(--lime);color:var(--ink)}
        .control-bar{display:flex;align-items:center;justify-content:space-between;padding:17px 4px 2px}
        .controller{display:flex;gap:8px}
        .controller i{width:26px;height:26px;border:1px solid #635870;border-radius:50%}
        .controller i:first-child{border-radius:7px;background:#443a4e}
        .progress{height:5px;width:42%;background:#4d4557;border-radius:5px;overflow:hidden}
        .progress b{display:block;width:68%;height:100%;background:var(--orange)}
        .status-strip{margin-top:45px;padding:15px 0 0;border-top:1px solid var(--line);display:flex;gap:30px;flex-wrap:wrap}
        .status-strip span{font-size:12px;color:#aba4b6}.status-strip b{color:var(--white);margin-left:7px}
        .section{padding:94px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:31px}
        .section-head h2{font-size:34px;line-height:1.25;letter-spacing:-1px;margin-top:9px}
        .section-head p{max-width:475px;color:#706878;font-size:15px}
        .kicker{color:#788f2b;letter-spacing:.4px}.kicker:before{background:var(--orange)}
        .entry-layout{display:grid;grid-template-columns:1.55fr .85fr;gap:18px}
        .entry-main,.entry-small{border-radius:var(--radius);padding:31px;position:relative;overflow:hidden;transition:var(--ease)}
        .entry-main{background:var(--night);color:var(--white);min-height:265px}
        .entry-main:hover,.entry-small:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
        .entry-main:after{content:"PG";position:absolute;right:26px;bottom:-25px;color:rgba(200,240,90,.08);font-size:170px;font-weight:900}
        .entry-main h3,.entry-small h3{font-size:23px;margin:15px 0 8px;position:relative}
        .entry-main p,.entry-small p{font-size:14px;max-width:440px;color:#bdb5c8;position:relative}
        .entry-main .btn{margin-top:23px;position:relative}
        .entry-side{display:grid;gap:18px}
        .entry-small{background:var(--paper-2);min-height:123px;padding:24px}
        .entry-small.orange{background:var(--orange);color:var(--ink)}
        .entry-small p{color:#4c3030}
        .entry-small h3{font-size:19px;margin-top:7px}
        .mini-icon{font-size:22px;color:var(--lime-dark)}
        .entry-small.orange .mini-icon{color:var(--ink)}
        .feature-section{background:var(--night-2);color:var(--white);position:relative;overflow:hidden}
        .feature-section .section-head p{color:#b8b0c2}
        .feature-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center}
        .device-board{border:1px solid var(--line);border-radius:20px;padding:23px;background:#211c2b}
        .device-line{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 3px;color:#bcb4c5;font-size:14px}
        .device-line:last-child{border:0}.device-line b{color:var(--lime);font-family:monospace}
        .steps{display:grid;gap:20px}
        .step{display:grid;grid-template-columns:45px 1fr;gap:16px;align-items:start}
        .step-no{width:38px;height:38px;border:1px solid var(--lime);color:var(--lime);border-radius:10px;display:grid;place-items:center;font:700 14px monospace}
        .step h3{font-size:18px;margin-bottom:3px}.step p{font-size:14px;color:#b6adbf}
        .news-section{background:var(--paper-2)}
        .news-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
        .feature-news{background:var(--orange);border-radius:var(--radius);padding:30px;min-height:265px;display:flex;flex-direction:column;justify-content:space-between}
        .feature-news h3{font-size:26px;line-height:1.35;max-width:490px}
        .feature-news p{font-size:14px;max-width:470px;color:#513338}
        .news-list{background:var(--white);border-radius:var(--radius);padding:11px 22px}
        .news-item{display:block;padding:17px 0;border-bottom:1px solid var(--line-dark);transition:var(--ease)}
        .news-item:last-child{border-bottom:0}
        .news-item:hover{padding-left:7px}.news-meta{display:flex;gap:10px;align-items:center;color:#7c7482;font-size:12px;margin-bottom:4px}
        .tag{background:rgba(200,240,90,.17);color:#587117;border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700}
        .news-item h4{font-size:16px;line-height:1.45}.news-item p{color:#736b78;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .empty-state{padding:38px 10px;color:#817887;text-align:center;font-size:14px}
        .app-section{padding:94px 0}
        .app-panel{background:var(--night);color:var(--white);border-radius:24px;padding:46px 54px;display:grid;grid-template-columns:1fr .72fr;gap:40px;align-items:center;overflow:hidden}
        .app-panel h2{font-size:34px;line-height:1.3;margin:13px 0}
        .app-panel p{color:#bdb5c8;font-size:15px;max-width:520px}
        .app-info{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}
        .app-info span{border:1px solid var(--line);border-radius:7px;padding:5px 10px;color:#d4cdda;font:12px monospace}
        .phone-stage{height:285px;display:flex;justify-content:center;align-items:center;position:relative}
        .phone{width:155px;height:278px;border:7px solid #0f0d13;border-radius:25px;background:#4d3e5d;box-shadow:0 0 0 1px #76667e,20px 16px 0 rgba(200,240,90,.15);padding:27px 13px 13px}
        .phone-notch{width:45px;height:5px;border-radius:4px;background:#111;margin:-17px auto 20px}
        .phone h4{font-size:13px;color:var(--lime);margin-bottom:17px}.phone-block{height:49px;border-radius:8px;background:var(--orange);margin-bottom:9px}.phone-block:nth-child(3){background:#8dca51;height:35px}.phone-block:nth-child(4){background:#342a42;height:42px}
        .faq-section{padding:92px 0;background:var(--white)}
        .faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:75px}
        .faq-grid h2{font-size:34px;line-height:1.3;margin:12px 0}
        .faq-grid .intro{color:#756d79;font-size:15px}
        .faq-list details{border-bottom:1px solid var(--line-dark);padding:19px 0}
        .faq-list summary{cursor:pointer;list-style:none;font-size:17px;font-weight:800;display:flex;justify-content:space-between;gap:20px}
        .faq-list summary::-webkit-details-marker{display:none}
        .faq-list summary:after{content:"+";color:var(--lime-dark);font-size:23px;line-height:1}
        .faq-list details[open] summary:after{content:"−"}.faq-list details p{color:#706875;font-size:14px;margin-top:11px;padding-right:35px}
        .cta{background:var(--lime);padding:48px 0;color:var(--ink)}
        .cta-wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}
        .cta h2{font-size:30px;line-height:1.3}.cta p{font-size:14px;margin-top:5px}
        .cta .btn{background:var(--ink);color:var(--white)}.cta .btn:hover{background:#41364c}
        .site-footer{background:var(--night);color:var(--white);padding:55px 0 24px}
        .footer-grid{display:grid;grid-template-columns:1.35fr .8fr .9fr;gap:55px;padding-bottom:40px}
        .footer-brand p{color:#a9a1b2;font-size:14px;max-width:350px;margin-top:15px}
        .footer-col h3{font-size:14px;color:var(--lime);margin-bottom:14px}.footer-col a,.footer-col p{display:block;color:#b9b1c0;font-size:13px;margin:7px 0;transition:var(--ease)}.footer-col a:hover{color:var(--lime)}
        .footer-bottom{border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;gap:15px;color:#8f879b;font-size:12px;flex-wrap:wrap}
        @media(max-width:1024px){.hero-grid{gap:35px}.nav-links a{padding:8px 7px}.app-panel{padding:38px}.feature-grid{gap:35px}}
        @media(max-width:768px){.container{width:min(100% - 34px,600px)}.nav-wrap{height:68px}.menu-toggle{display:block;margin-left:auto}.header-cta{display:none}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--night);padding:12px 17px 20px;flex-direction:column;align-items:stretch;border-top:1px solid var(--line)}.nav-links.open{display:flex}.nav-links a{padding:12px 10px}.hero{padding:55px 0 30px}.hero-grid,.feature-grid,.news-layout,.app-panel,.faq-grid{grid-template-columns:1fr}.hero-grid{gap:45px}.hero h1{font-size:42px}.console{max-width:560px;margin:auto}.section,.app-section,.faq-section{padding:65px 0}.section-head{display:block}.section-head p{margin-top:14px}.entry-layout{grid-template-columns:1fr}.feature-grid{gap:38px}.app-panel{padding:32px 25px}.app-panel h2,.faq-grid h2{font-size:29px}.phone-stage{height:300px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.cta-wrap{display:block}.cta .btn{margin-top:20px}}
        @media(max-width:480px){.container{width:calc(100% - 28px)}.logo{font-size:17px}.logo-mark{width:28px;height:28px}.hero h1{font-size:35px;letter-spacing:-1px}.hero-copy{font-size:15px}.actions{display:grid}.actions .btn{width:100%}.hero-notes{gap:14px}.screen{min-height:245px;padding:17px}.game-art{height:92px;margin:18px 0}.section-head h2{font-size:28px}.entry-main,.entry-small{padding:24px}.news-list{padding:8px 17px}.feature-news{min-height:235px;padding:24px}.feature-news h3{font-size:22px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}}

/* roulang page: article */
:root{
            --ink:#17151d;--night:#211d2a;--night-2:#2c2638;--panel:#332c41;
            --paper:#f5f2ea;--paper-2:#ebe7dc;--lime:#c8f05a;--lime-dark:#9aba35;
            --orange:#ff835d;--white:#fffdf7;--muted:#a9a2b5;--text:#25202d;
            --line:rgba(255,255,255,.13);--line-dark:rgba(37,32,45,.14);
            --radius:18px;--shadow:0 18px 45px rgba(16,12,24,.2);--ease:all .25s ease
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;line-height:1.8}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:30px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;border-radius:11px;transition:var(--ease)}
        .header-cta{background:var(--lime);color:var(--ink);padding:11px 17px;font-size:14px}
        .header-cta:hover,.btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .article-hero{background:var(--night);color:var(--white);padding:66px 0 72px;position:relative;overflow:hidden}
        .article-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 85%);pointer-events:none}
        .hero-inner{position:relative;max-width:900px}
        .breadcrumb{display:flex;flex-wrap:wrap;gap:9px;color:var(--muted);font-size:13px;margin-bottom:25px}
        .breadcrumb a:hover{color:var(--lime)}
        .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        .article-hero h1{font-size:clamp(34px,5vw,56px);line-height:1.22;letter-spacing:-1.7px;margin:18px 0 20px;max-width:900px}
        .hero-summary{color:#c9c2d1;font-size:17px;max-width:780px;line-height:1.9}
        .article-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:27px;color:#bbb3c4;font-size:13px}
        .article-meta span{padding-left:13px;border-left:2px solid var(--orange)}
        .tag{display:inline-block;background:rgba(200,240,90,.17);color:#587117;border-radius:5px;padding:2px 8px;font-size:11px;font-weight:700}
        .article-meta .tag{color:var(--lime);background:rgba(200,240,90,.1);border-left:0;padding-left:8px}
        .reading-area{padding:72px 0 90px}
        .article-layout{display:grid;grid-template-columns:minmax(0,800px) 270px;gap:58px;align-items:start}
        .article-paper{background:var(--white);border:1px solid var(--line-dark);border-radius:var(--radius);padding:clamp(25px,5vw,58px);box-shadow:0 12px 30px rgba(38,29,46,.06)}
        .article-paper h2{font-size:28px;line-height:1.35;margin:35px 0 15px;color:var(--ink)}
        .article-paper h3{font-size:21px;line-height:1.45;margin:27px 0 10px;color:var(--ink)}
        .article-paper p{font-size:16px;color:#514b58;margin:0 0 20px}
        .article-paper ul,.article-paper ol{padding-left:25px;color:#514b58;margin:15px 0 24px}
        .article-paper li{padding:4px 0}
        .article-paper blockquote{margin:27px 0;padding:18px 22px;border-left:4px solid var(--lime-dark);background:#f0f3dc;color:#4c5528;border-radius:0 12px 12px 0}
        .article-paper table{width:100%;border-collapse:collapse;margin:25px 0;font-size:14px}
        .article-paper th,.article-paper td{padding:12px;border:1px solid var(--line-dark);text-align:left}
        .article-paper th{background:var(--paper-2);color:var(--ink)}
        .article-paper img{border-radius:12px;margin:25px auto}
        .article-paper figure{margin:25px 0}
        .article-paper figcaption{text-align:center;color:#817987;font-size:13px}
        .article-side{position:sticky;top:105px}
        .side-card{background:var(--night-2);color:var(--white);border-radius:var(--radius);padding:25px;margin-bottom:17px}
        .side-card h2{font-size:18px;margin:0 0 16px}
        .side-card p{font-size:13px;color:#c1b9ca;margin:0 0 18px}
        .side-line{height:1px;background:var(--line);margin:17px 0}
        .side-link{display:block;color:#d9d3df;font-size:13px;padding:7px 0;transition:var(--ease)}
        .side-link:hover{color:var(--lime);padding-left:5px}
        .btn{padding:12px 19px}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-outline{border:1px solid rgba(37,32,45,.28);color:var(--ink);background:transparent}
        .btn-outline:hover{border-color:var(--lime-dark);background:#eff6c9}
        .article-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:30px;padding-top:25px;border-top:1px solid var(--line-dark)}
        .notice{margin-top:28px;padding:17px 19px;background:#fff4ee;border-left:3px solid var(--orange);border-radius:8px;color:#65443c;font-size:13px}
        .related{background:var(--paper-2);padding:74px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}
        .kicker{color:#697b20;font-size:13px;font-weight:800;letter-spacing:1px}
        .section-head h2{font-size:32px;line-height:1.3;margin:8px 0 0}
        .related-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
        .related-card{background:var(--white);border-radius:15px;padding:23px;border:1px solid var(--line-dark);transition:var(--ease)}
        .related-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--lime-dark)}
        .related-card h3{font-size:18px;line-height:1.5;margin:13px 0 7px}
        .related-card p{font-size:13px;color:#746c78;margin:0}
        .related-card time{font-size:12px;color:#89818d}
        .cta-band{background:var(--night);color:var(--white);padding:62px 0}
        .cta-box{display:flex;justify-content:space-between;align-items:center;gap:30px}
        .cta-box h2{font-size:30px;margin:0 0 8px}
        .cta-box p{color:#c1b9ca;margin:0;font-size:15px}
        .site-footer{background:var(--ink);color:var(--white);padding:58px 0 22px}
        .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}
        .footer-brand p{color:#aaa2b3;max-width:390px;font-size:14px;margin-top:18px}
        .footer-col{display:flex;flex-direction:column;gap:7px}
        .footer-col h3{font-size:15px;margin:0 0 10px;color:var(--lime)}
        .footer-col a,.footer-col p{color:#aaa2b3;font-size:13px;margin:0;transition:var(--ease)}
        .footer-col a:hover{color:var(--lime);padding-left:4px}
        .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-top:40px;color:#857d8c;font-size:12px}
        @media(max-width:1024px){.nav-links a{padding:8px 7px;font-size:13px}.nav-wrap{gap:15px}.article-layout{grid-template-columns:minmax(0,1fr) 225px;gap:28px}}
        @media(max-width:768px){.container{width:min(100% - 32px,600px)}.nav-wrap{height:68px}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--night);padding:12px 16px 18px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links a{padding:12px 14px}.header-cta{display:none}.article-hero{padding:48px 0 55px}.article-layout{display:block}.article-side{position:static;margin-top:25px}.related-list{grid-template-columns:1fr}.cta-box{display:block}.cta-box .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}}
        @media(max-width:480px){.article-hero h1{font-size:32px}.hero-summary{font-size:15px}.article-paper{padding:22px 18px}.article-paper h2{font-size:24px}.article-paper p{font-size:15px}.article-meta{gap:10px}.reading-area{padding:45px 0 60px}.section-head h2{font-size:27px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}}

/* roulang page: category1 */
:root{
            --ink:#17151d;
            --night:#211d2a;
            --night-2:#2c2638;
            --panel:#332c41;
            --paper:#f5f2ea;
            --paper-2:#ebe7dc;
            --lime:#c8f05a;
            --lime-dark:#9aba35;
            --orange:#ff835d;
            --white:#fffdf7;
            --muted:#a9a2b5;
            --text:#25202d;
            --line:rgba(255,255,255,.13);
            --line-dark:rgba(37,32,45,.14);
            --radius:18px;
            --shadow:0 18px 45px rgba(16,12,24,.2);
            --ease:all .25s ease;
        }
        *,*::before,*::after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:var(--paper);color:var(--text);line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:30px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;transition:var(--ease)}
        .header-cta{background:var(--lime);color:var(--ink);padding:11px 17px;border-radius:10px;font-size:14px}
        .header-cta:hover{background:#e0ff83;transform:translateY(-2px)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .hero{background:var(--night);color:var(--white);padding:72px 0 78px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 80%);pointer-events:none}
        .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:62px;align-items:center;position:relative}
        .eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        .hero h1{font-size:clamp(38px,5vw,58px);line-height:1.18;letter-spacing:-2px;margin:19px 0 20px;max-width:650px}
        .hero h1 span{color:var(--lime)}
        .hero-copy{font-size:17px;color:#c9c2d1;max-width:590px;line-height:1.9}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 30px}
        .btn{border-radius:11px;padding:13px 20px;border:1px solid transparent}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .btn-outline{border-color:rgba(255,255,255,.28);color:var(--white)}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.06)}
        .hero-notes{display:flex;gap:25px;flex-wrap:wrap}
        .hero-note{font-size:12px;color:var(--muted);padding-left:13px;border-left:1px solid var(--orange)}
        .hero-note strong{display:block;color:var(--white);font-size:14px;margin-bottom:2px}
        .console{background:#302a3b;border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:17px;box-shadow:var(--shadow);transform:rotate(1.5deg)}
        .console-top{display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);padding:2px 4px 15px}
        .console-dot{width:9px;height:9px;border-radius:50%;background:var(--orange)}
        .console-dot:nth-child(2){background:var(--lime)}
        .console-dot:nth-child(3){background:#a49aad}
        .console-label{margin-left:auto;color:var(--muted);font:11px monospace}
        .console-screen{background:#191620;border-radius:14px;padding:24px;margin-top:16px;min-height:270px;position:relative;overflow:hidden}
        .console-screen:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 5px,rgba(255,255,255,.025) 6px);pointer-events:none}
        .screen-title{font-size:13px;color:#cbc4d4;display:flex;justify-content:space-between}
        .screen-title b{color:var(--lime);font-size:17px}
        .screen-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:13px;margin-top:22px}
        .screen-card{min-height:110px;border:1px solid #40374c;background:#282230;border-radius:12px;padding:13px}
        .screen-card.large{grid-row:span 2;background:linear-gradient(135deg,#473a4c,#27212f)}
        .screen-card strong{display:block;color:var(--white);font-size:15px;margin-top:20px}
        .screen-card small{color:var(--muted);font-size:11px}
        .screen-chip{display:inline-block;background:rgba(255,255,255,.1);color:#e7e2eb;border-radius:7px;padding:6px 9px;margin:6px 5px 0 0;font:11px monospace}
        .screen-chip.on{background:var(--lime);color:var(--ink)}
        .section{padding:88px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:31px}
        .section-head h2{font-size:34px;line-height:1.25;letter-spacing:-1px;margin:9px 0 0}
        .section-head p{max-width:475px;color:#706878;font-size:15px;margin:0}
        .kicker{color:var(--orange);letter-spacing:.5px}
        .kicker:before{content:"";width:20px;height:2px;background:var(--orange)}
        .console-section{background:var(--paper)}
        .control-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:24px;align-items:stretch}
        .control-panel{background:var(--night);color:var(--white);border-radius:var(--radius);padding:30px}
        .control-panel h3{font-size:24px;margin:13px 0 10px}
        .control-panel p{color:#bbb3c4;font-size:14px}
        .status-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 0 0;margin-top:25px;font:12px monospace;color:var(--muted)}
        .status-line b{color:var(--lime)}
        .function-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
        .function-item{background:var(--white);border:1px solid var(--line-dark);border-radius:14px;padding:21px;transition:var(--ease)}
        .function-item:hover{border-color:var(--lime-dark);transform:translateY(-4px);box-shadow:0 10px 25px rgba(37,32,45,.08)}
        .function-icon{width:35px;height:35px;border-radius:10px;background:var(--lime);display:grid;place-items:center;font-weight:900;margin-bottom:15px}
        .function-item h3{font-size:17px;margin:0 0 6px}
        .function-item p{font-size:13px;color:#716978;margin:0}
        .dark-section{background:var(--night-2);color:var(--white)}
        .dark-section .section-head p{color:#b8b0c2}
        .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
        .step{border-top:2px solid var(--lime);padding:20px 17px 10px;background:rgba(255,255,255,.045);min-height:170px}
        .step-number{color:var(--lime);font:700 26px monospace}
        .step h3{font-size:18px;margin:14px 0 7px}
        .step p{font-size:13px;color:#bdb5c8;margin:0}
        .device-section{background:var(--paper-2)}
        .device-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}
        .device-copy h2{font-size:34px;line-height:1.3;margin:12px 0}
        .device-copy p{color:#6f6876;max-width:560px}
        .device-tags{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}
        .device-tag{border:1px solid var(--line-dark);border-radius:8px;padding:8px 13px;font-size:13px;background:var(--white)}
        .device-tag.active{background:var(--lime);border-color:var(--lime);color:var(--ink);font-weight:800}
        .device-board{background:var(--night);border-radius:22px;padding:25px;color:var(--white);min-height:285px;position:relative;overflow:hidden}
        .device-board:before{content:"PG";position:absolute;right:-10px;bottom:-48px;font-size:180px;font-weight:900;color:rgba(200,240,90,.08)}
        .board-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:13px 0;position:relative}
        .board-row:last-child{border:0}
        .board-row span{color:var(--muted);font-size:13px}
        .board-row b{color:var(--lime);font-size:14px}
        .news-section{background:var(--paper)}
        .news-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
        .feature-news{background:var(--orange);border-radius:var(--radius);padding:30px;min-height:240px;display:flex;flex-direction:column;justify-content:space-between}
        .feature-news h3{font-size:27px;line-height:1.35;max-width:490px;margin:12px 0}
        .feature-news p{font-size:14px;max-width:470px;color:#513338;margin:0}
        .news-list{background:var(--white);border-radius:var(--radius);padding:10px 22px}
        .news-item{display:block;padding:15px 0;border-bottom:1px solid var(--line-dark);transition:var(--ease)}
        .news-item:last-child{border-bottom:0}
        .news-item:hover{padding-left:7px}
        .news-meta{display:flex;gap:10px;align-items:center;color:#7c7482;font-size:12px;margin-bottom:4px}
        .tag{background:rgba(200,240,90,.17);color:#587117;border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700}
        .news-item h4{font-size:16px;line-height:1.45;margin:0}
        .news-item p{color:#736b78;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:4px 0 0}
        .faq-section{background:var(--paper-2)}
        .faq-wrap{max-width:900px;margin:auto}
        .faq-item{border-bottom:1px solid var(--line-dark)}
        .faq-item summary{list-style:none;padding:21px 4px;font-size:17px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;gap:15px}
        .faq-item summary::-webkit-details-marker{display:none}
        .faq-item summary:after{content:"+";color:var(--orange);font-size:23px;line-height:1}
        .faq-item[open] summary:after{content:"−"}
        .faq-answer{padding:0 35px 22px 4px;color:#706878;font-size:14px}
        .cta{background:var(--night);color:var(--white);padding:52px 0}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
        .cta h2{font-size:30px;margin:0 0 8px}
        .cta p{color:#b9b1c1;margin:0;font-size:14px}
        .site-footer{background:var(--ink);color:var(--white);padding:52px 0 20px}
        .footer-grid{display:grid;grid-template-columns:1.5fr .8fr .9fr;gap:60px}
        .footer-brand p{max-width:360px;color:#a9a2b5;font-size:13px;margin-top:18px}
        .footer-col{display:flex;flex-direction:column;gap:8px}
        .footer-col h3{font-size:15px;color:var(--lime);margin:0 0 9px}
        .footer-col a,.footer-col p{font-size:13px;color:#b2aaba;margin:0;transition:var(--ease)}
        .footer-col a:hover{color:var(--lime);padding-left:4px}
        .footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#81798b;font-size:12px}
        @media(max-width:1024px){
            .nav-wrap{gap:14px}.nav-links{gap:1px}.nav-links a{padding:8px 7px;font-size:13px}
            .hero-grid,.device-grid,.control-layout,.news-layout{gap:30px}
        }
        @media(max-width:768px){
            .container{width:min(100% - 34px,600px)}
            .nav-wrap{height:68px}.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}
            .nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--night);padding:12px 17px 18px;flex-direction:column;align-items:stretch;border-top:1px solid var(--line)}
            .nav-links.open{display:flex}.nav-links a{padding:13px 12px}
            .hero{padding:58px 0 65px}.hero-grid,.device-grid,.control-layout,.news-layout{grid-template-columns:1fr}
            .hero h1{font-size:42px}.hero-copy{font-size:15px}
            .console{transform:none;max-width:600px;margin:auto}.section{padding:65px 0}
            .section-head{display:block}.section-head h2,.device-copy h2{font-size:29px}.section-head p{margin-top:13px}
            .steps{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}
            .footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}
            .cta-inner{display:block}.cta .btn{margin-top:22px}
        }
        @media(max-width:480px){
            .container{width:calc(100% - 28px)}.logo{font-size:17px}.logo-mark{width:28px;height:28px}
            .hero h1{font-size:35px;letter-spacing:-1px}.hero-actions .btn{width:100%}.hero-notes{gap:14px}
            .screen-grid,.function-list{grid-template-columns:1fr}.screen-card.large{grid-row:auto}
            .steps{grid-template-columns:1fr}.control-panel,.feature-news,.device-board{padding:23px}
            .feature-news h3{font-size:23px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}
            .cta h2{font-size:25px}
        }

/* roulang page: category2 */
:root{
            --ink:#17151d;--night:#211d2a;--night-2:#2c2638;--panel:#332c41;
            --paper:#f5f2ea;--paper-2:#ebe7dc;--lime:#c8f05a;--lime-dark:#9aba35;
            --orange:#ff835d;--white:#fffdf7;--muted:#a9a2b5;--text:#25202d;
            --line:rgba(255,255,255,.13);--line-dark:rgba(37,32,45,.14);
            --radius:18px;--shadow:0 18px 45px rgba(16,12,24,.2);--ease:all .25s ease;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:var(--paper);color:var(--text);line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:30px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;font-weight:800;transition:var(--ease)}
        .header-cta{background:var(--lime);color:var(--ink);padding:11px 17px;font-size:14px}
        .header-cta:hover,.btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .hero{background:var(--night);color:var(--white);padding:68px 0 55px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 85%);pointer-events:none}
        .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center;position:relative}
        .eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        .hero h1{font-size:clamp(38px,5vw,59px);line-height:1.18;letter-spacing:-2px;margin:19px 0}
        .hero h1 span{color:var(--lime)}
        .hero-copy{font-size:17px;color:#c9c2d1;max-width:600px;line-height:1.9}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0}
        .btn{padding:13px 20px;border:1px solid transparent}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-outline{border-color:rgba(255,255,255,.28);color:var(--white)}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.06)}
        .hero-notes{display:flex;gap:25px;flex-wrap:wrap}
        .hero-note{font-size:12px;color:var(--muted);padding-left:13px;border-left:1px solid var(--orange)}
        .hero-note strong{display:block;color:var(--white);font-size:14px;margin-bottom:2px}
        .entry-console{background:var(--panel);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:25px;box-shadow:var(--shadow);transform:rotate(1deg)}
        .console-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}
        .console-top b{font-size:17px}.status{color:var(--lime);font:12px monospace}
        .console-screen{margin:22px 0;background:#191621;border-radius:13px;padding:22px;min-height:160px;position:relative;overflow:hidden}
        .console-screen:after{content:"PG ENTRY";position:absolute;right:-9px;bottom:-23px;color:rgba(200,240,90,.08);font-size:70px;font-weight:900}
        .screen-line{height:10px;background:#40384c;border-radius:5px;margin:12px 0;width:74%}
        .screen-line.short{width:45%}.screen-line.lime{background:var(--lime);width:58%}
        .screen-row{display:flex;gap:8px;flex-wrap:wrap}.screen-chip{background:rgba(255,255,255,.1);color:#e7e2eb;border-radius:7px;padding:6px 9px;font:11px monospace}.screen-chip.on{background:var(--lime);color:var(--ink)}
        .section{padding:88px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:31px}
        .section-head h2{font-size:34px;line-height:1.25;letter-spacing:-1px;margin:9px 0 0}.section-head p{max-width:500px;color:#706878;font-size:15px}
        .route-panel{background:var(--night);color:var(--white);border-radius:var(--radius);padding:35px;min-height:285px;position:relative;overflow:hidden}
        .route-panel:after{content:"入口";position:absolute;right:20px;bottom:-40px;color:rgba(200,240,90,.08);font-size:160px;font-weight:900}
        .route-panel h2{font-size:30px;position:relative}.route-panel p{color:#c2bacd;max-width:620px;position:relative}
        .route-tags{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0;position:relative}.route-tags span,.badge{padding:6px 10px;border-radius:7px;background:rgba(200,240,90,.13);color:var(--lime);font-size:12px;font-weight:700}
        .route-status{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;padding-top:20px;border-top:1px solid var(--line);position:relative;color:var(--muted);font-size:13px}.route-status b{display:block;color:var(--white);font-size:16px}
        .light-section{background:var(--paper-2)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
        .step{background:var(--white);padding:24px;border-radius:14px;border-top:3px solid var(--lime);min-height:190px;transition:var(--ease)}.step:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
        .step-num{font:700 28px monospace;color:var(--orange)}.step h3{font-size:19px;margin:12px 0 6px}.step p{font-size:14px;color:#706878;margin:0}
        .split{display:grid;grid-template-columns:.82fr 1.18fr;gap:55px;align-items:center}.info-art{background:var(--night-2);border-radius:24px;padding:28px;color:var(--white);min-height:300px;position:relative;overflow:hidden}
        .info-art h3{font-size:25px;margin:8px 0 22px}.device-list{display:grid;gap:12px}.device{display:flex;justify-content:space-between;padding:13px 15px;background:rgba(255,255,255,.08);border-radius:10px;font-size:14px}.device b{color:var(--lime)}
        .copy h2{font-size:34px;line-height:1.3;margin:10px 0 17px}.copy p{color:#706878}.bullet-list{padding:0;margin:23px 0;list-style:none}.bullet-list li{margin:12px 0;padding-left:25px;position:relative}.bullet-list li:before{content:"✓";position:absolute;left:0;color:#759c18;font-weight:900}
        .faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px}.faq h2{font-size:34px;line-height:1.3;margin:9px 0}.faq-intro{color:#706878}.faq-list details{background:var(--white);border:1px solid var(--line-dark);border-radius:13px;margin-bottom:12px;padding:18px 21px;transition:var(--ease)}.faq-list details[open]{border-color:var(--lime-dark);box-shadow:0 8px 22px rgba(37,32,45,.06)}.faq-list summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--orange);font-size:22px;line-height:1}.faq-list details[open] summary:after{content:"−"}.faq-list p{color:#706878;font-size:14px;margin:12px 0 0}
        .cta{background:var(--night);color:var(--white);padding:44px;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;gap:25px}.cta h2{font-size:30px;margin:0 0 8px}.cta p{color:#bdb5c8;margin:0}.site-footer{background:var(--ink);color:var(--white);padding:58px 0 23px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footer-brand p{color:var(--muted);font-size:14px;max-width:360px;margin-top:18px}.footer-col{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted)}.footer-col h3{color:var(--white);font-size:16px;margin:0 0 8px}.footer-col a:hover{color:var(--lime)}.footer-bottom{border-top:1px solid var(--line);margin-top:42px;padding-top:18px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:#817a8a;font-size:12px}
        @media(max-width:1024px){.nav-wrap{gap:16px}.nav-links a{padding:8px 7px}.hero-grid{gap:35px}.steps{grid-template-columns:repeat(2,1fr)}}
        @media(max-width:768px){.container{width:min(100% - 32px,600px)}.nav-wrap{height:68px}.nav-links{display:none;position:absolute;left:16px;right:16px;top:68px;background:var(--night-2);padding:12px;border-radius:0 0 14px 14px;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{padding:12px 14px}.header-cta{margin-left:auto}.menu-toggle{display:block;order:3}.hero{padding:53px 0 42px}.hero-grid,.split,.faq{grid-template-columns:1fr}.hero h1{font-size:42px}.entry-console{transform:none}.section{padding:65px 0}.section-head{display:block}.section-head p{margin-top:14px}.faq{gap:28px}.cta{display:block;padding:30px}.cta .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}}
        @media(max-width:480px){.container{width:calc(100% - 28px)}.logo{font-size:17px}.header-cta{padding:9px 10px;font-size:12px}.hero h1{font-size:35px;letter-spacing:-1px}.hero-copy{font-size:15px}.hero-actions,.hero-actions .btn{width:100%}.steps{grid-template-columns:1fr}.route-panel{padding:25px}.route-panel h2,.copy h2,.faq h2{font-size:28px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}}

/* roulang page: category3 */
:root{
            --ink:#17151d;--night:#211d2a;--night-2:#2c2638;--panel:#332c41;
            --paper:#f5f2ea;--paper-2:#ebe7dc;--lime:#c8f05a;--lime-dark:#9aba35;
            --orange:#ff835d;--white:#fffdf7;--muted:#a9a2b5;--text:#25202d;
            --line:rgba(255,255,255,.13);--line-dark:rgba(37,32,45,.14);
            --radius:18px;--shadow:0 18px 45px rgba(16,12,24,.2);--ease:all .25s ease;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:28px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta,.btn-primary{background:var(--lime);color:var(--ink);font-weight:800}
        .header-cta{padding:11px 17px;border-radius:10px;font-size:14px;transition:var(--ease)}
        .header-cta:hover,.btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .hero{background:var(--night);color:var(--white);padding:72px 0 64px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 82%)}
        .hero-inner{position:relative;display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center}
        .eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        h1{font-size:clamp(38px,5vw,58px);line-height:1.2;letter-spacing:-2px;margin:19px 0}
        .hero p{color:#c9c2d1;font-size:17px;max-width:640px;line-height:1.9;margin:0}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:13px 20px;font-weight:800;transition:var(--ease);border:1px solid transparent}
        .btn-outline{border-color:rgba(255,255,255,.28);color:var(--white)}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.06)}
        .news-console{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:25px;box-shadow:var(--shadow);transform:rotate(2deg)}
        .console-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:17px;color:#d9d2df;font-size:13px}
        .signal{color:var(--lime);font-size:12px}.signal:before{content:"●";margin-right:6px}
        .calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:22px 0}
        .calendar span{font:12px monospace;color:var(--muted);text-align:center;padding:7px 0}
        .calendar span.mark{background:var(--lime);color:var(--ink);border-radius:7px;font-weight:bold}
        .console-line{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--line);font-size:13px;color:#d8d1df}
        .dot{width:8px;height:8px;background:var(--orange);border-radius:50%}
        .section{padding:86px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}
        .section-head h2{font-size:34px;line-height:1.3;letter-spacing:-1px;margin:8px 0 0}
        .section-head p{max-width:490px;color:#706878;font-size:15px;margin:0}
        .filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}
        .filter-bar button{background:var(--white);border:1px solid var(--line-dark);border-radius:9px;padding:9px 15px;color:#665d6e;font-size:14px;transition:var(--ease)}
        .filter-bar button:hover,.filter-bar button.active{background:var(--night);border-color:var(--night);color:var(--lime)}
        .featured{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}
        .feature-card{background:var(--orange);border-radius:var(--radius);padding:34px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between;transition:var(--ease)}
        .feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
        .feature-card h3{font-size:28px;line-height:1.4;max-width:570px;margin:14px 0 8px}
        .feature-card p{max-width:560px;color:#513338;margin:0}
        .feature-meta{font-size:12px;color:#674046;display:flex;gap:12px}
        .update-panel{background:var(--night-2);color:var(--white);border-radius:var(--radius);padding:30px}
        .update-panel h3{font-size:22px;margin:14px 0}.update-panel p{color:#beb6c7;font-size:14px}
        .mini-stat{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 0;font-size:13px;color:#cfc7d7}
        .mini-stat b{color:var(--lime);font-family:monospace}
        .timeline{position:relative;max-width:920px;margin:0 auto}
        .timeline:before{content:"";position:absolute;left:18px;top:5px;bottom:5px;width:1px;background:#c8c0b6}
        .timeline-item{position:relative;display:grid;grid-template-columns:55px 1fr;gap:20px;padding-bottom:28px}
        .timeline-mark{width:37px;height:37px;border-radius:11px;background:var(--night);color:var(--lime);display:grid;place-items:center;font:12px monospace;z-index:1}
        .timeline-content{background:var(--white);border:1px solid var(--line-dark);border-radius:14px;padding:22px 25px;transition:var(--ease)}
        .timeline-content:hover{border-color:var(--lime-dark);transform:translateX(5px)}
        .meta{font-size:12px;color:#817887;display:flex;gap:12px;align-items:center;margin-bottom:7px}
        .tag{background:rgba(200,240,90,.22);color:#587117;border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700}
        .timeline-content h3{font-size:19px;line-height:1.45;margin:0 0 7px}.timeline-content p{font-size:14px;color:#736b78;margin:0}
        .split-section{background:var(--night-2);color:var(--white)}
        .topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
        .topic-card{padding:27px;background:var(--panel);border:1px solid var(--line);border-radius:15px;transition:var(--ease)}
        .topic-card:hover{border-color:var(--lime);transform:translateY(-4px)}
        .topic-card .number{color:var(--orange);font:700 27px monospace}.topic-card h3{font-size:19px;margin:13px 0 7px}.topic-card p{color:#bdb5c8;font-size:14px;margin:0}
        .faq-list{max-width:900px;margin:auto}.faq-item{background:var(--white);border-bottom:1px solid var(--line-dark)}
        .faq-item summary{list-style:none;cursor:pointer;padding:20px 24px;font-weight:800;display:flex;justify-content:space-between;gap:20px}
        .faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--lime-dark);font-size:23px;line-height:1}
        .faq-item[open] summary{color:#587117;background:#f0f6d9}.faq-item[open] summary:after{content:"−"}
        .faq-answer{padding:0 24px 20px;color:#6d6573;font-size:14px}
        .cta{background:var(--night);color:var(--white);padding:54px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{font-size:30px;margin:0 0 8px}.cta p{color:#bdb5c8;margin:0}
        .site-footer{background:var(--ink);color:var(--white);padding:58px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:55px}.footer-brand p{color:#aaa2b1;font-size:14px;max-width:360px;margin-top:18px}.footer-col{display:flex;flex-direction:column;gap:8px}.footer-col h3{font-size:15px;color:var(--lime);margin:0 0 8px}.footer-col a,.footer-col p{color:#aaa2b1;font-size:13px;margin:0;transition:var(--ease)}.footer-col a:hover{color:var(--lime);padding-left:4px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#857d8c;font-size:12px}
        @media(max-width:1024px){.hero-inner{gap:35px}.nav-links a{padding-left:7px;padding-right:7px}.header-cta{display:none}}
        @media(max-width:768px){.container{width:min(100% - 32px,600px)}.nav-wrap{height:68px}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;left:16px;right:16px;top:68px;background:var(--night-2);padding:12px;border-radius:0 0 15px 15px;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{padding:13px 14px}.hero{padding:55px 0 48px}.hero-inner,.featured{grid-template-columns:1fr}.news-console{transform:none}.section{padding:64px 0}.section-head,.cta-inner{display:block}.section-head p{margin-top:12px}.topic-grid{grid-template-columns:1fr}.cta .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}} 
        @media(max-width:480px){h1{font-size:36px}.hero p{font-size:15px}.hero-actions .btn{width:100%}.feature-card,.update-panel{padding:24px}.feature-card h3{font-size:23px}.timeline-item{grid-template-columns:42px 1fr;gap:12px}.timeline:before{left:14px}.timeline-mark{width:30px;height:30px;border-radius:8px;font-size:10px}.timeline-content{padding:17px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}}

/* roulang page: category4 */
:root{
            --ink:#17151d;
            --night:#211d2a;
            --night-2:#2c2638;
            --panel:#332c41;
            --paper:#f5f2ea;
            --paper-2:#ebe7dc;
            --lime:#c8f05a;
            --lime-dark:#9aba35;
            --orange:#ff835d;
            --white:#fffdf7;
            --muted:#a9a2b5;
            --text:#25202d;
            --line:rgba(255,255,255,.13);
            --line-dark:rgba(37,32,45,.14);
            --radius:18px;
            --shadow:0 18px 45px rgba(16,12,24,.2);
            --ease:all .25s ease;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:var(--paper);color:var(--text);line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:32px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta{background:var(--lime);color:var(--ink);font-weight:800;padding:11px 17px;border-radius:10px;font-size:14px;transition:var(--ease)}
        .header-cta:hover{background:#e0ff83;transform:translateY(-2px)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .hero{background:var(--night);color:var(--white);padding:68px 0 76px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 80%);pointer-events:none}
        .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;position:relative}
        .eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        .hero h1{font-size:clamp(38px,5vw,58px);line-height:1.18;letter-spacing:-2px;margin:20px 0 21px;max-width:650px}
        .hero h1 span{color:var(--lime)}
        .hero-copy{font-size:17px;color:#c9c2d1;max-width:590px;line-height:1.9}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:13px 20px;font-weight:800;transition:var(--ease);border:1px solid transparent}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .btn-outline{border-color:rgba(255,255,255,.28);color:var(--white)}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.06)}
        .hero-notes{display:flex;gap:25px;flex-wrap:wrap}
        .hero-note{font-size:12px;color:var(--muted);padding-left:13px;border-left:1px solid var(--orange)}
        .hero-note strong{display:block;color:var(--white);font-size:14px;margin-bottom:2px}
        .device-board{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow);transform:rotate(1.5deg)}
        .board-top{display:flex;justify-content:space-between;align-items:center;color:#d9d2e0;font-size:13px;margin-bottom:17px}
        .status-dot{display:inline-flex;align-items:center;gap:7px;color:var(--lime);font-weight:700}
        .status-dot:before{content:"";width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px rgba(200,240,90,.1)}
        .device-screen{background:#191620;border-radius:16px;padding:20px;min-height:275px;position:relative;overflow:hidden}
        .device-screen:after{content:"PG";position:absolute;right:-15px;bottom:-38px;color:rgba(200,240,90,.08);font-size:160px;font-weight:900}
        .screen-title{font-size:13px;color:#cbc4d4;display:flex;justify-content:space-between}
        .screen-title b{color:var(--lime);font-size:17px}
        .screen-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
        .screen-chip{background:rgba(255,255,255,.1);color:#e7e2eb;border-radius:7px;padding:6px 9px;font:11px monospace}
        .screen-chip.on{background:var(--lime);color:var(--ink)}
        .app-preview{margin-top:25px;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:15px;background:#282233;position:relative;z-index:1}
        .app-preview strong{display:block;color:var(--white);font-size:16px}
        .app-preview small{color:var(--muted)}
        .progress{height:7px;background:#494052;border-radius:10px;margin-top:17px;overflow:hidden}
        .progress span{display:block;width:72%;height:100%;background:var(--lime);border-radius:10px}
        .section{padding:88px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:31px}
        .section-head h2{font-size:34px;line-height:1.25;letter-spacing:-1px;margin-top:9px}
        .section-head p{max-width:510px;color:#706878;font-size:15px}
        .paper-panel{background:var(--white);border-radius:var(--radius);padding:32px;box-shadow:0 8px 28px rgba(39,29,45,.06)}
        .feature-section{background:var(--night-2);color:var(--white)}
        .feature-section .section-head p{color:#b8b0c2}
        .install-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:start}
        .device-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:23px 0}
        .device-tab{padding:10px 15px;border-radius:9px;background:rgba(255,255,255,.09);color:#d8d2df;border:1px solid transparent;transition:var(--ease)}
        .device-tab:hover,.device-tab.active{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.08)}
        .version-line{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;color:#c4bdcc;font-size:14px}
        .version-line b{color:var(--white)}
        .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:25px}
        .step{background:#292332;border:1px solid var(--line);border-radius:14px;padding:18px}
        .step-number{color:var(--lime);font:700 13px monospace}
        .step h3{font-size:17px;margin:12px 0 5px}
        .step p{font-size:13px;color:#b8b0c2;margin:0}
        .phone-wrap{min-height:380px;background:#1b1722;border-radius:24px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
        .phone-wrap:before{content:"移动端预览";position:absolute;left:24px;top:22px;color:#756b80;font-size:12px;letter-spacing:2px}
        .phone{width:218px;height:365px;border:8px solid #454052;background:#14121a;border-radius:30px;padding:27px 14px 14px;box-shadow:0 20px 35px rgba(0,0,0,.35);position:relative}
        .phone:before{content:"";position:absolute;top:9px;left:50%;transform:translateX(-50%);width:55px;height:5px;border-radius:5px;background:#625a6c}
        .phone-head{color:var(--lime);font-weight:800;font-size:15px;border-bottom:1px solid #3c3547;padding-bottom:13px}
        .phone-card{background:#2d2638;border-radius:12px;padding:15px;margin-top:13px}
        .phone-card b{display:block;color:var(--white);font-size:14px}
        .phone-card span{color:#aaa1b3;font-size:11px}
        .phone-button{margin-top:14px;text-align:center;background:var(--lime);color:var(--ink);border-radius:7px;font-size:12px;font-weight:800;padding:7px}
        .adapt-section{background:var(--paper-2)}
        .adapt-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:25px}
        .adapt-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
        .adapt-item{background:var(--white);padding:22px;border-radius:15px;border-left:4px solid var(--lime)}
        .adapt-item h3{font-size:18px;margin:0 0 7px}
        .adapt-item p{color:#766e7b;font-size:14px;margin:0}
        .notice-card{background:var(--orange);padding:28px;border-radius:18px;color:#402b30}
        .notice-card h3{font-size:23px;margin:0 0 10px}
        .notice-card p{font-size:14px;margin:0 0 18px}
        .notice-card .btn{border-color:#70464b;color:#402b30}
        .faq-section{background:var(--paper)}
        .faq-list{max-width:900px;margin:auto}
        .faq-item{background:var(--white);border:1px solid var(--line-dark);border-radius:14px;margin-bottom:12px;overflow:hidden}
        .faq-item summary{padding:20px 24px;font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}
        .faq-item summary:after{content:"+";color:#778f2a;font-size:23px;line-height:1}
        .faq-item[open] summary{color:#617d1d;background:rgba(200,240,90,.12)}
        .faq-item[open] summary:after{content:"−"}
        .faq-answer{padding:0 24px 20px;color:#706878;font-size:14px}
        .cta{background:var(--night);color:var(--white);padding:58px 0}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
        .cta h2{font-size:31px;margin:0 0 8px}
        .cta p{color:#bdb5c8;margin:0;font-size:14px}
        .site-footer{background:#17141b;color:#d7d0dc;padding:55px 0 20px}
        .footer-grid{display:grid;grid-template-columns:1.4fr .8fr .9fr;gap:55px}
        .footer-brand p{color:#9e96a8;font-size:14px;max-width:380px;margin-top:18px}
        .footer-col{display:flex;flex-direction:column;gap:9px;font-size:14px}
        .footer-col h3{color:var(--white);font-size:16px;margin:0 0 8px}
        .footer-col a{color:#aaa2b0;transition:var(--ease)}
        .footer-col a:hover{color:var(--lime);padding-left:4px}
        .footer-col p{color:#8e8698;margin:0;font-size:13px}
        .footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:42px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#81798b;font-size:12px}
        :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
        @media(max-width:1024px){
            .nav-wrap{gap:16px}.nav-links a{padding:8px 7px;font-size:13px}
            .hero-grid{gap:38px}.install-grid{gap:30px}
        }
        @media(max-width:768px){
            .container{width:min(100% - 32px,600px)}
            .nav-wrap{height:68px}.menu-toggle{display:block;margin-left:auto}
            .nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--night);padding:15px 16px 20px;flex-direction:column;align-items:stretch;margin:0;border-top:1px solid var(--line)}
            .nav-links.open{display:flex}.nav-links a{padding:13px 15px}
            .header-cta{display:none}
            .hero{padding:55px 0 60px}.hero-grid,.install-grid,.adapt-grid{grid-template-columns:1fr}
            .hero h1{font-size:42px}.hero-copy{font-size:15px}
            .device-board{transform:none}.section{padding:65px 0}
            .section-head{display:block}.section-head h2{font-size:29px}.section-head p{margin-top:12px}
            .steps{grid-template-columns:1fr}.phone-wrap{min-height:430px}
            .footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}
            .footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}
            .cta-inner{display:block}.cta .btn{margin-top:22px}
        }
        @media(max-width:480px){
            .container{width:calc(100% - 28px)}
            .logo{font-size:17px}.logo-mark{width:28px;height:28px}
            .hero h1{font-size:35px;letter-spacing:-1px}.hero-actions .btn{width:100%}
            .hero-notes{gap:14px}.paper-panel{padding:22px}
            .adapt-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}
            .footer-brand{grid-column:auto}.phone{transform:scale(.9)}
        }

/* roulang page: category5 */
:root{
            --ink:#17151d;
            --night:#211d2a;
            --night-2:#2c2638;
            --panel:#332c41;
            --paper:#f5f2ea;
            --paper-2:#ebe7dc;
            --lime:#c8f05a;
            --lime-dark:#9aba35;
            --orange:#ff835d;
            --white:#fffdf7;
            --muted:#a9a2b5;
            --text:#25202d;
            --line:rgba(255,255,255,.13);
            --line-dark:rgba(37,32,45,.14);
            --radius:18px;
            --shadow:0 18px 45px rgba(16,12,24,.2);
            --ease:all .25s ease;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:var(--paper);color:var(--text);line-height:1.8}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button{font:inherit;border:0;cursor:pointer}
        :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
        .container{width:min(1200px,calc(100% - 48px));margin:auto}
        .site-header{background:var(--night);color:var(--white);position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(255,255,255,.08)}
        .nav-wrap{height:76px;display:flex;align-items:center;gap:30px}
        .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:20px;letter-spacing:-.5px;white-space:nowrap}
        .logo-mark{width:31px;height:31px;background:var(--lime);color:var(--ink);display:grid;place-items:center;border-radius:9px 4px 9px 4px;font-size:15px;font-weight:900}
        .nav-links{display:flex;align-items:center;gap:7px;margin-left:auto}
        .nav-links a{color:#d8d2df;font-size:14px;padding:9px 12px;border-radius:9px;transition:var(--ease);position:relative}
        .nav-links a:hover,.nav-links a.active{color:var(--lime);background:rgba(200,240,90,.08)}
        .nav-links a.active:after{content:"";position:absolute;height:3px;width:18px;background:var(--lime);border-radius:4px;bottom:2px;left:50%;transform:translateX(-50%)}
        .header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;font-weight:800;transition:var(--ease)}
        .header-cta{background:var(--lime);color:var(--ink);padding:11px 17px;font-size:14px}
        .header-cta:hover{background:#e0ff83;transform:translateY(-2px)}
        .menu-toggle{display:none;background:transparent;color:var(--white);font-size:25px}
        .hero{background:var(--night);color:var(--white);padding:72px 0 64px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,black,transparent 82%);pointer-events:none}
        .hero-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
        .eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-size:13px;font-weight:800;letter-spacing:1px}
        .eyebrow:before{content:"";width:25px;height:2px;background:var(--lime)}
        .hero h1{font-size:clamp(38px,5vw,58px);line-height:1.18;letter-spacing:-2px;margin:20px 0}
        .hero h1 span{color:var(--lime)}
        .hero-copy{font-size:17px;color:#c9c2d1;max-width:620px;line-height:1.9;margin-bottom:28px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
        .btn{padding:13px 20px;border:1px solid transparent}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-primary:hover{background:#e0ff83;transform:translateY(-2px);box-shadow:0 8px 22px rgba(200,240,90,.18)}
        .btn-outline{border-color:rgba(255,255,255,.28);color:var(--white)}
        .btn-outline:hover{border-color:var(--lime);color:var(--lime);background:rgba(200,240,90,.06)}
        .hero-board{background:var(--panel);border:1px solid rgba(255,255,255,.13);border-radius:24px;padding:20px;box-shadow:var(--shadow);transform:rotate(2deg)}
        .board-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px;color:#d8d2df;font-size:13px}
        .status{display:flex;align-items:center;gap:7px;color:var(--lime);font-size:12px}
        .status:before{content:"";width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 4px rgba(200,240,90,.12)}
        .question-map{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}
        .map-cell{min-height:74px;background:#40364e;border-radius:12px;padding:12px;color:#d9d2df;font-size:12px;border:1px solid transparent}
        .map-cell strong{display:block;color:var(--lime);font-size:20px;line-height:1.2;margin-bottom:4px}
        .map-cell.selected{border-color:var(--lime);background:rgba(200,240,90,.1)}
        .board-foot{display:flex;justify-content:space-between;color:var(--muted);font:12px monospace}
        .section{padding:88px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:32px}
        .section-head h2{font-size:34px;line-height:1.25;letter-spacing:-1px;margin:9px 0 0}
        .section-head p{max-width:500px;color:#706878;font-size:15px;margin:0}
        .kicker{color:#758c27;letter-spacing:.5px}
        .kicker:before{content:"";width:22px;height:2px;background:var(--orange)}
        .guide-layout{display:grid;grid-template-columns:300px 1fr;gap:28px;align-items:start}
        .guide-index{background:var(--night);color:var(--white);border-radius:var(--radius);padding:25px;position:sticky;top:98px}
        .guide-index h3{font-size:20px;margin:0 0 18px}
        .index-link{display:flex;gap:12px;align-items:center;color:#c9c2d1;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px;transition:var(--ease)}
        .index-link:last-child{border-bottom:0}
        .index-link:hover,.index-link.active{color:var(--lime);padding-left:6px}
        .index-number{font:13px monospace;color:var(--orange)}
        .guide-content{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
        .guide-card{background:var(--white);border:1px solid var(--line-dark);border-radius:var(--radius);padding:25px;min-height:190px;transition:var(--ease)}
        .guide-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px rgba(34,27,43,.1);border-color:var(--lime-dark)}
        .card-icon{width:42px;height:42px;display:grid;place-items:center;background:var(--night);color:var(--lime);border-radius:11px;font-weight:900;margin-bottom:16px}
        .guide-card h3{font-size:19px;margin:0 0 8px}
        .guide-card p{font-size:14px;color:#716a77;margin:0}
        .process-section{background:var(--night-2);color:var(--white)}
        .process-section .section-head p{color:#b8b0c2}
        .process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
        .process-item{padding:28px 22px 30px;border-right:1px solid var(--line);position:relative}
        .process-item:last-child{border-right:0}
        .process-item:before{content:"";display:block;width:10px;height:10px;background:var(--lime);border-radius:50%;margin-bottom:25px;box-shadow:0 0 0 6px rgba(200,240,90,.1)}
        .process-item strong{display:block;color:var(--orange);font:13px monospace;margin-bottom:8px}
        .process-item h3{font-size:19px;margin:0 0 8px}
        .process-item p{font-size:14px;color:#b8b0c2;margin:0}
        .faq-section{background:var(--paper-2)}
        .faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:start}
        .faq-intro h2{font-size:34px;line-height:1.3;margin:10px 0 15px}
        .faq-intro p{color:#716a77;font-size:15px}
        .faq-note{border-left:3px solid var(--orange);padding-left:16px;margin-top:25px;color:#635a68;font-size:13px}
        .faq-list{display:grid;gap:10px}
        .faq-item{background:var(--white);border:1px solid var(--line-dark);border-radius:13px;overflow:hidden}
        .faq-question{width:100%;background:transparent;text-align:left;padding:18px 21px;display:flex;justify-content:space-between;align-items:center;color:var(--text);font-weight:800}
        .faq-question span:last-child{color:var(--orange);font-size:22px;transition:var(--ease)}
        .faq-item.open{border-color:var(--lime-dark);box-shadow:0 8px 20 0 0 20px rgba(34,27,43,.08)}
        .faq-item.open .faq-question span:last-child{transform:rotate(45deg);color:var(--lime-dark)}
        .faq-answer{display:none;padding:0 21px 19px;color:#716a77;font-size:14px}
        .faq-item.open .faq-answer{display:block}
        .cta-section{padding:72px 0;background:var(--night);color:var(--white)}
        .cta-box{border:1px solid rgba(200,240,90,.32);border-radius:var(--radius);padding:36px 42px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:linear-gradient(105deg,rgba(200,240,90,.1),rgba(255,131,93,.08))}
        .cta-box h2{font-size:30px;line-height:1.3;margin:0 0 9px}
        .cta-box p{color:#c9c2d1;margin:0;font-size:14px}
        .site-footer{background:var(--ink);color:var(--white);padding:55px 0 20px}
        .footer-grid{display:grid;grid-template-columns:1.5fr .7fr .9fr;gap:60px;padding-bottom:35px}
        .footer-brand .logo{margin-bottom:18px}
        .footer-brand p{color:#a9a2b5;font-size:14px;max-width:390px;margin:0}
        .footer-col{display:flex;flex-direction:column;gap:7px}
        .footer-col h3{font-size:15px;color:var(--lime);margin:0 0 8px}
        .footer-col a,.footer-col p{font-size:13px;color:#b8b0c2;margin:0;transition:var(--ease)}
        .footer-col a:hover{color:var(--lime);padding-left:4px}
        .footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:19px;display:flex;justify-content:space-between;gap:20px;color:#898190;font-size:12px}
        @media (max-width:1024px){
            .nav-wrap{gap:16px}.nav-links{gap:1px}.nav-links a{padding:8px 7px;font-size:13px}
            .hero-inner{gap:35px}.guide-layout{grid-template-columns:245px 1fr}
        }
        @media (max-width:768px){
            .container{width:min(100% - 34px,620px)}
            .nav-wrap{height:68px}.menu-toggle{display:block;margin-left:auto}
            .header-cta{padding:9px 12px;font-size:12px}
            .nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--night);padding:12px 17px 18px;flex-direction:column;align-items:stretch;border-top:1px solid var(--line)}
            .nav-links.show{display:flex}.nav-links a{padding:13px 12px}
            .hero{padding:54px 0 50px}.hero-inner,.faq-layout{grid-template-columns:1fr;gap:34px}
            .hero h1{font-size:42px}.hero-copy{font-size:15px}
            .hero-board{max-width:510px;transform:none;margin:auto;width:100%}
            .section{padding:65px 0}.section-head{display:block}.section-head h2,.faq-intro h2{font-size:29px;margin-bottom:12px}
            .section-head p{max-width:none}.guide-layout{grid-template-columns:1fr}
            .guide-index{position:static}.guide-content{grid-template-columns:1fr 1fr}
            .process-list{grid-template-columns:1fr 1fr}
            .process-item:nth-child(2){border-right:0}.process-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
            .cta-box{display:block;padding:29px 25px}.cta-box .btn{margin-top:22px}
            .footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}
            .footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}
        }
        @media (max-width:520px){
            .container{width:calc(100% - 28px)}
            .logo{font-size:16px}.logo-mark{width:28px;height:28px}
            .header-cta{display:none}.hero h1{font-size:35px;letter-spacing:-1px}
            .hero-actions{display:grid;grid-template-columns:1fr}.btn{width:100%}
            .question-map{gap:7px}.map-cell{min-height:68px;padding:9px;font-size:11px}
            .guide-content,.process-list{grid-template-columns:1fr}
            .process-item,.process-item:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
            .process-item:last-child{border-bottom:0}
            .footer-grid{grid-template-columns:1fr;gap:27px}.footer-brand{grid-column:auto}
        }

/* 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}
