/* roulang page: index */
:root{
            --ink:#163d38;
            --ink-deep:#0d2d2a;
            --mint:#dcece5;
            --mint-strong:#9ccbbb;
            --amber:#d99a45;
            --amber-soft:#fbefdc;
            --paper:#fffdf9;
            --warm:#f5f3ee;
            --text:#26312f;
            --muted:#687570;
            --line:#dce4df;
            --radius:16px;
            --shadow:0 16px 42px rgba(17,55,49,.09);
            --container:1200px;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;background:var(--warm);color:var(--text);line-height:1.75;font-size:16px}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input,textarea,select{font:inherit}
        button{cursor:pointer}
        :focus-visible{outline:3px solid rgba(217,154,69,.55);outline-offset:3px}
        .container{width:min(var(--container),calc(100% - 48px));margin:auto}
        .topline{height:34px;background:var(--ink-deep);color:#cfe2db;font-size:12px}
        .topline .container{height:100%;display:flex;justify-content:space-between;align-items:center}
        .topline strong{color:#f2d29e;font-weight:600}
        header{background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}
        .nav-wrap{min-height:78px;display:flex;align-items:center;gap:28px}
        .brand{display:flex;align-items:center;gap:11px;min-width:245px}
        .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--ink);color:#f9d79f;display:grid;place-items:center;font-weight:800;font-size:18px;box-shadow:5px 5px 0 var(--mint-strong)}
        .brand-text{font-size:18px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
        nav{display:flex;align-items:center;gap:5px;flex:1}
        nav a{padding:10px 13px;border-radius:9px;color:#53625e;font-size:14px;transition:.25s}
        nav a:hover,nav a.active{color:var(--ink);background:var(--mint)}
        .nav-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
        .menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:9px;padding:8px 12px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:12px 20px;font-weight:700;font-size:14px;transition:.25s}
        .btn-primary{background:var(--ink);color:#fff}
        .btn-primary:hover{background:#205b53;transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,63,58,.18)}
        .btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}
        .btn-secondary:hover{background:var(--mint);border-color:var(--mint-strong)}
        .hero{padding:82px 0 76px;background:var(--paper);overflow:hidden;position:relative}
        .hero:after{content:"";position:absolute;width:430px;height:430px;border:1px solid #d4e5de;border-radius:50%;right:-120px;top:-160px;box-shadow:0 0 0 38px rgba(220,236,229,.45),0 0 0 76px rgba(220,236,229,.22)}
        .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;position:relative;z-index:1}
        .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:13px;font-weight:800;letter-spacing:.08em}
        .eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--amber)}
        h1{font-size:clamp(40px,5vw,62px);line-height:1.18;color:var(--ink-deep);letter-spacing:-.04em;margin:18px 0 22px}
        .hero-copy{font-size:18px;color:var(--muted);max-width:650px}
        .hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
        .hero-note{display:flex;gap:20px;margin-top:30px;color:var(--muted);font-size:13px}
        .hero-note span{display:flex;align-items:center;gap:7px}
        .dot{width:8px;height:8px;border-radius:50%;background:#63ad8c;box-shadow:0 0 0 4px #e3f2ea}
        .visual-board{background:var(--ink);border-radius:24px;padding:25px;color:#e9f4ef;box-shadow:var(--shadow);min-height:330px;position:relative;overflow:hidden}
        .visual-board:before{content:"";position:absolute;inset:18px;border:1px solid rgba(201,235,220,.18);border-radius:18px}
        .board-head,.board-body{position:relative;z-index:1}
        .board-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.16);padding-bottom:20px}
        .board-title{font-size:17px;font-weight:700}
        .status-pill{background:#d8f1e0;color:#276448;border-radius:30px;padding:5px 10px;font-size:12px}
        .board-body{padding-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
        .signal{grid-column:span 2;background:rgba(255,255,255,.08);border-radius:13px;padding:18px}
        .signal-line{height:7px;border-radius:8px;background:linear-gradient(90deg,#8ad1b2 0 76%,rgba(255,255,255,.16) 76%);margin-top:13px}
        .mini-data{border:1px solid rgba(255,255,255,.14);padding:15px;border-radius:12px}
        .mini-data small{color:#aac8bd;display:block;font-size:12px}.mini-data b{display:block;margin-top:5px;color:#fff;font-size:20px}
        section{padding:88px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:32px}
        h2{color:var(--ink-deep);font-size:clamp(28px,3vw,38px);line-height:1.3;letter-spacing:-.03em;margin-top:10px}
        .section-desc{color:var(--muted);max-width:570px}
        .status-strip{background:var(--ink);color:#fff;padding:24px 28px;border-radius:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
        .status-item{padding-left:20px;border-left:1px solid rgba(255,255,255,.2)}
        .status-item:first-child{border-left:0;padding-left:0}.status-item small{color:#a9c5bc;display:block;font-size:12px}.status-item strong{font-size:18px;display:block;margin-top:3px}
        .quality{background:var(--paper)}
        .quality-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;align-items:start}
        .quality-intro p{color:var(--muted);margin-top:18px}
        .quality-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}
        .quality-row{padding:20px 10px;border-bottom:1px solid var(--line);display:flex;gap:14px}
        .quality-row em{font-style:normal;color:var(--amber);font-weight:800}.quality-row b{color:var(--ink)}.quality-row p{font-size:14px;color:var(--muted);margin-top:3px}
        .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative}
        .process-grid:before{content:"";height:1px;background:var(--mint-strong);position:absolute;top:27px;left:8%;right:8%}
        .step{position:relative;z-index:1}.step-num{width:55px;height:55px;border-radius:50%;background:var(--paper);border:1px solid var(--mint-strong);display:grid;place-items:center;color:var(--ink);font-weight:800;margin-bottom:18px}
        .step h3,.feature h3,.faq h3{font-size:19px;color:var(--ink);margin-bottom:7px}.step p,.feature p{color:var(--muted);font-size:14px}
        .download{background:var(--mint)}
        .download-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}
        .device{width:220px;height:390px;background:var(--ink-deep);border:8px solid #e7f0eb;border-radius:32px;margin:auto;box-shadow:0 20px 35px rgba(18,63,58,.18);padding:30px 16px;color:#fff}
        .device-top{height:5px;width:60px;background:#6a9288;border-radius:4px;margin:0 auto 35px}
        .device-logo{width:55px;height:55px;border-radius:17px;background:var(--amber);display:grid;place-items:center;color:var(--ink-deep);font-weight:900;font-size:24px;margin-bottom:22px}
        .device-bar{height:12px;border-radius:8px;background:#47746b;margin:13px 0}.device-bar.short{width:65%;background:#d5a45e}.device-card{height:84px;background:rgba(255,255,255,.09);border-radius:12px;margin-top:22px}
        .download-info p{color:#54716a;margin:17px 0 24px}.version-box{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.version-box span{padding:7px 11px;border-radius:8px;background:rgba(255,255,255,.65);font-size:13px;color:var(--ink)}
        .download-note{font-size:13px;color:#5f7771;margin-top:17px}
        .timeline{border-left:2px solid var(--mint-strong);padding-left:28px;display:grid;gap:25px}.timeline-item{position:relative}.timeline-item:before{content:"";position:absolute;width:10px;height:10px;background:var(--amber);border-radius:50%;left:-34px;top:8px}.timeline-item time{font-size:13px;color:var(--muted)}.timeline-item h3{color:var(--ink);font-size:18px;margin:4px 0}.timeline-item p{color:var(--muted);font-size:14px}
        .news{background:var(--paper)}.news-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:18px}.featured-news,.news-list{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:27px}.featured-news{min-height:230px;display:flex;flex-direction:column;justify-content:space-between}.news-tag,.label{display:inline-block;color:#9b6728;background:var(--amber-soft);padding:4px 9px;border-radius:6px;font-size:12px;font-weight:700}.featured-news h3{font-size:25px;color:var(--ink);line-height:1.4;margin:20px 0 10px}.news-meta{font-size:13px;color:var(--muted)}.news-list{padding:5px 25px}.news-item{padding:17px 0;border-bottom:1px solid var(--line)}.news-item:last-child{border-bottom:0}.news-item a{display:flex;justify-content:space-between;gap:15px;color:var(--ink);font-weight:700}.news-item a:hover{color:#398273}.news-item p{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.empty-state{padding:30px;color:var(--muted);text-align:center}
        .notice{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:var(--amber-soft);border:1px solid #efd4a9;border-radius:14px;padding:17px 21px}.notice strong{color:#754b1d}.notice p{font-size:14px;color:#765f43}.notice time{font-size:13px;color:#977449}
        .guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{background:var(--paper);border:1px solid var(--line);padding:25px;border-radius:14px}.feature-icon{width:42px;height:42px;border-radius:12px;background:var(--mint);color:var(--ink);display:grid;place-items:center;font-weight:800;margin-bottom:19px}
        .security{background:var(--ink);color:#fff}.security h2{color:#fff}.security .section-desc{color:#b6cdc5}.security-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.security-card{border:1px solid rgba(255,255,255,.16);padding:23px;border-radius:14px}.security-card h3{color:#e4f2eb;font-size:18px;margin-bottom:7px}.security-card p{color:#acc6bc;font-size:14px}
        .rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rule{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px}.rule b{color:var(--ink);display:block;margin-bottom:6px}.rule p{color:var(--muted);font-size:14px}
        .faq-wrap{max-width:880px;margin:auto}.faq{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;color:var(--ink);font-weight:700}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"＋";color:var(--amber);font-size:20px}.faq[open] summary:after{content:"－"}.faq p{color:var(--muted);font-size:14px;padding:12px 25px 0 0}
        .feedback{background:var(--paper)}.feedback-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.feedback-copy p{color:var(--muted);margin-top:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;font-size:13px;color:var(--ink);font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:9px;padding:11px 13px;color:var(--text)}.field textarea{min-height:105px;resize:vertical}.field.full{grid-column:span 2}.form-tip{font-size:12px;color:var(--muted);margin-top:12px}
        .responsibility{padding:30px 0;background:#edf1eb}.responsibility .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.responsibility h3{color:var(--ink);font-size:18px}.responsibility p{color:var(--muted);font-size:14px;max-width:800px}
        footer{background:var(--ink-deep);color:#d6e5df;padding:55px 0 25px}.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px;padding-bottom:42px;border-bottom:1px solid rgba(255,255,255,.14)}.footer-brand p{color:#9fbab1;font-size:13px;max-width:280px;margin-top:15px}.footer-title{font-weight:700;color:#fff;margin-bottom:13px}.footer-links{display:grid;gap:8px}.footer-links a{color:#a9c2b9;font-size:13px;transition:.2s}.footer-links a:hover{color:#f0c985}.copyright{padding-top:22px;color:#87a49b;font-size:12px;display:flex;justify-content:space-between;gap:20px}
        @media(max-width:1024px){.hero-grid,.quality-grid,.download-grid,.feedback-grid{gap:38px}.brand{min-width:205px}nav a{padding:9px 7px}.process-grid{grid-template-columns:repeat(2,1fr);gap:30px}.process-grid:before{display:none}.status-strip{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1.5fr 1fr 1fr}}
        @media(max-width:768px){.container{width:min(100% - 32px,var(--container))}.topline .container{justify-content:center}.topline span:last-child{display:none}.nav-wrap{min-height:68px;flex-wrap:wrap;gap:12px}.brand{min-width:0;flex:1}.brand-text{font-size:16px}.menu-toggle{display:block}nav{display:none;order:4;flex-basis:100%;padding:8px 0 15px;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{padding:11px 13px}.nav-actions .btn-secondary{display:none}.hero{padding:58px 0}.hero-grid,.quality-grid,.download-grid,.feedback-grid,.news-layout{grid-template-columns:1fr}.hero:after{opacity:.45}.visual-board{min-height:290px}.section-head{display:block}.section-head .section-desc{margin-top:12px}.quality-list,.guide-grid,.rules-grid,.security-grid{grid-template-columns:1fr}.status-strip{grid-template-columns:1fr 1fr}.download-grid{gap:35px}.device{width:190px;height:340px}.notice{grid-template-columns:auto 1fr}.notice time{grid-column:2}.footer-main{grid-template-columns:1fr 1fr}.copyright{display:block}.copyright span{display:block;margin-top:7px}}
        @media(max-width:520px){body{font-size:15px}.topline{font-size:11px}.hero h1{font-size:37px}.hero-copy{font-size:16px}.hero-actions .btn{width:100%}.hero-note{display:block}.hero-note span{margin-top:8px}.status-strip{grid-template-columns:1fr;padding:20px}.status-item{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:13px 0 0}.status-item:first-child{border-top:0;padding-top:0}.process-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-main{grid-template-columns:1fr}.responsibility .container{display:block}.responsibility .btn{margin-top:18px;width:100%}}

/* roulang page: article */
:root{
            --ink:#163d38;
            --ink-deep:#0d2d2a;
            --mint:#dcece5;
            --mint-strong:#9ccbbb;
            --amber:#d99a45;
            --amber-soft:#fbefdc;
            --paper:#fffdf9;
            --warm:#f5f3ee;
            --text:#26312f;
            --muted:#687570;
            --line:#dce4df;
            --radius:16px;
            --shadow:0 16px 42px rgba(17,55,49,.09);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            background:var(--warm);
            color:var(--text);
            font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
            font-size:16px;
            line-height:1.75;
        }
        a{color:inherit;text-decoration:none}
        a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{
            outline:3px solid rgba(217,154,69,.48);
            outline-offset:3px;
        }
        img{display:block;max-width:100%}
        button,input,textarea,select{font:inherit}
        button{cursor:pointer}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        header{
            position:sticky;
            top:0;
            z-index:20;
            background:rgba(255,253,249,.96);
            border-bottom:1px solid var(--line);
            backdrop-filter:blur(12px);
        }
        .nav-wrap{min-height:78px;display:flex;align-items:center;gap:28px}
        .brand{display:flex;align-items:center;gap:11px;min-width:245px}
        .brand-mark{
            width:38px;height:38px;border-radius:12px;background:var(--ink);
            color:#f9d79f;display:grid;place-items:center;font-weight:800;font-size:18px;
            box-shadow:5px 5px 0 var(--mint-strong)
        }
        .brand-text{font-size:18px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
        nav{display:flex;align-items:center;gap:5px;flex:1}
        nav a{
            padding:10px 13px;border-radius:9px;color:#53625e;font-size:14px;
            transition:.25s ease;
        }
        nav a:hover,nav a.active{color:var(--ink);background:var(--mint)}
        .nav-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
        .menu-toggle{
            display:none;border:1px solid var(--line);background:var(--paper);
            color:var(--ink);border-radius:9px;padding:8px 12px
        }
        .btn{
            display:inline-flex;align-items:center;justify-content:center;gap:8px;
            border:1px solid transparent;border-radius:10px;padding:12px 20px;
            font-weight:700;font-size:14px;transition:.25s ease
        }
        .btn-primary{background:var(--ink);color:#fff}
        .btn-primary:hover{
            background:#205b53;transform:translateY(-2px);
            box-shadow:0 8px 18px rgba(18,63,58,.18)
        }
        .btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}
        .btn-secondary:hover{background:var(--mint);border-color:var(--mint-strong)}
        main{min-height:600px}
        .article-top{
            padding:54px 0 42px;
            background:var(--paper);
            border-bottom:1px solid var(--line);
        }
        .breadcrumb{
            display:flex;align-items:center;gap:10px;flex-wrap:wrap;
            color:var(--muted);font-size:13px;margin-bottom:26px
        }
        .breadcrumb a:hover{color:var(--ink)}
        .breadcrumb .current{color:var(--ink);font-weight:700}
        .article-heading{max-width:900px}
        .eyebrow,.section-kicker{
            display:inline-flex;align-items:center;gap:8px;color:var(--amber);
            font-size:13px;font-weight:800;letter-spacing:.08em
        }
        .eyebrow:before,.section-kicker:before{
            content:"";width:24px;height:2px;background:var(--amber)
        }
        h1,h2,h3,p{margin-top:0}
        h1{
            color:var(--ink-deep);font-size:clamp(32px,4.5vw,54px);
            line-height:1.25;letter-spacing:-.035em;margin:18px 0 22px
        }
        .article-summary{max-width:780px;color:var(--muted);font-size:17px;margin-bottom:24px}
        .article-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:13px}
        .meta-label,.tag{
            display:inline-flex;align-items:center;color:#9b6728;
            background:var(--amber-soft);padding:4px 10px;border-radius:6px;
            font-size:12px;font-weight:700
        }
        .article-layout{
            display:grid;grid-template-columns:minmax(0,820px) 260px;
            gap:54px;align-items:start;padding:68px 0 82px
        }
        .article-paper{
            background:var(--paper);border:1px solid var(--line);
            border-radius:var(--radius);box-shadow:0 10px 30px rgba(17,55,49,.045);
            padding:clamp(26px,5vw,58px)
        }
        .article-content{font-size:17px;color:#35423e}
        .article-content h2{
            color:var(--ink);font-size:30px;line-height:1.35;
            margin:38px 0 16px;padding-top:8px
        }
        .article-content h3{color:var(--ink);font-size:21px;margin:28px 0 10px}
        .article-content p{margin-bottom:20px}
        .article-content ul,.article-content ol{padding-left:25px;margin:0 0 23px}
        .article-content li{margin:8px 0}
        .article-content blockquote{
            margin:28px 0;padding:18px 22px;border-left:4px solid var(--amber);
            background:var(--amber-soft);color:#5d503f;border-radius:0 10px 10px 0
        }
        .article-content table{
            width:100%;border-collapse:collapse;margin:25px 0;
            background:#fff;border:1px solid var(--line)
        }
        .article-content th,.article-content td{
            border:1px solid var(--line);padding:12px 14px;text-align:left
        }
        .article-content th{background:var(--mint);color:var(--ink)}
        .article-content img{border-radius:12px;margin:26px auto}
        .article-content a{color:#2d7768;text-decoration:underline;text-underline-offset:3px}
        .side-stack{display:grid;gap:16px;position:sticky;top:108px}
        .side-card{
            background:var(--paper);border:1px solid var(--line);
            border-radius:14px;padding:21px
        }
        .side-card h3{color:var(--ink);font-size:18px;margin-bottom:10px}
        .side-card p{color:var(--muted);font-size:14px;margin-bottom:0}
        .side-card .line{
            height:1px;background:var(--line);margin:15px 0
        }
        .notice{
            display:flex;gap:16px;align-items:flex-start;
            margin-top:28px;padding:21px 23px;background:var(--mint);
            border:1px solid var(--mint-strong);border-radius:13px
        }
        .notice-icon{
            flex:0 0 32px;height:32px;border-radius:50%;background:var(--ink);
            color:#fff;display:grid;place-items:center;font-weight:800
        }
        .notice strong{display:block;color:var(--ink);margin-bottom:3px}
        .notice p{color:#4e625c;font-size:14px;margin:0}
        .article-feedback{
            margin-top:30px;padding-top:24px;border-top:1px solid var(--line);
            display:flex;justify-content:space-between;align-items:center;gap:18px;
            color:var(--muted);font-size:14px
        }
        .feedback-actions{display:flex;gap:8px}
        .feedback-actions button{
            border:1px solid var(--line);background:var(--paper);color:var(--ink);
            border-radius:8px;padding:8px 13px;transition:.25s
        }
        .feedback-actions button:hover,.feedback-actions button:active{
            background:var(--mint);border-color:var(--mint-strong)
        }
        .return-bar{
            border-top:1px solid var(--line);padding-top:26px;margin-top:30px;
            display:flex;justify-content:space-between;gap:18px;align-items:center
        }
        .return-bar p{color:var(--muted);font-size:14px;margin:0}
        footer{background:var(--ink-deep);color:#d5e5df}
        .footer-main{
            display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;
            gap:38px;padding:58px 0 45px
        }
        .footer-brand .brand{margin-bottom:18px}
        .footer-brand .brand-text{color:#fff!important}
        .footer-brand p{color:#a8c2b9;max-width:310px;font-size:14px;margin:0}
        .footer-title{color:#fff;font-weight:700;margin-bottom:14px}
        .footer-links{display:grid;gap:8px}
        .footer-links a{color:#a8c2b9;font-size:14px;transition:.2s}
        .footer-links a:hover{color:#f2c77e;transform:translateX(2px)}
        .copyright{
            border-top:1px solid rgba(220,236,229,.16);padding:18px 0 22px;
            display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;
            color:#8faea4;font-size:12px
        }
        @media(max-width:1024px){
            .nav-wrap{gap:15px}.brand{min-width:205px}
            nav a{padding:9px 8px;font-size:13px}
            .article-layout{grid-template-columns:minmax(0,1fr) 230px;gap:28px}
        }
        @media(max-width:768px){
            .container{width:min(100% - 32px,var(--container))}
            .nav-wrap{min-height:70px;justify-content:space-between}
            .brand{min-width:0}.brand-text{font-size:16px}
            nav{
                display:none;position:absolute;left:16px;right:16px;top:78px;
                padding:10px;background:var(--paper);border:1px solid var(--line);
                border-radius:13px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch
            }
            nav.open{display:flex}
            nav a{padding:12px 14px}
            .nav-actions .btn-secondary{display:none}
            .menu-toggle{display:inline-block}
            .article-top{padding:38px 0 32px}
            .article-layout{display:block;padding:38px 0 55px}
            .side-stack{position:static;margin-top:22px;grid-template-columns:1fr 1fr}
            .article-content{font-size:16px}
            .article-content h2{font-size:25px}
            .article-feedback,.return-bar{align-items:flex-start;flex-direction:column}
            .footer-main{grid-template-columns:1fr 1fr;gap:30px;padding:42px 0 35px}
        }
        @media(max-width:520px){
            h1{font-size:34px}
            .article-summary{font-size:16px}
            .article-paper{padding:23px 19px}
            .side-stack{grid-template-columns:1fr}
            .footer-main{grid-template-columns:1fr}
            .copyright{display:block}.copyright span{display:block;margin-top:5px}
            .nav-actions .btn-primary{padding:10px 13px;font-size:13px}
        }

/* roulang page: category1 */
:root{
        --ink:#163d38;
        --ink-deep:#0d2d2a;
        --mint:#dcece5;
        --mint-strong:#9ccbbb;
        --amber:#d99a45;
        --amber-soft:#fbefdc;
        --paper:#fffdf9;
        --warm:#f5f3ee;
        --text:#26312f;
        --muted:#687570;
        --line:#dce4df;
        --radius:16px;
        --shadow:0 16px 42px rgba(17,55,49,.09);
        --container:1200px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--warm);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.75}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input,textarea,select{font:inherit}
    button{cursor:pointer}
    .container{width:min(var(--container),calc(100% - 48px));margin:auto}
    header{position:sticky;top:0;z-index:20;background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
    .nav-wrap{min-height:78px;display:flex;align-items:center;gap:28px}
    .brand{display:flex;align-items:center;gap:11px;min-width:245px}
    .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--ink);color:#f9d79f;display:grid;place-items:center;font-weight:800;font-size:18px;box-shadow:5px 5px 0 var(--mint-strong)}
    .brand-text{font-size:18px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
    nav{display:flex;align-items:center;gap:5px;flex:1}
    nav a{padding:10px 13px;border-radius:9px;color:#53625e;font-size:14px;transition:.25s}
    nav a:hover,nav a.active{color:var(--ink);background:var(--mint)}
    .nav-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
    .menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:9px;padding:8px 12px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:12px 20px;font-weight:700;font-size:14px;transition:.25s}
    .btn-primary{background:var(--ink);color:#fff}
    .btn-primary:hover{background:#205b53;transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,63,58,.18)}
    .btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}
    .btn-secondary:hover{background:var(--mint);border-color:var(--mint-strong)}
    .btn:focus-visible,.menu-toggle:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(217,154,69,.45);outline-offset:3px}
    main{overflow:hidden}
    .page-intro{padding:70px 0 64px;background:var(--paper);border-bottom:1px solid var(--line)}
    .breadcrumb{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:26px}
    .breadcrumb a:hover{color:var(--ink)}
    .breadcrumb .current{color:var(--ink);font-weight:700}
    .intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}
    .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:13px;font-weight:800;letter-spacing:.08em}
    .eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--amber)}
    h1,h2,h3,p{margin-top:0}
    h1{color:var(--ink-deep);font-size:clamp(36px,5vw,58px);line-height:1.16;letter-spacing:-.04em;margin:17px 0 18px}
    h2{font-size:32px;line-height:1.3;color:var(--ink-deep);margin:12px 0}
    h3{font-size:20px;line-height:1.4;color:var(--ink)}
    .intro-copy{font-size:17px;color:var(--muted);max-width:690px;margin-bottom:0}
    .intro-note{padding:24px;background:var(--mint);border:1px solid #c8dfd5;border-radius:var(--radius)}
    .intro-note strong{display:block;color:var(--ink);font-size:18px;margin-bottom:7px}
    .intro-note p{color:#58716a;font-size:14px;margin-bottom:0}
    section{padding:78px 0}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}
    .section-desc{color:var(--muted);max-width:560px;margin-bottom:0}
    .content-layout{display:grid;grid-template-columns:1fr 315px;gap:28px;align-items:start}
    .news-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:10px 28px}
    .news-item{padding:24px 0;border-bottom:1px solid var(--line)}
    .news-item:last-child{border-bottom:0}
    .news-top{display:flex;align-items:center;gap:10px;margin-bottom:9px}
    .news-tag,.label{display:inline-block;color:#9b6728;background:var(--amber-soft);padding:4px 9px;border-radius:6px;font-size:12px;font-weight:700}
    .news-date{font-size:13px;color:var(--muted)}
    .news-item h3{margin:0 0 7px;font-size:21px}
    .news-item h3 a{transition:.2s}
    .news-item h3 a:hover{color:#398273}
    .news-item p{color:var(--muted);font-size:14px;margin:0;max-width:780px}
    .news-arrow{color:var(--amber);font-size:22px;transition:.2s}
    .news-item:hover .news-arrow{transform:translateX(5px)}
    .empty-state{padding:58px 20px;text-align:center;color:var(--muted)}
    .side-card{background:var(--ink);color:#fff;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}
    .side-card .section-kicker{color:#f2c47e}
    .side-card h3{color:#fff;font-size:23px;margin:17px 0 10px}
    .side-card p{color:#b8d0c8;font-size:14px}
    .side-list{list-style:none;padding:0;margin:22px 0 0}
    .side-list li{padding:12px 0;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;gap:10px;color:#d6e5df;font-size:14px}
    .side-list span{color:#9fc7ba}
    .filter-strip{display:flex;flex-wrap:wrap;gap:10px;padding:16px 20px;background:var(--mint);border:1px solid #c8dfd5;border-radius:12px;margin-bottom:24px}
    .filter-strip span{font-size:13px;color:var(--ink);padding:7px 13px;border-radius:8px;background:rgba(255,255,255,.62)}
    .filter-strip span.active{background:var(--ink);color:#fff}
    .quality-band{background:#eef4f0}
    .quality-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;align-items:start}
    .quality-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
    .quality-row{padding:19px 10px;border-bottom:1px solid var(--line);display:flex;gap:13px}
    .quality-row em{font-style:normal;color:var(--amber);font-weight:800}
    .quality-row b{color:var(--ink)}
    .quality-row p{font-size:14px;color:var(--muted);margin:3px 0 0}
    .faq-list{max-width:860px;margin:auto}
    .faq-item{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}
    .faq-question{width:100%;border:0;background:transparent;color:var(--ink);display:flex;justify-content:space-between;text-align:left;padding:20px 23px;font-weight:700}
    .faq-question:hover{background:var(--mint)}
    .faq-question span:last-child{color:var(--amber);font-size:22px;line-height:1}
    .faq-answer{display:none;padding:0 23px 20px;color:var(--muted);font-size:14px}
    .faq-item.open .faq-answer{display:block}
    .faq-item.open .faq-question{background:var(--mint)}
    .cta-band{padding:42px;background:var(--amber-soft);border:1px solid #efd8b6;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;gap:25px}
    .cta-band h2{font-size:27px;margin:0 0 6px}
    .cta-band p{margin:0;color:var(--muted);font-size:14px}
    footer{background:var(--ink-deep);color:#dceae5;padding-top:52px}
    .footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:35px;padding-bottom:42px}
    .footer-brand p{color:#9eb9b0;font-size:14px;max-width:310px;margin:20px 0 0}
    .footer-title{color:#fff;font-weight:700;margin-bottom:15px}
    .footer-links{display:flex;flex-direction:column;gap:8px}
    .footer-links a{color:#9eb9b0;font-size:14px;transition:.2s}
    .footer-links a:hover{color:#f3cb8d}
    .copyright{border-top:1px solid rgba(255,255,255,.13);padding:20px 0;display:flex;justify-content:space-between;gap:15px;color:#86a69c;font-size:12px}
    @media(max-width:1024px){
        .nav-wrap{gap:15px}.brand{min-width:215px}.brand-text{font-size:16px}nav a{padding:9px 8px;font-size:13px}
        .intro-grid,.quality-grid{gap:35px}.content-layout{grid-template-columns:1fr 280px}
    }
    @media(max-width:768px){
        .container{width:min(var(--container),calc(100% - 32px))}
        .nav-wrap{min-height:68px;justify-content:space-between}.brand{min-width:0}.brand-text{font-size:15px}
        .menu-toggle{display:block}nav{display:none;position:absolute;left:16px;right:16px;top:74px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
        nav.show{display:flex}nav a{padding:12px 14px}.nav-actions .btn{display:none}
        .page-intro{padding:48px 0 45px}.intro-grid,.content-layout,.quality-grid{grid-template-columns:1fr}
        h1{font-size:38px}.intro-copy{font-size:16px}.section-head{display:block}.section-desc{margin-top:12px}
        section{padding:58px 0}.quality-list{grid-template-columns:1fr}.news-panel{padding:5px 20px}.news-item h3{font-size:19px}
        .cta-band{display:block;padding:30px}.cta-band .btn{margin-top:20px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}
        .copyright{display:block}.copyright span{display:block;margin:5px 0}
    }
    @media(max-width:520px){
        .brand-mark{width:34px;height:34px;font-size:16px}.brand-text{font-size:14px}
        .intro-note{padding:20px}.filter-strip{padding:12px}.news-top{flex-wrap:wrap}
        .footer-main{grid-template-columns:1fr}.footer-brand{padding-bottom:8px}
    }

/* roulang page: category2 */
:root{
            --ink:#163d38;
            --ink-deep:#0d2d2a;
            --mint:#dcece5;
            --mint-strong:#9ccbbb;
            --amber:#d99a45;
            --amber-soft:#fbefdc;
            --paper:#fffdf9;
            --warm:#f5f3ee;
            --text:#26312f;
            --muted:#687570;
            --line:#dce4df;
            --radius:16px;
            --shadow:0 16px 42px rgba(17,55,49,.09);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--warm);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input,textarea,select{font:inherit}
        button{cursor:pointer}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        header{position:sticky;top:0;z-index:30;background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
        .nav-wrap{min-height:78px;display:flex;align-items:center;gap:28px}
        .brand{display:flex;align-items:center;gap:11px;min-width:245px}
        .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--ink);color:#f9d79f;display:grid;place-items:center;font-weight:800;font-size:18px;box-shadow:5px 5px 0 var(--mint-strong)}
        .brand-text{font-size:18px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
        nav{display:flex;align-items:center;gap:5px;flex:1}
        nav a{padding:10px 13px;border-radius:9px;color:#53625e;font-size:14px;transition:.25s}
        nav a:hover,nav a.active{color:var(--ink);background:var(--mint)}
        .nav-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
        .menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:9px;padding:8px 12px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:12px 20px;font-weight:700;font-size:14px;transition:.25s}
        .btn-primary{background:var(--ink);color:#fff}
        .btn-primary:hover{background:#205b53;color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,63,58,.18)}
        .btn-primary:active,.btn-secondary:active{transform:translateY(0)}
        .btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}
        .btn-secondary:hover{background:var(--mint);border-color:var(--mint-strong)}
        .btn:focus-visible,nav a:focus-visible,.faq-question:focus-visible{outline:3px solid rgba(217,154,69,.42);outline-offset:3px}
        main{overflow:hidden}
        .breadcrumb-bar{padding:26px 0 0;color:var(--muted);font-size:13px}
        .breadcrumb-bar a:hover{color:var(--ink)}
        .breadcrumb-bar span{margin:0 9px;color:#a3afaa}
        .category-intro{padding:45px 0 62px}
        .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:13px;font-weight:800;letter-spacing:.08em}
        .eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--amber)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(36px,5vw,58px);line-height:1.18;letter-spacing:-.04em;color:var(--ink-deep);margin:17px 0 18px;max-width:800px}
        h2{font-size:clamp(28px,3vw,38px);line-height:1.25;color:var(--ink-deep);letter-spacing:-.025em;margin-bottom:14px}
        h3{font-size:20px;line-height:1.4;color:var(--ink);margin-bottom:8px}
        .intro-copy{max-width:720px;color:var(--muted);font-size:17px}
        section{padding:76px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
        .section-desc{max-width:580px;color:var(--muted);margin-bottom:0}
        .guide-panel{display:grid;grid-template-columns:1.08fr .92fr;gap:24px}
        .feature-card,.info-card,.step-card,.security-panel,.faq-wrap,.support-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 24px rgba(17,55,49,.04)}
        .feature-card{padding:34px;min-height:290px;display:flex;flex-direction:column;justify-content:space-between}
        .feature-card h3{font-size:27px;margin:18px 0 10px}
        .feature-card p,.info-card p,.step-card p,.security-panel p{color:var(--muted);font-size:15px}
        .label{display:inline-block;width:max-content;color:#9b6728;background:var(--amber-soft);padding:5px 10px;border-radius:7px;font-size:12px;font-weight:700}
        .feature-meta{display:flex;gap:22px;flex-wrap:wrap;color:var(--muted);font-size:13px;border-top:1px solid var(--line);padding-top:18px}
        .feature-meta strong{display:block;color:var(--ink);font-size:15px}
        .quick-list{display:grid;gap:12px}
        .info-card{padding:22px 24px;display:flex;gap:17px;align-items:flex-start;transition:.25s}
        .info-card:hover,.step-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--mint-strong)}
        .icon-box{flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:var(--mint);color:var(--ink);display:grid;place-items:center;font-weight:800}
        .info-card h3{font-size:17px;margin-bottom:4px}
        .info-card p{font-size:14px;margin-bottom:0}
        .steps-section{background:var(--paper)}
        .step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
        .step-card{position:relative;padding:26px 22px;min-height:205px;transition:.25s}
        .step-number{width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:22px}
        .step-card p{font-size:14px;margin-bottom:0}
        .device-section{padding-top:82px}
        .device-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
        .device-visual{min-height:360px;border-radius:28px;background:var(--ink);position:relative;display:grid;place-items:center;overflow:hidden;box-shadow:var(--shadow)}
        .device-visual:before,.device-visual:after{content:"";position:absolute;border:1px solid rgba(156,203,187,.32);border-radius:50%}
        .device-visual:before{width:310px;height:310px}
        .device-visual:after{width:440px;height:440px}
        .phone{position:relative;z-index:1;width:158px;height:286px;border:7px solid #dcece5;border-radius:25px;background:#f9f7f1;padding:10px;box-shadow:0 18px 35px rgba(0,0,0,.22)}
        .phone-top{height:8px;width:50px;background:var(--ink);border-radius:8px;margin:0 auto 20px}
        .phone-screen{height:185px;border-radius:12px;background:linear-gradient(145deg,#dcece5,#fffdf9);padding:16px}
        .screen-line{height:8px;border-radius:8px;background:var(--ink);margin-bottom:12px;opacity:.82}
        .screen-line.short{width:62%;background:var(--amber)}
        .screen-block{height:60px;border-radius:10px;background:#fff;margin-top:22px;border:1px solid #d8e2dc}
        .download-copy .device-logo{width:55px;height:55px;border-radius:17px;background:var(--amber);display:grid;place-items:center;color:var(--ink-deep);font-weight:900;font-size:24px;margin-bottom:20px}
        .download-copy p{color:var(--muted);max-width:560px}
        .version-box{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:24px 0;color:var(--muted);font-size:13px}
        .version-box strong{display:block;color:var(--ink);font-size:16px}
        .download-actions{display:flex;gap:12px;flex-wrap:wrap}
        .notice{margin-top:18px;color:var(--muted);font-size:13px}
        .compat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
        .compat-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:14px}
        .compat-card strong{display:block;color:var(--ink);font-size:17px;margin-bottom:8px}
        .compat-card span{color:var(--muted);font-size:14px}
        .security-section{background:var(--mint)}
        .security-panel{padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:30px}
        .security-list{display:grid;gap:14px}
        .security-item{display:flex;gap:12px;align-items:flex-start}
        .security-item b{display:block;color:var(--ink);font-size:16px}
        .security-item p{font-size:14px;margin:2px 0 0}
        .faq-wrap{padding:10px 28px}
        .faq-item{border-bottom:1px solid var(--line)}
        .faq-item:last-child{border-bottom:0}
        .faq-question{width:100%;padding:20px 0;border:0;background:none;text-align:left;color:var(--ink);font-weight:700;display:flex;justify-content:space-between;align-items:center}
        .faq-question span:last-child{font-size:22px;color:var(--amber);transition:.25s}
        .faq-answer{display:none;color:var(--muted);font-size:14px;padding:0 35px 20px 0}
        .faq-item.open .faq-answer{display:block}
        .faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
        .cta-section{padding:65px 0 85px}
        .support-card{background:var(--ink);color:#fff;padding:38px 42px;display:flex;justify-content:space-between;align-items:center;gap:28px}
        .support-card h2{color:#fff;margin-bottom:8px}
        .support-card p{color:#b9d0c7;margin-bottom:0}
        footer{background:var(--ink-deep);color:#dcece5}
        .footer-main{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:35px;padding:58px 0 44px}
        .footer-brand p{color:#a8c2b9;font-size:14px;max-width:285px;margin:20px 0 0}
        .footer-title{color:#fff;font-weight:700;margin-bottom:15px}
        .footer-links{display:grid;gap:9px}
        .footer-links a{color:#a8c2b9;font-size:14px;transition:.2s}
        .footer-links a:hover{color:#f9d79f;transform:translateX(2px)}
        .copyright{border-top:1px solid rgba(220,236,229,.15);padding:18px 0 22px;display:flex;justify-content:space-between;gap:20px;color:#8fa9a0;font-size:12px}
        @media(max-width:1024px){
            .nav-wrap{gap:14px}.brand{min-width:215px}.brand-text{font-size:16px}
            nav a{padding:9px 8px;font-size:13px}.nav-actions .btn{padding:10px 13px}
            .device-layout{gap:40px}.footer-main{grid-template-columns:1.5fr 1fr 1fr}
        }
        @media(max-width:768px){
            .container{width:min(100% - 32px,var(--container))}
            .nav-wrap{min-height:70px;flex-wrap:wrap}
            .brand{min-width:0;flex:1}.brand-text{font-size:15px}
            .menu-toggle{display:block}
            nav{display:none;order:4;flex-basis:100%;padding:8px 0 15px;align-items:stretch;flex-direction:column}
            nav.open{display:flex}
            nav a{padding:12px 14px}
            .nav-actions{margin-left:auto}.nav-actions .btn-secondary{display:none}
            .category-intro{padding:35px 0 45px} section{padding:58px 0}
            .section-head{display:block}.section-head .section-desc{margin-top:12px}
            .guide-panel,.device-layout,.security-panel{grid-template-columns:1fr;gap:18px}
            .step-grid{grid-template-columns:1fr 1fr}
            .compat-grid{grid-template-columns:1fr}
            .device-visual{min-height:320px}
            .support-card{display:block;padding:30px}.support-card .btn{margin-top:23px}
            .footer-main{grid-template-columns:1fr 1fr;gap:30px}
            .footer-brand{grid-column:1/-1}
            .copyright{display:block}.copyright span{display:block;margin-top:6px}
        }
        @media(max-width:520px){
            h1{font-size:35px}.intro-copy{font-size:16px}
            .step-grid{grid-template-columns:1fr}
            .feature-card{padding:25px}.feature-card h3{font-size:23px}
            .faq-wrap{padding:6px 20px}
            .download-actions .btn{width:100%}
            .footer-main{grid-template-columns:1fr}
        }

/* roulang page: category4 */
:root{
            --ink:#163d38;
            --ink-deep:#0d2d2a;
            --mint:#dcece5;
            --mint-strong:#9ccbbb;
            --amber:#d99a45;
            --amber-soft:#fbefdc;
            --paper:#fffdf9;
            --warm:#f5f3ee;
            --text:#26312f;
            --muted:#687570;
            --line:#dce4df;
            --radius:16px;
            --shadow:0 16px 42px rgba(17,55,49,.09);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--warm);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input,textarea,select{font:inherit}
        button{cursor:pointer}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        header{position:sticky;top:0;z-index:20;background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
        .nav-wrap{min-height:78px;display:flex;align-items:center;gap:28px}
        .brand{display:flex;align-items:center;gap:11px;min-width:245px}
        .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--ink);color:#f9d79f;display:grid;place-items:center;font-weight:800;font-size:18px;box-shadow:5px 5px 0 var(--mint-strong)}
        .brand-text{font-size:18px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
        nav{display:flex;align-items:center;gap:5px;flex:1}
        nav a{padding:10px 13px;border-radius:9px;color:#53625e;font-size:14px;transition:.25s}
        nav a:hover,nav a.active{color:var(--ink);background:var(--mint)}
        .nav-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
        .menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:9px;padding:8px 12px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:12px 20px;font-weight:700;font-size:14px;transition:.25s}
        .btn-primary{background:var(--ink);color:#fff}
        .btn-primary:hover{background:#205b53;transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,63,58,.18);color:#fff}
        .btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}
        .btn-secondary:hover{background:var(--mint);border-color:var(--mint-strong)}
        a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(217,154,69,.45);outline-offset:3px}
        .page-head{padding:46px 0 54px;background:var(--paper);border-bottom:1px solid var(--line)}
        .breadcrumb{font-size:13px;color:var(--muted);margin-bottom:28px}
        .breadcrumb a:hover{color:var(--ink)}
        .breadcrumb span{margin:0 9px;color:var(--mint-strong)}
        .section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:13px;font-weight:800;letter-spacing:.08em}
        .section-kicker:before{content:"";width:24px;height:2px;background:var(--amber)}
        h1,h2,h3,p{margin-top:0}
        h1{max-width:760px;margin:14px 0 16px;color:var(--ink-deep);font-size:clamp(34px,5vw,56px);line-height:1.2;letter-spacing:-.035em}
        .lead{max-width:700px;color:var(--muted);font-size:18px}
        section{padding:78px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}
        h2{margin:0;color:var(--ink);font-size:clamp(26px,3vw,36px);line-height:1.3}
        .section-desc{max-width:570px;color:var(--muted);margin:0}
        .index-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}
        .help-card,.rule-panel,.notice,.faq-wrap,.support-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 25px rgba(17,55,49,.04)}
        .help-card{padding:28px;min-height:190px;transition:.25s}
        .help-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--mint-strong)}
        .help-card.large{grid-row:span 2;background:var(--ink);color:#fff}
        .help-card.large h3,.help-card.large p{color:#fff}
        .card-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--mint);color:var(--ink);font-weight:800;margin-bottom:22px}
        .help-card.large .card-icon{background:var(--amber);color:var(--ink-deep)}
        .help-card h3{font-size:20px;color:var(--ink);margin-bottom:8px}
        .help-card p{font-size:14px;color:var(--muted);margin-bottom:0}
        .rule-area{background:#edf3ef}
        .rule-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:46px;align-items:start}
        .rule-panel{padding:30px}
        .rule-item{display:flex;gap:17px;padding:18px 0;border-bottom:1px solid var(--line)}
        .rule-item:last-child{border-bottom:0;padding-bottom:0}
        .rule-no{flex:none;color:var(--amber);font-weight:800;font-size:18px}
        .rule-item h3{font-size:18px;color:var(--ink);margin-bottom:4px}
        .rule-item p{font-size:14px;color:var(--muted);margin-bottom:0}
        .notice{padding:24px 28px;display:flex;gap:18px;align-items:flex-start}
        .notice-mark{flex:none;width:38px;height:38px;border-radius:50%;background:var(--amber-soft);color:#966222;display:grid;place-items:center;font-weight:800}
        .notice h3{color:var(--ink);font-size:19px;margin-bottom:5px}
        .notice p{color:var(--muted);font-size:14px;margin-bottom:0}
        .faq-wrap{overflow:hidden}
        .faq-item{border-bottom:1px solid var(--line)}
        .faq-item:last-child{border-bottom:0}
        .faq-question{width:100%;border:0;background:transparent;padding:21px 25px;text-align:left;color:var(--ink);font-weight:700;display:flex;justify-content:space-between;align-items:center}
        .faq-question:hover{background:var(--mint)}
        .faq-question span:last-child{color:var(--amber);font-size:23px;transition:.25s}
        .faq-answer{display:none;padding:0 25px 22px;color:var(--muted);font-size:14px}
        .faq-item.open .faq-answer{display:block}
        .faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
        .support-section{background:var(--paper)}
        .support-card{padding:38px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--mint)}
        .support-card h2{margin-bottom:10px}
        .support-card p{margin:0;color:var(--muted);max-width:650px}
        footer{background:var(--ink-deep);color:#d9e7e1}
        .footer-main{padding:56px 0 42px;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:35px}
        .footer-brand p{max-width:310px;color:#9fb9af;font-size:14px;margin:20px 0 0}
        .footer-brand .brand-text{color:#fff!important}
        .footer-title{color:#fff;font-weight:700;margin-bottom:15px}
        .footer-links{display:grid;gap:9px}
        .footer-links a{color:#a9c0b8;font-size:14px;transition:.2s}
        .footer-links a:hover{color:#f5d09a}
        .copyright{padding:18px 0;border-top:1px solid rgba(220,236,229,.16);display:flex;justify-content:space-between;gap:20px;color:#8da8a0;font-size:12px}
        @media (max-width:1024px){
            .brand{min-width:205px}
            nav a{padding:9px 8px;font-size:13px}
            .nav-wrap{gap:14px}
            .index-layout,.rule-grid{grid-template-columns:1fr}
            .help-card.large{grid-row:auto}
            .footer-main{grid-template-columns:1.4fr 1fr 1fr}
        }
        @media (max-width:768px){
            .container{width:min(100% - 32px,var(--container))}
            .nav-wrap{min-height:68px;flex-wrap:wrap}
            .brand{min-width:0;flex:1}
            .brand-text{font-size:16px}
            .menu-toggle{display:block}
            nav{display:none;order:4;flex-basis:100%;padding:8px 0 15px;flex-direction:column;align-items:stretch}
            nav.open{display:flex}
            nav a{padding:12px 14px}
            .nav-actions .btn-secondary{display:none}
            .nav-actions .btn{padding:10px 13px}
            .page-head{padding:34px 0 42px}
            .lead{font-size:16px}
            section{padding:56px 0}
            .section-head{display:block;margin-bottom:23px}
            .section-desc{margin-top:12px}
            .index-layout{gap:14px}
            .help-card{min-height:0;padding:23px}
            .rule-grid{gap:22px}
            .support-card{display:block;padding:28px}
            .support-card .btn{margin-top:22px}
            .footer-main{grid-template-columns:1fr 1fr;padding:42px 0 30px}
            .footer-brand{grid-column:1/-1}
            .copyright{display:block;line-height:2}
            .copyright span{display:block}
        }
        @media (max-width:520px){
            h1{font-size:34px}
            .brand-mark{width:34px;height:34px;font-size:16px}
            .nav-actions .btn-primary{font-size:13px;padding:9px 11px}
            .help-card.large{padding:24px}
            .notice{padding:20px}
            .faq-question{padding:18px}
            .faq-answer{padding:0 18px 18px}
            .footer-main{grid-template-columns:1fr}
        }

/* roulang page: category3 */
:root{
            --ink:#163d38;
            --ink-deep:#0d2d2a;
            --mint:#dcece5;
            --mint-strong:#9ccbbb;
            --amber:#d99a45;
            --amber-soft:#fbefdc;
            --paper:#fffdf9;
            --warm:#f5f3ee;
            --text:#26312f;
            --muted:#687570;
            --line:#dce4df;
            --radius:16px;
            --shadow:0 16px 42px rgba(17,55,49,.09);
            --container:1200px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;background:var(--warm);color:var(--text);line-height:1.75;font-size:16px}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input,textarea,select{font:inherit}
        button{cursor:pointer}
        .container{width:min(var(--container),calc(100% - 48px));margin:auto}
        header{background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}
        .nav-wrap{min-height:78px;display:flex;align-items:center;gap:28px}
        .brand{display:flex;align-items:center;gap:11px;min-width:245px}
        .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--ink);color:#f9d79f;display:grid;place-items:center;font-weight:800;font-size:18px;box-shadow:5px 5px 0 var(--mint-strong)}
        .brand-text{font-size:18px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
        nav{display:flex;align-items:center;gap:5px;flex:1}
        nav a{padding:10px 13px;border-radius:9px;color:#53625e;font-size:14px;transition:.25s}
        nav a:hover,nav a.active{color:var(--ink);background:var(--mint)}
        nav a:focus-visible,.btn:focus-visible,.menu-toggle:focus-visible,summary:focus-visible{outline:3px solid rgba(217,154,69,.55);outline-offset:3px}
        .nav-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
        .menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:9px;padding:8px 12px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:12px 20px;font-weight:700;font-size:14px;transition:.25s}
        .btn-primary{background:var(--ink);color:#fff}
        .btn-primary:hover{background:#205b53;transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,63,58,.18)}
        .btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}
        .btn-secondary:hover{background:var(--mint);border-color:var(--mint-strong)}
        .page-intro{padding:44px 0 52px;background:var(--paper);border-bottom:1px solid var(--line)}
        .crumbs{font-size:13px;color:var(--muted);margin-bottom:34px}
        .crumbs a:hover{color:var(--ink)}
        .crumbs span{margin:0 9px;color:#a2aea9}
        .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:13px;font-weight:800;letter-spacing:.08em}
        .eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--amber)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(34px,5vw,54px);line-height:1.2;color:var(--ink-deep);letter-spacing:-.035em;margin:12px 0 16px}
        h2{font-size:clamp(27px,3vw,36px);line-height:1.3;color:var(--ink);margin-bottom:12px}
        h3{font-size:19px;line-height:1.45;color:var(--ink);margin-bottom:8px}
        .intro-copy{max-width:710px;color:var(--muted);font-size:17px}
        section{padding:76px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}
        .section-desc{color:var(--muted);max-width:600px}
        .status-panel{background:var(--ink);color:#fff;border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
        .status-panel .section-kicker{color:#f4c77f}
        .status-panel h2{color:#fff;margin-top:10px}
        .status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:28px}
        .status-item{padding:8px 22px;border-left:1px solid rgba(255,255,255,.2)}
        .status-item:first-child{border-left:0;padding-left:0}
        .status-item small{display:block;color:#a9c5bc;font-size:12px}
        .status-item strong{display:block;font-size:18px;margin-top:4px}
        .state-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#8ed6a9;margin-right:7px}
        .quality-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
        .quality-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
        .quality-row{padding:20px 12px;border-bottom:1px solid var(--line);display:flex;gap:14px}
        .quality-row em{font-style:normal;color:var(--amber);font-weight:800}
        .quality-row b{display:block;color:var(--ink)}
        .quality-row p{font-size:14px;color:var(--muted);margin:3px 0 0}
        .stability-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
        .card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:25px;transition:.25s}
        .card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--mint-strong)}
        .icon-box{width:42px;height:42px;border-radius:12px;background:var(--mint);color:var(--ink);display:grid;place-items:center;font-weight:800;margin-bottom:20px}
        .card p{font-size:14px;color:var(--muted);margin-bottom:0}
        .notice-wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}
        .notice-list{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:8px 26px}
        .notice-item{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
        .notice-item:last-child{border-bottom:0}
        .notice-item strong{color:var(--ink)}
        .notice-item time{font-size:13px;color:var(--muted);white-space:nowrap}
        .label{display:inline-block;color:#9b6728;background:var(--amber-soft);padding:4px 9px;border-radius:6px;font-size:12px;font-weight:700;margin-right:8px}
        .side-note{background:var(--mint);border-radius:var(--radius);padding:28px;color:var(--ink)}
        .side-note p{font-size:14px;color:#536b64}
        .side-note .btn{margin-top:10px}
        .process{background:#eef4f0}
        .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}
        .process-grid:before{content:"";height:1px;background:var(--mint-strong);position:absolute;top:25px;left:8%;right:8%}
        .step{position:relative;z-index:1}
        .step-num{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--paper);border:1px solid var(--mint-strong);color:var(--ink);font-weight:800;margin-bottom:18px}
        .step p{font-size:14px;color:var(--muted)}
        .timeline{border-left:2px solid var(--mint-strong);padding-left:32px;max-width:850px}
        .timeline-item{position:relative;padding-bottom:25px}
        .timeline-item:last-child{padding-bottom:0}
        .timeline-item:before{content:"";position:absolute;width:10px;height:10px;background:var(--amber);border-radius:50%;left:-38px;top:8px}
        .timeline-item time{font-size:13px;color:var(--muted)}
        .timeline-item h3{margin:4px 0}
        .timeline-item p{font-size:14px;color:var(--muted);margin-bottom:0}
        .faq-list{max-width:900px;border-top:1px solid var(--line)}
        details{background:var(--paper);border-bottom:1px solid var(--line);padding:18px 4px}
        summary{cursor:pointer;color:var(--ink);font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:20px}
        summary::-webkit-details-marker{display:none}
        summary:after{content:"＋";color:var(--amber);font-size:20px;line-height:1}
        details[open] summary:after{content:"－"}
        details p{color:var(--muted);font-size:14px;padding:12px 30px 0 0;margin-bottom:0}
        .cta{padding:0 0 82px}
        .cta-box{background:var(--ink-deep);color:#fff;border-radius:var(--radius);padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:28px}
        .cta-box h2{color:#fff;margin-bottom:7px}
        .cta-box p{color:#b9cec7;margin-bottom:0}
        .cta-box .btn-secondary{background:#fff;border-color:#fff}
        footer{background:var(--ink-deep);color:#dce9e3}
        .footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;padding:54px 0 40px}
        .footer-brand p{color:#a9c2b9;font-size:14px;max-width:300px;margin-top:18px}
        .footer-brand .brand-text{color:#fff!important}
        .footer-title{font-weight:700;color:#fff;margin-bottom:15px}
        .footer-links{display:grid;gap:8px}
        .footer-links a{color:#a9c2b9;font-size:14px;transition:.2s}
        .footer-links a:hover{color:#f4c77f}
        .copyright{border-top:1px solid rgba(255,255,255,.12);padding:18px 0 24px;display:flex;justify-content:space-between;gap:20px;color:#8ea9a0;font-size:12px}
        @media(max-width:1024px){
            .nav-wrap{gap:14px}.brand{min-width:220px}.nav-actions .btn-secondary{display:none}
            nav a{padding:9px 8px}
            .quality-layout,.notice-wrap{grid-template-columns:1fr;gap:35px}
        }
        @media(max-width:768px){
            .container{width:min(var(--container),calc(100% - 32px))}
            .nav-wrap{min-height:68px;justify-content:space-between}
            .brand{min-width:0}.brand-text{font-size:16px}.brand-mark{width:34px;height:34px}
            .menu-toggle{display:block}
            nav{display:none;position:absolute;left:16px;right:16px;top:68px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:9px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
            nav.open{display:flex}
            nav a{padding:12px}
            .nav-actions{gap:7px}.nav-actions .btn-primary{padding:10px 12px}
            .page-intro{padding:32px 0 40px}.crumbs{margin-bottom:25px}
            section{padding:58px 0}.section-head{display:block;margin-bottom:24px}
            .section-desc{margin-top:12px}
            .status-grid{grid-template-columns:1fr 1fr;gap:20px}
            .status-item{border-left:0;padding:0}
            .quality-list,.stability-cards,.process-grid{grid-template-columns:1fr}
            .process-grid:before{display:none}
            .notice-item{display:block}.notice-item time{display:block;margin-top:5px}
            .timeline{padding-left:25px}.timeline-item:before{left:-31px}
            .cta-box{display:block;padding:30px 25px}.cta-box .btn{margin-top:22px}
            .footer-main{grid-template-columns:1fr 1fr;gap:28px;padding:42px 0 32px}
            .footer-brand{grid-column:1/-1}.copyright{display:block}.copyright span{display:block;margin-top:5px}
        }
        @media(max-width:520px){
            h1{font-size:36px}.intro-copy{font-size:16px}
            .status-panel{padding:24px 20px}.status-grid{gap:16px}
            .quality-row{padding:16px 5px}
            .footer-main{grid-template-columns:1fr}
        }
