/* roulang page: index */
:root{--green:#176b55;--green-dark:#0d4437;--ink:#17221f;--cream:#f5f2e9;--mist:#e7eee8;--orange:#e76f3c;--muted:#66736d;--line:#d5dfd7;--white:#fff;--radius:15px;--shadow:0 14px 34px rgba(23,34,31,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;border:0;cursor:pointer}p,h1,h2,h3{margin-top:0}.container{width:min(1180px,calc(100% - 40px));margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.eyebrow:before{content:"";width:24px;height:2px;background:var(--orange)}.section{padding:90px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}.section-head h2{margin:8px 0 0;font-size:32px;line-height:1.25;letter-spacing:-.03em}.section-head p{max-width:440px;margin:0;color:var(--muted)}.text-link{color:var(--green);font-weight:700;border-bottom:1px solid currentColor;padding-bottom:2px}.text-link:after{content:"  ↗"}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:9px;background:var(--green);color:var(--cream);font-weight:800;transition:.2s ease;gap:8px}.btn:hover{background:var(--green-dark);transform:translateY(-2px)}.btn:focus,.text-link:focus,a:focus,button:focus{outline:3px solid rgba(231,111,60,.35);outline-offset:3px}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}.btn.ghost:hover{background:var(--mist);border-color:var(--green);color:var(--green)}.btn.orange{background:var(--orange)}.tag{display:inline-flex;padding:3px 9px;border-radius:99px;background:var(--mist);color:var(--green);font-size:12px;font-weight:800}.tag.live{background:#fff0e9;color:var(--orange)}header{position:sticky;top:0;z-index:20;background:rgba(245,242,233,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{height:76px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:10px;min-width:220px}.brand-mark{width:35px;height:35px;border:2px solid var(--green);border-radius:50%;position:relative}.brand-mark:after,.brand-mark:before{content:"";position:absolute;background:var(--green)}.brand-mark:after{width:17px;height:2px;left:7px;top:15px;transform:rotate(-35deg)}.brand-mark:before{height:17px;width:2px;left:15px;top:7px;transform:rotate(35deg)}.brand strong{display:block;font-size:17px;line-height:1.1}.brand small{display:block;color:var(--green);font-size:10px;letter-spacing:.18em;font-weight:800;margin-top:3px}.nav-links{display:flex;align-items:center;gap:22px;flex:1}.nav-links a{font-size:14px;font-weight:700;color:#506059;padding:25px 0;position:relative;white-space:nowrap}.nav-links a:hover,.nav-links a.active{color:var(--green)}.nav-links a.active:after{content:"";position:absolute;bottom:16px;left:0;right:0;height:3px;background:var(--orange)}.menu{display:none;background:none;font-size:25px;color:var(--ink)}.hero{padding:76px 0 82px;background:linear-gradient(90deg,var(--cream) 0 58%,var(--mist) 58%)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:60px;align-items:center}.hero h1{font-size:clamp(38px,5vw,58px);line-height:1.12;letter-spacing:-.055em;max-width:650px;margin:18px 0 22px;font-weight:850}.hero-copy{font-size:18px;color:#52615a;max-width:590px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-note{display:flex;gap:24px;margin-top:34px;color:var(--muted);font-size:13px}.hero-note b{display:block;color:var(--ink);font-size:18px;font-family:ui-monospace,monospace}.scoreboard{background:var(--ink);color:var(--cream);border-radius:18px;padding:25px;box-shadow:var(--shadow);position:relative;overflow:hidden}.scoreboard:before{content:"";position:absolute;inset:16px;border:1px solid rgba(231,238,232,.16);pointer-events:none}.board-top,.board-row{display:flex;justify-content:space-between;align-items:center;position:relative}.board-top{color:#a9b9ae;font-size:12px;margin-bottom:28px}.pulse{color:#f2b29a}.pulse:before{content:"";display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:6px}.fixture{padding:18px 0;border-top:1px solid rgba(231,238,232,.16)}.fixture strong{font-size:20px}.fixture small{display:block;color:#9daf a5;color:#9fafa5;font-size:12px}.fixture-time{font-family:ui-monospace,monospace;color:#d5e3d9}.board-foot{margin-top:25px;color:#8fa198;font-size:12px}.phone-strip{display:flex;gap:10px;margin-top:25px;position:relative}.mini-screen{background:#f8f8f3;color:var(--ink);border-radius:10px;padding:12px;width:31%;min-height:104px;font-size:10px}.mini-screen b{display:block;color:var(--green);font-size:12px;margin-bottom:8px}.mini-line{height:6px;background:#dbe6dd;border-radius:4px;margin:7px 0}.mini-line.short{width:60%}.channel{background:var(--mist);padding:42px 0}.channel-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.channel a{background:var(--cream);padding:20px 15px;border:1px solid var(--line);border-radius:12px;transition:.2s}.channel a:nth-child(2n){transform:translateY(12px)}.channel a:hover{transform:translateY(-3px);border-color:var(--green);box-shadow:var(--shadow)}.channel-icon{font-size:24px;color:var(--green);font-weight:800}.channel b{display:block;margin:8px 0 2px}.channel small{color:var(--muted)}.dark-band{background:var(--ink);color:var(--cream)}.dark-band .section-head p{color:#aebdb4}.datebar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:18px;margin-bottom:8px;color:#aebdb4}.datebar strong{color:var(--cream)}.fixture-list{display:grid;grid-template-columns:repeat(3,1fr)}.dark-fixture{padding:25px 20px;border-right:1px solid rgba(255,255,255,.15)}.dark-fixture:first-child{padding-left:0}.dark-fixture:last-child{border:0}.dark-fixture time{color:#b8c8bd;font-family:ui-monospace,monospace}.dark-fixture h3{margin:11px 0 7px;font-size:19px}.dark-fixture p{color:#aebdb4;font-size:14px;margin-bottom:12px}.league-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.league{min-height:205px;border-radius:var(--radius);padding:24px;background:linear-gradient(135deg,#205f4d,#173b32);color:var(--cream);position:relative;overflow:hidden}.league:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-65px;bottom:-85px}.league h3{font-size:22px;margin:26px 0 9px}.league p{color:#bfd0c4;font-size:14px}.league .tag{background:rgba(255,255,255,.14);color:#dce9df}.focus-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.focus-card,.preview-item{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:25px}.focus-card{min-height:310px;background:linear-gradient(145deg,#dbe9dd,#f9f6ed)}.focus-card h3{font-size:29px;max-width:520px;margin:36px 0 12px;line-height:1.3}.focus-card p,.preview-item p{color:var(--muted);font-size:14px}.preview-stack{display:grid;gap:16px}.preview-item{display:grid;grid-template-columns:85px 1fr;gap:16px}.preview-item time{font-family:ui-monospace,monospace;color:var(--green);font-weight:800}.preview-item h3{font-size:17px;margin:0 0 5px}.data-section{background:var(--mist)}.data-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.data-card{background:var(--cream);padding:22px;border:1px solid var(--line);border-radius:12px}.data-card strong{display:block;font-size:25px;font-family:ui-monospace,monospace;color:var(--green)}.data-card span{color:var(--muted);font-size:13px}.chart{height:125px;background:repeating-linear-gradient(to bottom,transparent 0 30px,rgba(23,107,85,.12) 31px),linear-gradient(135deg,transparent 42%,var(--green) 43% 45%,transparent 46% 57%,var(--orange) 58% 60%,transparent 61%);border-bottom:2px solid var(--green);margin-top:28px;position:relative}.chart:after{content:"内容数据展示";position:absolute;right:0;bottom:-30px;color:var(--muted);font-size:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.timeline,.recap{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px}.timeline-row{display:flex;gap:18px;padding:13px 0;border-bottom:1px solid var(--line)}.timeline-row:last-child{border:0}.timeline-row time{font-family:ui-monospace,monospace;color:var(--green);font-size:13px}.timeline-dot{width:9px;height:9px;background:var(--orange);border-radius:50%;margin-top:9px;flex:none}.timeline-row p{margin:0;font-size:14px}.recap h3{margin:18px 0 8px;font-size:22px}.recap p{color:var(--muted);font-size:14px}.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:115px 1fr 115px 28px;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:.2s}.news-item:hover{padding-left:8px;background:rgba(231,238,232,.45)}.news-date{font-family:ui-monospace,monospace;color:var(--green);font-size:13px}.news-item h3{font-size:18px;margin:0 0 3px}.news-item p{margin:0;color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.news-arrow{font-size:22px;color:var(--green)}.empty{padding:35px;text-align:center;color:var(--muted);border:1px dashed var(--line)}.topic-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px}.topic{background:var(--white);border:1px solid var(--line);padding:24px;border-radius:var(--radius);min-height:155px}.topic:nth-child(1){grid-row:span 2;background:var(--green);color:var(--cream)}.topic:nth-child(1) .tag{background:rgba(255,255,255,.15);color:var(--cream)}.topic h3{margin:24px 0 8px;font-size:20px}.topic p{color:var(--muted);font-size:13px}.topic:nth-child(1) p{color:#c4d9ca}.download{background:#f9f6ed}.download-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}.download h2{font-size:38px;line-height:1.2;margin:12px 0 16px}.download p{color:var(--muted)}.device{height:330px;border:10px solid var(--ink);border-radius:34px;background:var(--mist);width:185px;margin:auto;box-shadow:22px 20px 0 rgba(23,107,85,.15);padding:35px 15px 15px;position:relative}.device:before{content:"";position:absolute;top:12px;left:50%;width:52px;height:5px;border-radius:5px;background:var(--ink);transform:translateX(-50%)}.device-title{font-weight:800;color:var(--green);margin-bottom:18px}.device-card{background:var(--white);padding:12px;margin:9px 0;border-radius:8px;font-size:12px}.device-card b{display:block}.download-info{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:28px}.info-table{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.info-table div{border-bottom:1px solid var(--line);padding-bottom:8px}.info-table small{display:block;color:var(--muted)}.info-table strong{font-size:14px}.slices{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.slice{background:var(--ink);color:var(--cream);border-radius:16px;padding:17px;min-height:220px}.slice:nth-child(2),.slice:nth-child(4){transform:translateY(22px)}.slice-screen{height:130px;background:var(--mist);border-radius:9px;color:var(--ink);padding:13px;font-size:12px}.slice-screen b{color:var(--green);display:block;margin-bottom:12px}.slice h3{font-size:16px;margin:15px 0 4px}.slice p{color:#b6c7bc;font-size:12px;margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step{border-top:2px solid var(--green);padding-top:18px}.step-no{color:var(--orange);font-family:ui-monospace,monospace;font-size:22px}.step h3{font-size:18px;margin:6px 0}.step p{font-size:13px;color:var(--muted);margin:0}.faq{max-width:850px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:"＋";color:var(--green);font-size:21px}.faq details[open] summary:after{content:"－"}.faq details[open]{border-color:var(--green)}.faq p{color:var(--muted);font-size:14px;margin:13px 28px 0 0}.final{background:var(--ink);color:var(--cream);padding:58px 0}.final-row{display:flex;align-items:center;justify-content:space-between;gap:30px}.final h2{font-size:30px;margin:0 0 8px}.final p{color:#afbeb5;margin:0}.final .btn.ghost{color:var(--cream);border-color:#91a69a}footer{background:#101916;color:#bdcbc1;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px;padding-bottom:42px}.footer-brand strong{color:var(--cream);font-size:18px}.footer-brand p{font-size:13px;max-width:260px;color:#8fa198}.footer-col h3{font-size:14px;color:var(--cream);margin:0 0 15px}.footer-col a,.footer-col span{display:block;color:#9eafa5;font-size:13px;margin:7px 0}.footer-col a:hover{color:var(--cream)}.copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:12px;color:#789087;display:flex;justify-content:space-between;gap:15px}.copyright a{text-decoration:underline}
@media(max-width:1024px){.nav{gap:18px}.nav-links{gap:13px}.brand{min-width:190px}.hero-grid,.download-grid{gap:30px}.channel-grid{grid-template-columns:repeat(3,1fr)}.data-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.container{width:min(100% - 28px,600px)}.nav{height:68px}.brand{min-width:0;flex:1}.brand strong{font-size:15px}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:12px 20px;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:11px 0}.nav-links a.active:after{bottom:7px}.menu{display:block}.nav>.btn{display:none}.hero{padding:55px 0;background:var(--cream)}.hero-grid,.focus-grid,.split,.download-grid{grid-template-columns:1fr}.hero h1{font-size:39px}.scoreboard{margin-top:8px}.section{padding:62px 0}.section-head{display:block}.section-head h2{font-size:27px;margin-bottom:10px}.section-head .text-link{display:inline-block;margin-top:15px}.channel-grid{grid-template-columns:repeat(2,1fr)}.channel a:nth-child(2n){transform:none}.fixture-list,.league-grid{grid-template-columns:1fr}.dark-fixture,.dark-fixture:first-child{padding:19px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.topic-grid{grid-template-columns:1fr 1fr}.topic:nth-child(1){grid-row:auto}.slices{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.final-row{display:block}.final .btn{margin-top:23px}.news-item{grid-template-columns:78px 1fr 20px;gap:10px}.news-item .tag{display:none}.news-item p{font-size:12px}.copyright{display:block}.copyright a{display:inline-block;margin-top:8px}}
@media(max-width:520px){body{font-size:15px}.hero h1{font-size:34px}.hero-copy{font-size:16px}.hero-note{gap:14px}.scoreboard{padding:19px}.phone-strip{gap:6px}.mini-screen{padding:8px;font-size:9px}.channel-grid{gap:8px}.channel a{padding:15px 11px}.data-grid,.topic-grid,.slices,.steps{grid-template-columns:1fr}.slice:nth-child(2),.slice:nth-child(4){transform:none}.info-table{gap:9px}.device{height:280px}.download h2{font-size:30px}.footer-grid{grid-template-columns:1fr}.news-item{grid-template-columns:68px 1fr 18px}.news-item h3{font-size:16px}.news-item p{display:none}.final h2{font-size:25px}}

/* roulang page: category3 */
:root{--green:#176b55;--green-dark:#0d4437;--ink:#17221f;--cream:#f5f2e9;--mist:#e7eee8;--orange:#e76f3c;--muted:#66736d;--line:#d5dfd7;--white:#fff;--radius:15px;--shadow:0 14px 34px rgba(23,34,31,.08)}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button{font:inherit;border:0;cursor:pointer}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.12em}
    .eyebrow:before{content:"";width:24px;height:2px;background:var(--orange)}
    .section{padding:88px 0}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}
    .section-head h2{margin:8px 0 0;font-size:32px;line-height:1.25;letter-spacing:-.03em}
    .section-head p{max-width:460px;margin:0;color:var(--muted)}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:9px;background:var(--green);color:var(--cream);font-weight:800;transition:.2s ease;gap:8px}
    .btn:hover{background:var(--green-dark);transform:translateY(-2px);color:var(--cream)}
    .btn:focus,.text-link:focus,a:focus,button:focus{outline:3px solid rgba(231,111,60,.35);outline-offset:3px}
    .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
    .btn.ghost:hover{background:var(--mist);border-color:var(--green);color:var(--green)}
    .btn.orange{background:var(--orange)}
    .text-link{color:var(--green);font-weight:700;border-bottom:1px solid currentColor;padding-bottom:2px}
    .text-link:after{content:"  ↗"}
    .tag{display:inline-flex;padding:3px 9px;border-radius:99px;background:var(--mist);color:var(--green);font-size:12px;font-weight:800}
    .tag.live{background:#fff0e9;color:var(--orange)}
    header{position:sticky;top:0;z-index:20;background:rgba(245,242,233,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
    .nav{height:76px;display:flex;align-items:center;gap:34px}
    .brand{display:flex;align-items:center;gap:10px;min-width:220px}
    .brand-mark{width:35px;height:35px;border:2px solid var(--green);border-radius:50%;position:relative}
    .brand-mark:after,.brand-mark:before{content:"";position:absolute;background:var(--green)}
    .brand-mark:after{width:17px;height:2px;left:7px;top:15px;transform:rotate(-35deg)}
    .brand-mark:before{height:17px;width:2px;left:15px;top:7px;transform:rotate(35deg)}
    .brand strong{display:block;font-size:17px;line-height:1.1}
    .brand small{display:block;color:var(--green);font-size:10px;letter-spacing:.18em;font-weight:800;margin-top:3px}
    .nav-links{display:flex;align-items:center;gap:22px;flex:1}
    .nav-links a{font-size:14px;font-weight:700;color:#506059;padding:25px 0;position:relative;white-space:nowrap}
    .nav-links a:hover,.nav-links a.active{color:var(--green)}
    .nav-links a.active:after{content:"";position:absolute;bottom:16px;left:0;right:0;height:3px;background:var(--orange)}
    .menu{display:none;background:none;font-size:25px;color:var(--ink)}
    .guide-hero{padding:72px 0 76px;border-bottom:1px solid var(--line);background:var(--cream);position:relative;overflow:hidden}
    .guide-hero:after{content:"";position:absolute;right:7%;bottom:25px;width:230px;height:100px;border:1px solid rgba(23,107,85,.2);border-radius:50%;transform:rotate(-18deg)}
    .crumb{color:var(--muted);font-size:13px;margin-bottom:35px}
    .crumb a{color:var(--green)}
    .hero-layout{display:grid;grid-template-columns:1fr .78fr;gap:72px;align-items:center}
    h1{font-size:clamp(38px,5vw,58px);line-height:1.12;letter-spacing:-.055em;margin:16px 0 22px;font-weight:850;max-width:700px}
    .lead{font-size:18px;color:#52615a;max-width:650px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
    .device-panel{background:var(--ink);border-radius:24px;padding:14px 14px 20px;box-shadow:var(--shadow);transform:rotate(2deg)}
    .device-screen{background:var(--mist);border-radius:17px;padding:22px 18px;min-height:290px}
    .screen-top{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:18px}
    .screen-title{font-size:22px;font-weight:800;margin-bottom:14px}
    .screen-row{background:var(--white);padding:12px;border-radius:10px;margin:9px 0;border-left:4px solid var(--green);font-size:13px}
    .screen-row strong{display:block;font-size:15px}
    .screen-foot{color:#c9d8cd;font-size:12px;text-align:center;margin-top:12px}
    .version-bar{background:var(--mist);border-block:1px solid var(--line)}
    .version-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
    .version-item{padding:23px 20px;border-right:1px solid var(--line)}
    .version-item:last-child{border:0}
    .version-item small{display:block;color:var(--muted);font-size:12px}
    .version-item strong{font-family:ui-monospace,monospace;font-size:17px}
    .download-area{background:var(--white)}
    .download-box{display:grid;grid-template-columns:.82fr 1.18fr;gap:56px;align-items:center;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:38px}
    .qr{width:154px;height:154px;background:repeating-linear-gradient(45deg,var(--ink) 0 4px,var(--white) 4px 8px);border:12px solid var(--white);outline:1px solid var(--line);margin-bottom:16px}
    .path{font-family:ui-monospace,monospace;font-size:12px;color:var(--green);word-break:break-all}
    .platforms{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .platform{border:1px solid var(--line);border-radius:12px;padding:22px;background:var(--white)}
    .platform h3{margin:0 0 8px;font-size:20px}
    .platform p{font-size:14px;color:var(--muted);margin:0 0 16px}
    .safe-note{font-size:13px;color:var(--muted);margin-top:18px}
    .steps-section{background:var(--mist)}
    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .step{background:var(--cream);padding:25px;border:1px solid var(--line);border-radius:12px;position:relative}
    .step-no{font-family:ui-monospace,monospace;color:var(--orange);font-weight:800;font-size:14px}
    .step h3{font-size:19px;margin:18px 0 6px}
    .step p{color:var(--muted);font-size:14px;margin:0}
    .feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .feature-card{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:var(--white);transition:.2s}
    .feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--green)}
    .mini-screen{height:150px;background:var(--mist);border-radius:10px;margin-bottom:20px;padding:16px;border-top:4px solid var(--green)}
    .mini-screen .line{height:9px;background:#b9cec0;border-radius:5px;margin:10px 0;width:80%}
    .mini-screen .line.short{width:48%;background:var(--orange)}
    .feature-card h3{font-size:20px;margin:0 0 6px}
    .feature-card p{margin:0;color:var(--muted);font-size:14px}
    .guide-content{display:grid;grid-template-columns:1.1fr .9fr;gap:55px}
    .article-list{border-top:1px solid var(--line)}
    .article-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}
    .article-row h3{margin:3px 0 0;font-size:17px}
    .article-row span{color:var(--muted);font-size:13px}
    .security-card{background:var(--ink);color:var(--cream);border-radius:var(--radius);padding:30px}
    .security-card h2{font-size:25px;margin:0 0 16px}
    .security-card li{color:#c3d1c8;margin:10px 0}
    .faq{max-width:850px;margin:auto}
    .faq details{border-bottom:1px solid var(--line);padding:19px 0}
    .faq details[open]{border-left:3px solid var(--green);padding-left:17px}
    .faq summary{cursor:pointer;font-weight:800;list-style:none;position:relative;padding-right:30px}
    .faq summary::-webkit-details-marker{display:none}
    .faq summary:after{content:"+";position:absolute;right:4px;color:var(--green);font-size:22px;top:-4px}
    .faq details[open] summary:after{content:"−"}
    .faq p{color:var(--muted);font-size:14px;margin:12px 28px 3px 0}
    .support{background:var(--ink);color:var(--cream)}
    .support-box{display:flex;justify-content:space-between;align-items:center;gap:30px}
    .support h2{font-size:30px;margin:0 0 8px}
    .support p{color:#b5c2ba;margin:0}
    .support .btn.ghost{color:var(--cream);border-color:#aebdb4}
    footer{background:#111a17;color:#d9e2da;padding:58px 0 22px}
    .footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:35px;padding-bottom:42px}
    .footer-brand strong{font-size:18px}
    .footer-brand p{color:#91a299;font-size:14px;max-width:260px}
    .footer-col{display:flex;flex-direction:column;gap:7px}
    .footer-col h3{color:var(--cream);font-size:14px;margin:0 0 9px}
    .footer-col a,.footer-col span{color:#91a299;font-size:13px}
    .footer-col a:hover{color:var(--orange)}
    .copyright{border-top:1px solid #2b3933;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#77877e;font-size:12px}
    .copyright a{color:#aab9af}
    @media(max-width:1024px){.nav{gap:18px}.brand{min-width:190px}.nav-links{gap:13px}.hero-layout{gap:40px}.version-grid{grid-template-columns:repeat(3,1fr)}.version-item:nth-child(3){border:0}.version-item:nth-child(n+4){border-top:1px solid var(--line)}}
    @media(max-width:768px){.container{width:min(100% - 30px,600px)}.nav{height:68px}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);padding:12px 20px 20px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:11px 0}.nav-links a.active:after{bottom:5px;right:auto;width:28px}.nav>.btn{display:none}.menu{display:block;margin-left:auto}.hero-layout,.download-box,.guide-content{grid-template-columns:1fr}.guide-hero{padding:52px 0 60px}.device-panel{max-width:390px;margin:auto}.section{padding:62px 0}.section-head{display:block}.section-head p{margin-top:12px}.version-grid{grid-template-columns:repeat(2,1fr)}.version-item:nth-child(3){border-right:1px solid var(--line)}.version-item:nth-child(2n){border-right:0}.version-item:nth-child(n+3){border-top:1px solid var(--line)}.platforms,.steps,.feature-grid{grid-template-columns:1fr 1fr}.download-box{padding:25px;gap:30px}.support-box{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.copyright{flex-direction:column}}
    @media(max-width:520px){body{font-size:15px}.container{width:calc(100% - 28px)}h1{font-size:39px}.lead{font-size:16px}.hero-actions .btn{width:100%}.version-grid,.platforms,.steps,.feature-grid{grid-template-columns:1fr}.version-item,.version-item:nth-child(3){border-right:0!important}.version-item:nth-child(n+2){border-top:1px solid var(--line)}.qr{width:140px;height:140px}.download-box{padding:20px}.article-row{align-items:flex-start}.article-row .text-link{white-space:nowrap}.footer-grid{grid-template-columns:1fr}.copyright{font-size:11px}}

/* roulang page: category2 */
:root{
      --green:#176b55;--green-dark:#0d4437;--ink:#17221f;--cream:#f5f2e9;
      --mist:#e7eee8;--orange:#e76f3c;--muted:#66736d;--line:#d5dfd7;
      --white:#fff;--radius:15px;--shadow:0 14px 34px rgba(23,34,31,.08)
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;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(1180px,calc(100% - 40px));margin:auto}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.12em}
    .eyebrow:before{content:"";width:24px;height:2px;background:var(--orange)}
    .section{padding:88px 0}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}
    .section-head h2{margin:8px 0 0;font-size:32px;line-height:1.25;letter-spacing:-.03em}
    .section-head p{max-width:480px;margin:0;color:var(--muted)}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:9px;background:var(--green);color:var(--cream);font-weight:800;gap:8px;transition:.2s ease}
    .btn:hover{background:var(--green-dark);transform:translateY(-2px);color:var(--cream)}
    .btn.orange{background:var(--orange)}
    .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
    .btn.ghost:hover{background:var(--mist);border-color:var(--green);color:var(--green)}
    .btn:focus,.text-link:focus,a:focus,button:focus{outline:3px solid rgba(231,111,60,.35);outline-offset:3px}
    .text-link{color:var(--green);font-weight:750;border-bottom:1px solid currentColor;padding-bottom:2px}
    .text-link:after{content:"  ↗"}
    .tag{display:inline-flex;padding:3px 9px;border-radius:99px;background:var(--mist);color:var(--green);font-size:12px;font-weight:800}
    .tag.live{background:#fff0e9;color:var(--orange)}
    header{position:sticky;top:0;z-index:20;background:rgba(245,242,233,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
    .nav{height:76px;display:flex;align-items:center;gap:34px}
    .brand{display:flex;align-items:center;gap:10px;min-width:220px}
    .brand-mark{width:35px;height:35px;border:2px solid var(--green);border-radius:50%;position:relative}
    .brand-mark:after,.brand-mark:before{content:"";position:absolute;background:var(--green)}
    .brand-mark:after{width:17px;height:2px;left:7px;top:15px;transform:rotate(-35deg)}
    .brand-mark:before{height:17px;width:2px;left:15px;top:7px;transform:rotate(35deg)}
    .brand strong{display:block;font-size:17px;line-height:1.1}
    .brand small{display:block;color:var(--green);font-size:10px;letter-spacing:.18em;font-weight:800;margin-top:3px}
    .nav-links{display:flex;align-items:center;gap:22px;flex:1}
    .nav-links a{font-size:14px;font-weight:700;color:#506059;padding:25px 0;position:relative;white-space:nowrap}
    .nav-links a:hover,.nav-links a.active{color:var(--green)}
    .nav-links a.active:after{content:"";position:absolute;bottom:16px;left:0;right:0;height:3px;background:var(--orange)}
    .menu{display:none;background:none;font-size:25px;color:var(--ink)}
    .data-hero{padding:76px 0 82px;background:var(--mist);position:relative;overflow:hidden}
    .data-hero:after{content:"";position:absolute;right:7%;top:34px;width:260px;height:180px;opacity:.45;background:repeating-linear-gradient(90deg,transparent 0 38px,rgba(23,107,85,.13) 39px 40px),repeating-linear-gradient(0deg,transparent 0 38px,rgba(23,107,85,.13) 39px 40px);border:1px solid rgba(23,107,85,.2);transform:skewY(-8deg)}
    .hero-inner{position:relative;z-index:1;max-width:820px}
    .hero-inner h1{font-size:clamp(38px,5vw,58px);line-height:1.12;letter-spacing:-.055em;margin:18px 0 22px;font-weight:850}
    .hero-inner p{font-size:18px;color:#52615a;max-width:720px;margin:0}
    .hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
    .data-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
    .rule{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-height:150px}
    .rule b{display:flex;align-items:center;gap:12px;font-size:18px;margin-bottom:10px}
    .rule b span{display:inline-flex;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:var(--green);color:var(--cream);font-size:13px}
    .rule p{margin:0;color:var(--muted);font-size:14px}
    .data-section{background:var(--mist)}
    .data-grid{display:grid;grid-template-columns:1.3fr 1.3fr 1fr 1fr;grid-template-rows:auto auto;gap:16px}
    .data-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:25px;min-height:154px;transition:.2s ease}
    .data-card.large{grid-column:span 2;min-height:205px;background:var(--green);color:var(--cream)}
    .data-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--green)}
    .data-card .tag{margin-bottom:24px}
    .data-card.large .tag{background:rgba(255,255,255,.15);color:var(--cream)}
    .data-card h3{margin:0 0 8px;font-size:22px}
    .data-card p{margin:0;color:var(--muted);font-size:14px}
    .data-card.large p{color:#d5e3d9}
    .schedule-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow:auto;background:var(--white)}
    .schedule-table{width:100%;min-width:720px;border-collapse:collapse}
    .schedule-table th,.schedule-table td{text-align:left;padding:17px 20px;border-bottom:1px solid var(--line);white-space:nowrap}
    .schedule-table th{background:#edf3ed;color:var(--green);font-size:13px;font-weight:800}
    .schedule-table td{font-size:14px}
    .schedule-table tr:last-child td{border-bottom:0}
    .schedule-table tr:hover td{background:#fafbf8}
    .state{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}
    .state:before{content:"";width:7px;height:7px;background:#8a9890;border-radius:50%}
    .state.live{color:var(--orange);font-weight:800}
    .state.live:before{background:var(--orange)}
    .article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
    .article-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:27px;min-height:220px;transition:.2s ease}
    .article-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
    .article-card h3{font-size:21px;line-height:1.4;margin:18px 0 10px}
    .article-card h3 a:hover{color:var(--green)}
    .article-card p{color:var(--muted);font-size:14px;margin:0 0 20px}
    .article-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}
    .legend-section{background:var(--ink);color:var(--cream)}
    .legend-section .section-head p{color:#aebdb4}
    .legend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
    .legend-item{border:1px solid rgba(231,238,232,.2);border-radius:12px;padding:22px;background:rgba(255,255,255,.04)}
    .legend-item strong{display:flex;align-items:center;gap:10px;margin-bottom:8px}
    .legend-dot{width:10px;height:10px;border-radius:50%;background:var(--green)}
    .legend-dot.orange{background:var(--orange)}
    .legend-dot.gray{background:#89968f}
    .legend-item p{margin:0;color:#b8c8bf;font-size:14px}
    .download-panel{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:38px}
    .download-panel h2{font-size:32px;line-height:1.25;margin:10px 0 14px}
    .download-panel p{color:var(--muted);margin:0 0 24px}
    .device-preview{display:flex;justify-content:center;gap:14px;align-items:end}
    .phone{width:125px;height:235px;background:var(--ink);border:7px solid #263631;border-radius:22px;padding:22px 10px 10px;box-shadow:var(--shadow);position:relative}
    .phone:before{content:"";position:absolute;top:8px;left:42px;width:35px;height:4px;background:#6b7b73;border-radius:5px}
    .phone b{display:block;color:var(--cream);font-size:12px;margin-bottom:16px}
    .phone-line{height:10px;background:#dfeae1;border-radius:3px;margin:9px 0}
    .phone-line.short{width:62%;background:var(--orange)}
    .download-info{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
    .download-info span{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:7px;padding:5px 8px}
    footer{background:var(--ink);color:var(--cream);padding:62px 0 24px}
    .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px;padding-bottom:45px}
    .footer-brand strong{font-size:19px}
    .footer-brand p{color:#aebdb4;max-width:290px;font-size:14px;margin-top:12px}
    .footer-col{display:flex;flex-direction:column;gap:8px}
    .footer-col h3{font-size:14px;color:var(--cream);margin:0 0 8px}
    .footer-col a,.footer-col span{font-size:14px;color:#aebdb4}
    .footer-col a:hover{color:var(--orange)}
    .copyright{border-top:1px solid rgba(231,238,232,.15);padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#89968f;font-size:13px}
    .copyright a:hover{color:var(--cream)}
    @media(max-width:1024px){
      .nav{gap:18px}.brand{min-width:190px}.nav-links{gap:14px}
      .data-grid{grid-template-columns:repeat(2,1fr)}.data-card.large{grid-column:span 1}
      .legend-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:768px){
      .container{width:min(100% - 30px,620px)}
      .nav{height:68px}.brand{min-width:auto;flex:1}.nav-links{display:none;position:absolute;left:15px;right:15px;top:68px;background:var(--cream);border:1px solid var(--line);border-radius:0 0 12px 12px;padding:8px 18px;flex-direction:column;align-items:stretch;gap:0;box-shadow:var(--shadow)}
      .nav-links.open{display:flex}.nav-links a{padding:12px 0}.nav-links a.active:after{bottom:7px;left:auto;width:30px}
      header>.container>.btn{display:none}.menu{display:block}
      .section{padding:62px 0}.section-head{display:block}.section-head h2{font-size:27px;margin-bottom:10px}
      .data-hero{padding:62px 0}.hero-inner h1{font-size:40px}.hero-inner p{font-size:16px}
      .data-rules,.article-grid,.download-panel{grid-template-columns:1fr}.data-grid{grid-template-columns:1fr 1fr}
      .data-card.large{grid-column:span 2}.download-panel{padding:25px}
      .footer-grid{grid-template-columns:1fr 1fr}.copyright{display:block}.copyright span{display:block;margin-bottom:8px}
    }
    @media(max-width:520px){
      .data-grid,.legend-grid{grid-template-columns:1fr}.data-card.large{grid-column:span 1}
      .hero-inner h1{font-size:34px}.hero-meta{gap:8px}
      .device-preview{transform:scale(.86);margin:-15px -25px}
      .footer-grid{grid-template-columns:1fr}.footer-brand{margin-bottom:10px}
      .download-panel h2{font-size:27px}
    }

/* roulang page: article */
:root{--green:#176b55;--green-dark:#0d4437;--ink:#17221f;--cream:#f5f2e9;--mist:#e7eee8;--orange:#e76f3c;--muted:#66736d;--line:#d5dfd7;--white:#fff;--radius:15px;--shadow:0 14px 34px rgba(23,34,31,.08)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
a{color:inherit;text-decoration:none}
a:hover{color:var(--green)}
img{display:block;max-width:100%}
button{font:inherit;border:0;cursor:pointer}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:9px;background:var(--green);color:var(--cream);font-weight:800;transition:.2s ease}
.btn:hover{background:var(--green-dark);color:var(--cream);transform:translateY(-2px)}
.btn.orange{background:var(--orange)}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.btn.ghost:hover{background:var(--mist);border-color:var(--green);color:var(--green)}
.btn:focus,a:focus,button:focus{outline:3px solid rgba(231,111,60,.35);outline-offset:3px}
.tag{display:inline-flex;padding:3px 9px;border-radius:99px;background:var(--mist);color:var(--green);font-size:12px;font-weight:800}
.tag.orange{background:#fff0e9;color:var(--orange)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.12em}
.eyebrow:before{content:"";width:24px;height:2px;background:var(--orange)}
header{position:sticky;top:0;z-index:20;background:rgba(245,242,233,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.nav{height:76px;display:flex;align-items:center;gap:34px}
.brand{display:flex;align-items:center;gap:10px;min-width:220px}
.brand-mark{width:35px;height:35px;border:2px solid var(--green);border-radius:50%;position:relative}
.brand-mark:after,.brand-mark:before{content:"";position:absolute;background:var(--green)}
.brand-mark:after{width:17px;height:2px;left:7px;top:15px;transform:rotate(-35deg)}
.brand-mark:before{height:17px;width:2px;left:15px;top:7px;transform:rotate(35deg)}
.brand strong{display:block;font-size:17px;line-height:1.1}
.brand small{display:block;color:var(--green);font-size:10px;letter-spacing:.18em;font-weight:800;margin-top:3px}
.nav-links{display:flex;align-items:center;gap:22px;flex:1}
.nav-links a{font-size:14px;font-weight:700;color:#506059;padding:25px 0;position:relative;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--green)}
.nav-links a.active:after{content:"";position:absolute;bottom:16px;left:0;right:0;height:3px;background:var(--orange)}
.menu{display:none;background:none;font-size:25px;color:var(--ink)}
.article-top{padding:42px 0 54px;border-bottom:1px solid var(--line)}
.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:24px}
.breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.article-label{border-left:4px solid var(--orange);padding-left:14px;margin-bottom:18px}
.article-label .tag{margin-right:8px}
.article-top h1{max-width:850px;margin:12px 0 20px;font-size:clamp(34px,5vw,56px);line-height:1.2;letter-spacing:-.045em;font-weight:850}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 24px;color:var(--muted);font-size:13px}
.article-meta strong{color:var(--ink)}
.article-layout{display:grid;grid-template-columns:minmax(0,820px) 250px;gap:70px;align-items:start;padding:72px 0 92px}
.article-summary{border-left:4px solid var(--green);background:var(--mist);padding:20px 24px;margin-bottom:34px;color:#42544c;font-size:17px}
.article-summary b{display:block;color:var(--green);font-size:12px;letter-spacing:.12em;margin-bottom:5px}
.article-content{font-size:17px;line-height:1.95}
.article-content h2{font-size:30px;line-height:1.3;margin:52px 0 18px}
.article-content h3{font-size:21px;margin:34px 0 12px}
.article-content p{margin:0 0 22px}
.article-content ul,.article-content ol{padding-left:25px;margin:0 0 24px}
.article-content li{margin:7px 0}
.article-content blockquote{margin:30px 0;padding:20px 24px;background:var(--mist);border-left:5px solid var(--green);color:#40534a}
.article-content img{border-radius:12px;margin:28px auto}
.article-content table{width:100%;border-collapse:collapse;margin:28px 0;background:var(--white);font-size:15px}
.article-content th,.article-content td{padding:12px 14px;border:1px solid var(--line);text-align:left}
.article-content th{background:var(--mist);color:var(--green)}
.article-content a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.toc{position:sticky;top:105px;border-top:3px solid var(--green);padding-top:17px}
.toc h2{font-size:18px;margin:0 0 14px}
.toc a{display:block;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}
.toc a:hover{color:var(--green);padding-left:5px}
.download-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--green-dark);color:var(--cream);border-radius:var(--radius);padding:28px 30px;margin:48px 0}
.download-card h2{font-size:22px;margin:0 0 6px}
.download-card p{margin:0;color:#c8d9ce;font-size:14px}
.related{padding:72px 0;background:var(--mist)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}
.section-head h2{font-size:30px;line-height:1.25;margin:0}
.related-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:16px}
.related-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-height:170px;transition:.2s}
.related-card:first-child{background:var(--green);color:var(--cream)}
.related-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.related-card h3{font-size:19px;line-height:1.45;margin:18px 0 9px}
.related-card p{font-size:14px;color:var(--muted);margin:0}
.related-card:first-child p{color:#d2e0d6}
.feedback{padding:42px 0 76px}
.feedback-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:28px}
.feedback p{margin:0;color:var(--muted);font-size:14px}
.feedback-actions{display:flex;gap:10px}
.feedback-actions button{padding:9px 16px;border:1px solid var(--line);background:var(--white);border-radius:8px;color:var(--ink);transition:.2s}
.feedback-actions button:hover{border-color:var(--green);color:var(--green);background:var(--mist)}
.empty-content{padding:70px 25px;text-align:center;background:var(--mist);border-radius:var(--radius);color:var(--muted)}
.empty-content h2{color:var(--ink);margin:0 0 10px}
footer{background:var(--ink);color:#dce7df;padding:58px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}
.footer-brand strong{font-size:19px;color:var(--cream)}
.footer-brand p{color:#9eafa6;max-width:270px;font-size:14px}
.footer-col h3{font-size:14px;color:var(--cream);margin:0 0 14px}
.footer-col a,.footer-col span{display:block;color:#9eafa6;font-size:13px;margin:7px 0}
.footer-col a:hover{color:var(--orange)}
.copyright{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #35433d;margin-top:42px;padding-top:18px;color:#819189;font-size:12px}
.copyright a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1024px){.nav{gap:20px}.brand{min-width:190px}.nav-links{gap:14px}.article-layout{grid-template-columns:minmax(0,1fr) 210px;gap:35px}.related-grid{grid-template-columns:1fr 1fr}.related-card:first-child{grid-column:1/-1}}
@media(max-width:768px){.container{width:min(100% - 30px,680px)}.nav{height:68px}.brand{min-width:0;flex:1}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:12px 20px;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:12px 0}.nav-links a.active:after{bottom:7px;right:auto;width:35px}.nav>.btn{display:none}.menu{display:block}.article-top{padding:32px 0 40px}.article-layout{display:block;padding:48px 0 60px}.toc{position:static;margin-bottom:38px;padding:16px 18px;background:var(--white);border:1px solid var(--line);border-top:3px solid var(--green);border-radius:10px}.toc a{display:inline-block;margin-right:18px;border:0}.article-content{font-size:16px}.download-card{display:block}.download-card .btn{margin-top:20px}.section-head{display:block}.section-head p{margin-top:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}.copyright{display:block}.copyright span{display:block;margin:7px 0}}
@media(max-width:520px){.article-top h1{font-size:34px}.article-meta{display:block}.article-meta span{display:inline-block;margin:3px 12px 3px 0}.related-grid{grid-template-columns:1fr}.related-card:first-child{grid-column:auto}.feedback-inner{display:block}.feedback-actions{margin-top:18px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.download-card{padding:24px}.article-content table{display:block;overflow-x:auto;white-space:nowrap}}

/* roulang page: category1 */
:root{
      --green:#176b55;
      --green-dark:#0d4437;
      --ink:#17221f;
      --cream:#f5f2e9;
      --mist:#e7eee8;
      --orange:#e76f3c;
      --muted:#66736d;
      --line:#d5dfd7;
      --white:#fff;
      --radius:15px;
      --shadow:0 14px 34px rgba(23,34,31,.08);
      --soft-shadow:0 7px 20px rgba(23,34,31,.06);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button{font:inherit;border:0;cursor:pointer}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.12em}
    .eyebrow:before{content:"";width:24px;height:2px;background:var(--orange)}
    .section{padding:88px 0}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}
    .section-head h2{margin:8px 0 0;font-size:32px;line-height:1.25;letter-spacing:-.03em}
    .section-head p{max-width:450px;margin:0;color:var(--muted)}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:9px;background:var(--green);color:var(--cream);font-weight:800;transition:.2s ease;gap:8px}
    .btn:hover{background:var(--green-dark);transform:translateY(-2px);color:var(--cream)}
    .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
    .btn.ghost:hover{background:var(--mist);border-color:var(--green);color:var(--green)}
    .btn.orange{background:var(--orange)}
    .btn:focus,a:focus,button:focus,summary:focus{outline:3px solid rgba(231,111,60,.35);outline-offset:3px}
    .tag{display:inline-flex;padding:3px 9px;border-radius:99px;background:var(--mist);color:var(--green);font-size:12px;font-weight:800}
    .tag.live{background:#fff0e9;color:var(--orange)}
    .text-link{color:var(--green);font-weight:800;border-bottom:1px solid currentColor;padding-bottom:2px}
    .text-link:after{content:"  ↗"}
    header{position:sticky;top:0;z-index:20;background:rgba(245,242,233,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
    .nav{height:76px;display:flex;align-items:center;gap:34px}
    .brand{display:flex;align-items:center;gap:10px;min-width:220px}
    .brand-mark{width:35px;height:35px;border:2px solid var(--green);border-radius:50%;position:relative}
    .brand-mark:after,.brand-mark:before{content:"";position:absolute;background:var(--green)}
    .brand-mark:after{width:17px;height:2px;left:7px;top:15px;transform:rotate(-35deg)}
    .brand-mark:before{height:17px;width:2px;left:15px;top:7px;transform:rotate(35deg)}
    .brand strong{display:block;font-size:17px;line-height:1.1}
    .brand small{display:block;color:var(--green);font-size:10px;letter-spacing:.18em;font-weight:800;margin-top:3px}
    .nav-links{display:flex;align-items:center;gap:22px;flex:1}
    .nav-links a{font-size:14px;font-weight:700;color:#506059;padding:25px 0;position:relative;white-space:nowrap}
    .nav-links a:hover,.nav-links a.active{color:var(--green)}
    .nav-links a.active:after{content:"";position:absolute;bottom:16px;left:0;right:0;height:3px;background:var(--orange)}
    .menu{display:none;background:none;font-size:25px;color:var(--ink)}
    .category-hero{padding:74px 0 78px;background:var(--cream);position:relative;overflow:hidden}
    .category-hero:after{content:"";position:absolute;width:360px;height:160px;right:-40px;bottom:-34px;border:1px solid var(--line);border-radius:50%;transform:rotate(-13deg);box-shadow:0 -22px 0 -21px var(--cream),0 -22px 0 -20px var(--line)}
    .crumb{font-size:13px;color:var(--muted);margin-bottom:34px}
    .crumb a{text-decoration:underline;text-underline-offset:4px}
    .hero-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end}
    .hero-layout h1{font-size:clamp(38px,5vw,58px);line-height:1.12;letter-spacing:-.055em;margin:16px 0 22px;font-weight:850;max-width:670px}
    .hero-layout p{font-size:18px;color:#52615a;max-width:650px;margin:0}
    .hero-index{border-left:3px solid var(--orange);padding:12px 0 12px 22px;max-width:330px;margin-left:auto}
    .hero-index strong{display:block;font-size:42px;line-height:1;font-family:ui-monospace,monospace;color:var(--green)}
    .hero-index span{display:block;margin-top:8px;color:var(--muted);font-size:14px}
    .feature-section{background:var(--mist)}
    .feature-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:20px}
    .feature-main,.feature-side article{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow:hidden}
    .feature-main{min-height:390px;display:flex;flex-direction:column;justify-content:flex-end;padding:32px;background:linear-gradient(150deg,#c8ddd0 0%,#f9f6ed 70%)}
    .feature-main h3{font-size:30px;line-height:1.3;max-width:620px;margin:20px 0 10px}
    .feature-main p,.feature-side p{color:var(--muted);font-size:14px;margin:0}
    .feature-meta{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:13px}
    .feature-side{display:grid;gap:20px}
    .feature-side article{padding:24px;display:flex;flex-direction:column;justify-content:space-between}
    .feature-side h3{font-size:19px;line-height:1.45;margin:15px 0 8px}
    .date{font-family:ui-monospace,monospace;color:var(--green);font-size:13px;font-weight:800}
    .list-section{background:var(--cream)}
    .article-list{border-top:1px solid var(--line)}
    .article-row{display:grid;grid-template-columns:105px 1fr 125px 28px;gap:22px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line);transition:.2s ease}
    .article-row:hover{background:rgba(231,238,232,.55);padding-left:12px;padding-right:12px}
    .article-row time{font-family:ui-monospace,monospace;color:var(--green);font-weight:800;font-size:14px}
    .article-row h3{font-size:18px;margin:0 0 4px;line-height:1.4}
    .article-row p{margin:0;color:var(--muted);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .row-arrow{font-size:24px;color:var(--green);text-align:right}
    .tag-panel{background:var(--ink);color:var(--cream)}
    .tag-panel .section-head p{color:#aebdb4}
    .tag-cloud{display:flex;flex-wrap:wrap;gap:12px}
    .topic-tag{padding:13px 18px;border:1px solid rgba(245,242,233,.25);border-radius:9px;color:var(--cream);transition:.2s}
    .topic-tag:hover{background:var(--green);border-color:var(--green);transform:translateY(-2px)}
    .recommend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .recommend-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-height:190px;transition:.2s}
    .recommend-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--green)}
    .recommend-no{font-family:ui-monospace,monospace;color:var(--orange);font-size:14px;font-weight:800}
    .recommend-card h3{font-size:18px;line-height:1.45;margin:22px 0 9px}
    .recommend-card p{color:var(--muted);font-size:14px;margin:0}
    .download-strip{background:var(--green);color:var(--cream)}
    .download-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
    .download-inner h2{font-size:27px;margin:0 0 8px}
    .download-inner p{margin:0;color:#d7e5db}
    .download-inner .btn{background:var(--cream);color:var(--green-dark)}
    .download-inner .btn:hover{background:#fff}
    footer{background:var(--ink);color:var(--cream);padding:64px 0 24px}
    .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px;padding-bottom:46px}
    .footer-brand strong{font-size:19px}
    .footer-brand p{color:#aebdb4;max-width:270px;font-size:14px}
    .footer-col{display:flex;flex-direction:column;gap:8px}
    .footer-col h3{font-size:14px;color:var(--orange);margin:0 0 8px}
    .footer-col a,.footer-col span{font-size:14px;color:#c6d2ca}
    .footer-col a:hover{color:#fff}
    .copyright{border-top:1px solid rgba(245,242,233,.16);padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#91a39a;font-size:12px}
    .copyright a{color:#c6d2ca}
    @media(max-width:1024px){
      .nav{gap:18px}.brand{min-width:190px}.nav-links{gap:14px}
      .hero-layout{gap:35px}.feature-grid{grid-template-columns:1fr}.feature-side{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:768px){
      .container{width:min(100% - 30px,680px)}
      .nav{height:68px}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;padding:12px 20px 20px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0}
      .nav-links.open{display:flex}.nav-links a{padding:11px 0;width:100%}.nav-links a.active:after{bottom:7px;right:auto;width:28px}
      .nav>.btn{display:none}.menu{display:block;margin-left:auto}
      .category-hero{padding:55px 0 62px}.hero-layout{grid-template-columns:1fr;gap:30px}.hero-index{margin-left:0}
      .section{padding:62px 0}.section-head{display:block}.section-head p{margin-top:12px}
      .article-row{grid-template-columns:78px 1fr 24px;gap:13px}.article-row .tag{display:none}
      .recommend-grid{grid-template-columns:1fr}.download-inner{display:block}.download-inner .btn{margin-top:22px}
      .footer-grid{grid-template-columns:1fr 1fr}.copyright{display:block}.copyright span{display:block;margin-bottom:8px}
    }
    @media(max-width:520px){
      body{font-size:15px}.brand{min-width:auto}.brand strong{font-size:15px}.feature-side{grid-template-columns:1fr}
      .feature-main{min-height:330px;padding:24px}.feature-main h3{font-size:25px}
      .article-row{grid-template-columns:1fr 24px;gap:4px;padding:19px 0}.article-row time{font-size:12px}.article-row h3{font-size:17px}.article-row p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
      .footer-grid{grid-template-columns:1fr}.footer-brand{padding-bottom:10px}
      .hero-layout h1{font-size:38px}
    }
