/* roulang page: index */
:root{
      --bg:#171816;--panel:#21231f;--panel-2:#292b26;--paper:#eeede5;
      --lime:#c8f255;--lime-hi:#d9ff70;--ink:#151712;--text:#f2f0e8;
      --muted:#b7aea1;--faint:#8e9388;--line:#41443c;--orange:#e97b52;
      --radius:12px;--shadow:0 14px 30px rgba(0,0,0,.24);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--bg);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;line-height:1.78;font-size:15px;overflow-x:hidden}
    body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,#000,transparent 85%);z-index:-1}
    a{color:inherit;text-decoration:none}
    button,input{font:inherit}
    button{cursor:pointer}
    img{display:block;max-width:100%}
    :focus-visible{outline:3px solid rgba(200,242,85,.55);outline-offset:3px}
    .container{width:min(1240px,calc(100% - 64px));margin:0 auto}
    .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}
    .eyebrow{display:flex;align-items:center;gap:10px;color:var(--lime);font-size:12px;font-weight:700;letter-spacing:.1em}
    .eyebrow:before{content:"";width:26px;height:1px;background:var(--lime)}
    .section{padding:96px 0;position:relative}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}
    .section-head h2{font-size:clamp(25px,3vw,39px);letter-spacing:-.045em;line-height:1.2;margin:10px 0 0;font-weight:800}
    .section-head p{max-width:510px;margin:0;color:var(--muted)}
    .rule{height:9px;border-top:1px solid var(--line);background:repeating-linear-gradient(90deg,transparent 0 18px,var(--line) 18px 19px,transparent 19px 38px);margin-top:25px}
    .site-header{position:sticky;top:0;z-index:50;background:rgba(23,24,22,.98);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
    .nav{height:72px;display:flex;align-items:center;gap:22px}
    .logo{font-size:17px;font-weight:800;letter-spacing:-.04em;white-space:nowrap}
    .logo small{font:10px ui-monospace,monospace;letter-spacing:.12em;color:var(--lime);margin-left:8px}
    .nav-links{display:flex;gap:8px;align-items:center;margin-left:auto}
    .nav-link{min-height:38px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid transparent;border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}
    .nav-link svg{width:15px;height:15px}
    .nav-link:hover{color:var(--text);border-color:var(--line);background:var(--panel)}
    .nav-link.active{color:var(--ink);background:var(--lime);border-color:var(--lime);font-weight:700}
    .nav-actions{display:flex;align-items:center;gap:11px;margin-left:10px}
    .status{font-size:12px;color:var(--muted);white-space:nowrap}
    .dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(200,242,85,.12);margin-right:7px}
    .icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);display:grid;place-items:center;transition:.2s}
    .icon-btn:hover{border-color:var(--lime);transform:translateY(-2px)}
    .icon-btn svg{width:18px;height:18px}
    .age-link{font-size:12px;color:var(--orange);white-space:nowrap}
    .btn{min-height:44px;border-radius:8px;border:1px solid transparent;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14px;transition:transform .2s,box-shadow .2s,border-color .2s,background .2s}
    .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.22)}
    .btn:active{transform:translateY(0)}
    .btn-primary{background:var(--lime);color:var(--ink)}
    .btn-primary:hover{background:var(--lime-hi)}
    .btn-secondary{background:var(--panel);border-color:var(--line);color:var(--text)}
    .btn-secondary:hover{border-color:var(--lime)}
    .status-strip{border-bottom:1px solid var(--line);background:#1c1e1a;color:var(--muted);font-size:12px}
    .status-strip .container{display:flex;gap:25px;overflow:auto;white-space:nowrap;padding:8px 0}
    .status-strip b{color:var(--text);font-weight:600}
    .mobile-menu{display:none}
    .hero{min-height:650px;padding:84px 0 70px;position:relative;overflow:hidden}
    .hero:before{content:"01";position:absolute;right:4%;top:-56px;font:800 clamp(180px,28vw,390px)/1 ui-monospace,monospace;color:rgba(200,242,85,.035);pointer-events:none}
    .hero-grid{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:center;position:relative}
    .hero-copy h1{margin:15px 0 20px;font-size:clamp(40px,5.5vw,73px);line-height:1.08;letter-spacing:-.075em;font-weight:800;max-width:760px}
    .hero-copy p{color:var(--muted);font-size:16px;max-width:680px;margin:0 0 28px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
    .micro-note{font-size:12px;color:var(--faint);margin-top:17px}
    .micro-note strong{color:var(--orange);font-weight:700}
    .launch-meter{margin-top:34px;display:flex;align-items:center;gap:22px}
    .count-ring{width:94px;height:94px;flex:0 0 94px;border-radius:50%;background:conic-gradient(var(--lime) 0 76%,#34372f 76% 100%);padding:7px;display:grid;place-items:center}
    .count-ring div{width:100%;height:100%;border-radius:50%;background:var(--bg);display:grid;place-content:center;text-align:center}
    .count-ring b{font:700 23px/1 ui-monospace,monospace;color:var(--lime)}
    .count-ring span{font-size:10px;color:var(--muted);margin-top:4px}
    .meter-text{font-size:13px;color:var(--muted)} .meter-text b{display:block;color:var(--text);font-size:15px}
    .terminal{background:var(--panel);border:1px solid #4b4e45;border-radius:12px;padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}
    .terminal:after{content:"";position:absolute;right:-50px;bottom:-60px;width:170px;height:170px;background:var(--lime);opacity:.09;transform:rotate(25deg)}
    .terminal-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px;font:11px ui-monospace,monospace;color:var(--faint)}
    .signal{color:var(--lime)} .signal i{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;margin-right:5px}
    .terminal-title{font-weight:800;font-size:20px;margin:18px 0 14px;letter-spacing:-.04em}
    .tag-matrix{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
    .matrix-tag{padding:12px 8px;background:#2b2e28;border:1px solid var(--line);border-radius:7px;font-size:12px;text-align:center;color:var(--muted);transition:.2s}
    .matrix-tag:hover,.matrix-tag.selected{background:var(--lime);border-color:var(--lime);color:var(--ink);font-weight:700}
    .update-row{margin-top:16px;padding:13px;background:#1a1c18;border-left:3px solid var(--lime);font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:12px}
    .scan-line{height:4px;background:#393c35;margin-top:17px;overflow:hidden}.scan-line i{display:block;height:100%;width:68%;background:var(--lime)}
    .features{padding-top:30px}
    .feature-row{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:var(--panel)}
    .feature{padding:27px;border-right:1px solid var(--line);position:relative;min-height:180px}
    .feature:last-child{border-right:0}
    .feature-num{color:var(--lime);font:12px ui-monospace,monospace}
    .feature h3{font-size:19px;margin:13px 0 7px}.feature p{color:var(--muted);font-size:14px;margin:0}
    .feature:hover{background:var(--panel-2)} .feature:hover:after{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--lime)}
    .scene-grid{display:grid;grid-template-columns:5fr 7fr;gap:20px;align-items:stretch}
    .scene-copy{background:var(--paper);color:var(--ink);padding:42px;border-radius:var(--radius);position:relative;overflow:hidden}
    .scene-copy:after{content:"02";position:absolute;bottom:-48px;right:20px;font:800 170px/1 ui-monospace,monospace;color:rgba(21,23,18,.07)}
    .scene-copy h2{font-size:34px;line-height:1.22;letter-spacing:-.05em;margin:12px 0}.scene-copy p{color:#585a52;position:relative}
    .step-list{position:relative;z-index:1;margin:25px 0 0;padding:0;list-style:none}.step-list li{padding:12px 0;border-top:1px solid #c9c8be;font-size:14px}.step-list b{color:var(--ink);margin-right:10px}
    .demo-panel{background:var(--panel);border:1px solid var(--line);padding:25px;border-radius:var(--radius)}
    .filter-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.filter-top h3{margin:0;font-size:18px}
    .filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tab{border:1px solid var(--line);background:#191b18;color:var(--muted);border-radius:6px;padding:8px 11px;font-size:12px}.filter-tab.active{color:var(--ink);background:var(--lime);border-color:var(--lime);font-weight:700}
    .search-row{display:grid;grid-template-columns:1fr auto;gap:10px;margin:18px 0}.search-row input{height:48px;background:#191b18;border:1px solid var(--line);border-radius:7px;color:var(--text);padding:0 13px;min-width:0}.search-row input::placeholder{color:var(--faint)}.search-row input:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(200,242,85,.16);outline:0}
    .path-result{border-top:1px solid var(--line);padding-top:15px;display:grid;gap:9px}.path-item{display:flex;align-items:center;justify-content:space-between;background:#292b26;padding:11px 12px;border-radius:6px;font-size:13px}.path-item span{color:var(--muted)}.path-item b{color:var(--lime);font:12px ui-monospace,monospace}
    .dashboard{display:grid;grid-template-columns:3fr 9fr;gap:20px}.meter-panel{background:var(--panel);border:1px solid var(--line);padding:25px;border-radius:var(--radius)}.meter-panel h3{margin:0 0 18px;font-size:19px}.metric{padding:15px 0;border-top:1px solid var(--line)}.metric b{display:block;font-size:15px}.metric span{color:var(--muted);font-size:12px}.bar{height:4px;background:#3b3e36;margin-top:8px}.bar i{display:block;height:100%;background:var(--lime)}
    .content-grid{display:grid;grid-template-columns:1.2fr 1.2fr .9fr;grid-template-rows:170px 170px;gap:14px}.content-card{padding:17px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;min-height:0;transition:.2s}.content-card:hover{transform:translateY(-3px);border-color:#7f866f;box-shadow:var(--shadow)}.content-card.big{grid-row:span 2}.content-card.wide{grid-column:span 1}.content-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 42%,rgba(200,242,85,.14) 42% 46%,transparent 46%),linear-gradient(0deg,rgba(0,0,0,.75),transparent 70%);pointer-events:none}.content-card:nth-child(2):before{background:linear-gradient(145deg,transparent 52%,rgba(233,123,82,.16) 52% 59%,transparent 59%),linear-gradient(0deg,rgba(0,0,0,.74),transparent 70%)}.content-card>*{position:relative}.card-meta{font:11px ui-monospace,monospace;color:var(--lime)}.content-card h3{font-size:17px;line-height:1.35;margin:7px 0}.card-foot{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.card-foot strong{color:var(--text);font-size:15px}
    .feedback{background:#1d1f1b;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feedback-track{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:16px;align-items:center}.quote{border:1px solid var(--line);background:var(--panel);padding:23px;border-radius:10px;min-height:164px}.quote:nth-child(2){transform:translateY(-12px);border-color:#677143}.quote-head{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.quote-tag{color:var(--lime)}.quote p{margin:18px 0 0;font-size:15px;line-height:1.7}
    .news-layout{display:grid;grid-template-columns:8fr 4fr;gap:20px}.news-list{border-top:1px solid var(--line)}.news-item{padding:18px 4px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:98px 1fr auto;gap:16px;align-items:center;transition:.2s}.news-item:hover{padding-left:12px;background:var(--panel)}.news-date{font:12px ui-monospace,monospace;color:var(--lime)}.news-item h3{font-size:16px;margin:0 0 4px}.news-item p{font-size:13px;color:var(--muted);margin:0}.news-arrow{color:var(--lime);font-size:22px}.news-side{background:var(--panel);border:1px solid var(--line);padding:24px;border-radius:var(--radius)}.news-side h3{margin-top:0}.news-side ul{list-style:none;padding:0;margin:14px 0}.news-side li{padding:11px 0;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.news-side li b{color:var(--text);display:block}
    .cta{padding:32px;background:var(--lime);color:var(--ink);border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{font-size:31px;line-height:1.2;letter-spacing:-.05em;margin:0 0 8px}.cta p{margin:0;color:#3d4822}.cta .btn-primary{background:var(--ink);color:var(--lime)}.cta .btn-secondary{background:transparent;border-color:#657533;color:var(--ink)}
    .faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.faq{border:1px solid var(--line);background:var(--panel);border-radius:9px;overflow:hidden}.faq summary{list-style:none;padding:18px;display:flex;gap:12px;align-items:center;cursor:pointer;font-weight:700}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";margin-left:auto;color:var(--lime);font-size:21px;font-weight:400}.faq[open] summary:after{content:"−"}.faq-answer{padding:0 18px 18px 48px;color:#565950;background:var(--paper);font-size:14px}.faq-answer p{margin:0;padding-top:14px;border-top:1px solid #cbc9c0}
    footer{border-top:1px solid var(--line);background:#11120f;padding:52px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-brand p,.footer-col a{color:var(--muted);font-size:13px}.footer-brand p{max-width:410px}.footer-col h3{font-size:14px;margin:0 0 12px;color:var(--text)}.footer-col a{display:block;padding:5px 0}.footer-col a:hover{color:var(--lime)}.footer-bottom{border-top:1px solid #34362f;margin-top:35px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:var(--faint);font-size:12px}
    .notice-pop{display:none;position:absolute;right:110px;top:62px;width:280px;background:var(--panel-2);border:1px solid var(--line);padding:14px;border-radius:9px;box-shadow:var(--shadow);font-size:12px}.notice-pop.show{display:block}.notice-pop b{display:block;color:var(--text);margin-bottom:5px}.notice-pop p{color:var(--muted);margin:0 0 10px}
    @media(max-width:1024px){.container{width:min(100% - 40px,1240px)}.nav-links{gap:3px}.nav-link{padding:0 8px}.status{display:none}.hero-grid{gap:25px}.dashboard{grid-template-columns:1fr}.meter-panel{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.meter-panel h3{grid-column:1/-1;margin-bottom:0}.metric{padding:5px 0;border-top:0}.news-layout{grid-template-columns:1fr}}
    @media(max-width:768px){.container{width:calc(100% - 32px)}.nav{height:66px}.nav-links,.age-link,.nav-actions>.btn{display:none}.nav-actions{margin-left:auto}.mobile-menu{display:grid}.hero{padding:58px 0}.hero-grid{grid-template-columns:1fr}.hero-copy h1{font-size:43px}.terminal{max-width:600px}.feature-row{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.feature:last-child{border-bottom:0}.scene-grid,.dashboard{grid-template-columns:1fr}.scene-copy{padding:30px}.content-grid{grid-template-columns:1fr 1fr;grid-template-rows:175px 150px 150px}.content-card.big{grid-row:span 2}.feedback-track{grid-template-columns:1fr}.quote:nth-child(2){transform:none}.section{padding:66px 0}.section-head{display:block}.section-head p{margin-top:15px}.faq-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.cta{display:block}.cta .hero-actions{margin-top:20px}}
    @media(max-width:520px){.logo{font-size:14px}.logo small{display:none}.status-strip .container{gap:16px}.hero-copy h1{font-size:36px}.hero-copy p{font-size:15px}.hero-actions{display:grid;grid-template-columns:1fr}.launch-meter{gap:14px}.tag-matrix{grid-template-columns:repeat(2,1fr)}.search-row{grid-template-columns:1fr}.meter-panel{display:block}.metric{padding:12px 0;border-top:1px solid var(--line)}.content-grid{grid-template-columns:1fr;grid-template-rows:auto}.content-card,.content-card.big{grid-row:auto;min-height:155px}.news-item{grid-template-columns:70px 1fr}.news-arrow{display:none}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}}
    @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category2 */
:root{
      --bg:#171816;--panel:#21231f;--panel-2:#292b26;--paper:#eeede5;
      --lime:#c8f255;--lime-hi:#d9ff70;--ink:#151712;--text:#f2f0e8;
      --muted:#b7aea1;--faint:#8e9388;--line:#41443c;--orange:#e97b52;
      --radius:12px;--shadow:0 14px 30px rgba(0,0,0,.24)
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--bg);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;font-size:15px;line-height:1.78;overflow-x:hidden}
    body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,#000,transparent 85%);z-index:-1}
    a{color:inherit;text-decoration:none} button,input{font:inherit} button{cursor:pointer} img{display:block;max-width:100%}
    .container{width:min(1240px,calc(100% - 64px));margin:auto}
    .eyebrow{display:flex;align-items:center;gap:10px;color:var(--lime);font-size:12px;font-weight:700;letter-spacing:.1em}
    .eyebrow:before{content:"";width:26px;height:1px;background:var(--lime)}
    .site-header{position:sticky;top:0;z-index:50;background:rgba(23,24,22,.98);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
    .nav{height:72px;display:flex;align-items:center;gap:22px}
    .logo{font-size:17px;font-weight:800;letter-spacing:-.04em;white-space:nowrap}
    .logo small{font:10px ui-monospace,monospace;letter-spacing:.12em;color:var(--lime);margin-left:8px}
    .nav-links{display:flex;gap:8px;align-items:center;margin-left:auto}
    .nav-link{min-height:38px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid transparent;border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}
    .nav-link svg{width:15px;height:15px}.nav-link:hover{color:var(--text);border-color:var(--line);background:var(--panel)}
    .nav-link.active{color:var(--ink);background:var(--lime);border-color:var(--lime);font-weight:700}
    .nav-actions{display:flex;align-items:center;gap:11px;margin-left:10px}
    .status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}.status i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(200,242,85,.1)}
    .icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);display:grid;place-items:center;transition:.2s}
    .icon-btn:hover{border-color:var(--lime);transform:translateY(-2px)}.icon-btn svg{width:18px;height:18px}
    .btn{min-height:44px;border-radius:8px;border:1px solid transparent;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14px;transition:.2s}
    .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.22)}.btn:active{transform:translateY(0)}
    .btn-primary{background:var(--lime);color:var(--ink)}.btn-primary:hover{background:var(--lime-hi)}
    .btn-secondary{background:var(--panel);border-color:var(--line);color:var(--text)}.btn-secondary:hover{border-color:var(--lime)}
    .mobile-menu{display:none}.status-strip{border-bottom:1px solid rgba(65,68,60,.65);background:#1b1d19}
    .status-strip .container{display:flex;gap:25px;overflow:auto;white-space:nowrap;padding:8px 0;color:var(--muted);font-size:12px}
    .page-intro{padding:62px 0 48px;border-bottom:1px solid var(--line)}
    .intro-grid{display:grid;grid-template-columns:8fr 4fr;gap:50px;align-items:end}
    h1,h2,h3,p{margin-top:0}.page-intro h1{font-size:clamp(36px,5vw,68px);line-height:1.1;letter-spacing:-.07em;margin:14px 0 18px;font-weight:800;max-width:760px}
    .lead{max-width:680px;color:var(--muted);font-size:16px;margin:0}
    .archive-note{border-left:3px solid var(--lime);padding:20px;background:var(--panel);color:var(--muted)}
    .archive-note strong{display:block;color:var(--text);font-size:18px;margin-bottom:5px}.mono{font:12px ui-monospace,monospace;color:var(--lime)}
    .section{padding:78px 0;position:relative}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px}
    .section-head h2{font-size:clamp(25px,3vw,39px);line-height:1.2;letter-spacing:-.045em;margin:10px 0 0;font-weight:800}.section-head p{max-width:510px;color:var(--muted);margin:0}
    .topic-layout{display:grid;grid-template-columns:8fr 4fr;gap:22px;align-items:start}.entries{display:grid;gap:16px}
    .entry{display:grid;grid-template-columns:210px 1fr;min-height:164px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s}
    .entry:hover{border-color:#7f866f;transform:translateY(-3px);box-shadow:var(--shadow)}.entry-visual{position:relative;background:#30342b;min-height:164px;overflow:hidden}
    .entry-visual:before{content:"";position:absolute;width:145px;height:240px;background:var(--lime);opacity:.78;transform:rotate(26deg);left:22px;top:-45px}.entry-visual:after{content:"";position:absolute;inset:16px;border:1px solid rgba(238,237,229,.35)}
    .entry-visual span{position:absolute;z-index:1;bottom:14px;left:15px;color:var(--ink);font:700 18px ui-monospace,monospace}
    .entry-body{padding:20px 22px;display:flex;flex-direction:column;justify-content:center}.entry h3{font-size:20px;line-height:1.35;margin:9px 0 7px}.entry p{font-size:14px;color:var(--muted);margin:0 0 12px}
    .badge-row{display:flex;flex-wrap:wrap;gap:7px}.badge{display:inline-flex;align-items:center;min-height:25px;padding:2px 8px;border:1px solid var(--line);border-radius:5px;color:var(--muted);font-size:11px}.badge.lime{color:var(--lime);border-color:rgba(200,242,85,.45)}.badge.warn{color:var(--orange);border-color:rgba(233,123,82,.5)}
    .index-panel{position:sticky;top:95px;background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.index-panel h2{font-size:20px;margin:0 0 16px}.index-panel a{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #c9c8be;color:#53584d;font-size:14px}.index-panel a:hover{color:var(--ink)}.index-panel a b{font:11px ui-monospace,monospace;color:#858b7c}
    .panel-block{margin-top:25px}.panel-block h3{font-size:13px;margin-bottom:9px}.tag-cloud{display:flex;flex-wrap:wrap;gap:7px}.tag-cloud a{border:1px solid #c2c1b7;border-radius:5px;padding:4px 8px;color:#656a5f;font-size:12px}.tag-cloud a:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}
    .meter{margin:16px 0}.meter-line{height:5px;background:#cbcabe;margin-top:7px}.meter-line span{display:block;height:100%;background:var(--lime);width:76%}
    .matrix{display:grid;grid-template-columns:1.3fr .8fr 1.1fr 1fr 1.4fr;gap:10px;align-items:stretch}.matrix a{min-height:74px;padding:15px;background:var(--panel-2);border:1px solid var(--line);border-radius:9px;display:flex;align-items:end;font-weight:700;transition:.2s}.matrix a:nth-child(2),.matrix a:nth-child(5){min-height:106px}.matrix a:hover{background:var(--lime);color:var(--ink);border-color:var(--lime);transform:translateY(-3px)}
    .note-bar{display:flex;align-items:center;gap:14px;padding:17px 20px;border:1px solid var(--line);background:#1d201b;color:var(--muted);margin:10px 0 4px}.note-bar strong{color:var(--lime);font:13px ui-monospace,monospace}
    .faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.faq-item{border:1px solid var(--line);background:var(--panel);border-radius:9px;overflow:hidden}.faq-item summary{list-style:none;cursor:pointer;padding:18px 20px;font-weight:700;display:flex;justify-content:space-between;gap:15px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--lime);font:22px ui-monospace,monospace}.faq-item[open] summary:after{content:"−"}.faq-answer{background:var(--paper);color:#50564b;padding:0 20px 18px;font-size:14px}
    .cta{background:var(--lime);color:var(--ink);padding:34px 38px;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:28px}.cta h2{font-size:clamp(24px,3vw,38px);line-height:1.2;letter-spacing:-.05em;margin:0 0 7px}.cta p{margin:0;color:#465027}.cta .btn-secondary{background:var(--ink);border-color:var(--ink);color:var(--text)}.cta .btn-secondary:hover{background:#292d23;border-color:#292d23}
    footer{border-top:1px solid var(--line);padding:55px 0 22px;background:#121311}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-brand p{max-width:390px;color:var(--muted);font-size:13px;margin-top:18px}.footer-col{display:flex;flex-direction:column;gap:8px}.footer-col h3{font-size:13px;color:var(--lime);margin:0 0 9px}.footer-col a{color:var(--muted);font-size:13px}.footer-col a:hover{color:var(--text)}.footer-bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:17px;display:flex;justify-content:space-between;color:var(--faint);font-size:12px}
    :focus-visible{outline:3px solid rgba(200,242,85,.6);outline-offset:3px}
    @media(max-width:1024px){.container{width:min(100% - 40px,900px)}.nav-actions .status{display:none}.intro-grid,.topic-layout{grid-template-columns:1fr}.index-panel{position:relative;top:auto}.matrix{grid-template-columns:repeat(3,1fr)}}
    @media(max-width:768px){.container{width:calc(100% - 32px)}.nav{height:66px}.nav-links{display:none;position:absolute;top:66px;left:0;right:0;padding:12px 16px;background:var(--panel);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-link{min-height:44px}.nav-actions{margin-left:auto}.mobile-menu{display:grid}.page-intro{padding:45px 0 35px}.section{padding:58px 0}.faq-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.cta{align-items:flex-start;flex-direction:column;padding:28px}.matrix{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:520px){.logo{font-size:14px}.logo small{display:none}.nav-actions .icon-btn{display:none}.entry{grid-template-columns:1fr}.entry-visual{min-height:105px}.entry-body{padding:18px}.section-head{display:block}.section-head p{margin-top:12px}.matrix{grid-template-columns:1fr 1fr}.matrix a,.matrix a:nth-child(2),.matrix a:nth-child(5){min-height:70px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:5px}}
    @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category1 */
:root{--bg:#171816;--panel:#21231f;--panel2:#292b26;--paper:#eeede5;--lime:#c8f255;--limehi:#d9ff70;--ink:#151712;--text:#f2f0e8;--muted:#b7aea1;--faint:#8e9388;--line:#41443c;--orange:#e97b52;--radius:12px;--shadow:0 14px 30px rgba(0,0,0,.24)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.8 "PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;opacity:.16;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}.container{width:min(1240px,calc(100% - 64px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(23,24,22,.98);border-bottom:1px solid var(--line)}.nav{height:72px;display:flex;align-items:center;gap:22px}.logo{font-size:17px;font-weight:800;letter-spacing:-.04em;white-space:nowrap}.logo small{font:10px ui-monospace,monospace;letter-spacing:.12em;color:var(--lime);margin-left:8px}.nav-links{display:flex;gap:8px;align-items:center;margin-left:auto}.nav-link{min-height:38px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid transparent;border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}.nav-link svg{width:15px;height:15px}.nav-link:hover{color:var(--text);border-color:var(--line);background:var(--panel)}.nav-link.active{color:var(--ink);background:var(--lime);border-color:var(--lime);font-weight:700}.nav-actions{display:flex;align-items:center;gap:11px;margin-left:10px}.status{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;white-space:nowrap}.status i{width:7px;height:7px;background:var(--lime);border-radius:50%;display:block}.icon-btn,.menu-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);display:grid;place-items:center;transition:.2s}.icon-btn:hover,.menu-btn:hover{border-color:var(--lime);transform:translateY(-2px)}.icon-btn svg,.menu-btn svg{width:18px;height:18px}.btn{min-height:44px;border-radius:8px;border:1px solid transparent;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14px;transition:.2s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.22)}.btn:active{transform:translateY(0)}.btn:focus-visible,.nav-link:focus-visible,.icon-btn:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid rgba(200,242,85,.45);outline-offset:2px}.btn-primary{background:var(--lime);color:var(--ink)}.btn-primary:hover{background:var(--limehi)}.btn-secondary{background:var(--panel);border-color:var(--line);color:var(--text)}.btn-secondary:hover{border-color:var(--lime)}.menu-btn{display:none}.status-strip{border-bottom:1px solid rgba(65,68,60,.7);color:var(--faint);font-size:12px}.status-strip .container{display:flex;gap:26px;overflow:auto;white-space:nowrap;padding:7px 0}.status-strip b{color:var(--lime);font-family:ui-monospace,monospace;font-weight:500}.page-head{padding:70px 0 48px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-head:after{content:"02 / REGION";position:absolute;right:3%;top:10px;color:rgba(200,242,85,.05);font:800 clamp(70px,12vw,170px)/1 ui-monospace,monospace;white-space:nowrap}..head-grid{display:grid;grid-template-columns:7fr 5fr;gap:40px;align-items:end;position:relative;z-index:1}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--lime);font-size:12px;font-weight:700;letter-spacing:.1em}.eyebrow:before{content:"";width:26px;height:1px;background:var(--lime)}h1{font-size:clamp(37px,5vw,66px);line-height:1.1;letter-spacing:-.07em;margin:15px 0 18px;font-weight:800}h2{font-size:clamp(25px,3vw,39px);line-height:1.2;letter-spacing:-.05em;margin:0 0 12px;font-weight:800}h3{margin:0;font-size:18px;line-height:1.35}.head-copy{color:var(--muted);max-width:670px}.head-note{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--lime);padding:22px}.head-note strong{display:block;font-size:20px;margin-bottom:7px}.head-note p{margin:0;color:var(--muted);font-size:14px}.section{padding:70px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.section-head p{max-width:510px;color:var(--muted);margin:0}.index-layout{display:grid;grid-template-columns:260px 1fr;gap:28px}.index-panel{height:max-content;position:sticky;top:96px;background:var(--panel);border:1px solid var(--line);padding:20px}.index-panel h3{margin-bottom:15px}.filter-group{border-top:1px solid var(--line);padding:15px 0}.filter-group label{display:block;color:var(--faint);font-size:12px;margin-bottom:8px}.filter-list{display:flex;flex-wrap:wrap;gap:7px}.filter-chip,.tag{display:inline-flex;align-items:center;min-height:29px;padding:3px 9px;border-radius:6px;background:#1b1d1a;border:1px solid var(--line);font-size:12px;color:var(--muted);transition:.2s}.filter-chip:hover,.filter-chip.selected,.tag.lime{background:var(--lime);border-color:var(--lime);color:var(--ink);font-weight:700}.filter-select,.filter-input{width:100%;height:44px;background:#191b18;color:var(--text);border:1px solid var(--line);border-radius:7px;padding:0 10px}.filter-select:focus,.filter-input:focus{outline:0;border-color:var(--lime);box-shadow:0 0 0 3px rgba(200,242,85,.14)}.reset{border:0;background:none;color:var(--lime);padding:10px 0;font-size:13px}.paths{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}.path-card{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:18px;min-height:125px;transition:.2s}.path-card:hover{border-color:var(--lime);transform:translateY(-3px);box-shadow:var(--shadow)}.path-card .num{font:12px ui-monospace,monospace;color:var(--lime)}.path-card h3{margin:10px 0 5px}.path-card p{margin:0;color:var(--muted);font-size:13px}.list-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:0 0 13px;margin-bottom:15px;color:var(--muted);font-size:13px}.content-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.entry{display:grid;grid-template-columns:145px 1fr;gap:15px;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;min-height:145px;transition:.2s}.entry:hover{border-color:#7c8569;transform:translateY(-2px);box-shadow:var(--shadow)}.thumb{min-height:120px;border-radius:8px;background:#2d3029;position:relative;overflow:hidden}.thumb:before{content:"";position:absolute;width:80%;height:45%;right:-18%;bottom:-8%;background:var(--lime);transform:rotate(-18deg);opacity:.8}.thumb:after{content:"";position:absolute;inset:12px;border:1px solid rgba(238,237,229,.25)}.entry small{color:var(--lime);font:11px ui-monospace,monospace}.entry h3{margin:7px 0 6px;font-size:16px}.entry p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 9px}.entry-meta{display:flex;gap:10px;color:var(--faint);font-size:11px}.index-tip{grid-column:1/-1;padding:16px 19px;background:#292b26;border:1px solid #5d624f;border-left:3px solid var(--lime);color:var(--muted);display:flex;justify-content:space-between;gap:20px;align-items:center}.index-tip b{color:var(--text)}.pagination{display:flex;gap:7px;margin-top:26px}.page-num{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;color:var(--muted);font:13px ui-monospace,monospace}.page-num:hover,.page-num.current{background:var(--lime);border-color:var(--lime);color:var(--ink)}.page-num.disabled{opacity:.4;cursor:not-allowed}.notice{background:var(--paper);color:var(--ink);padding:28px;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;gap:25px}.notice p{margin:6px 0 0;color:#5d6058;font-size:14px}.notice .btn-secondary{background:transparent;border-color:#9da096;color:var(--ink)}.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.faq-item{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--panel)}summary{list-style:none;cursor:pointer;padding:17px 19px;font-weight:700;display:flex;justify-content:space-between;gap:16px}summary::-webkit-details-marker{display:none}summary:after{content:"+";color:var(--lime);font-size:21px;line-height:1}details[open] summary:after{content:"−"}details[open] summary{background:var(--paper);color:var(--ink)}.answer{padding:15px 19px;background:var(--paper);color:#5d6058;font-size:14px}.cta{padding:34px 0}.cta-box{background:var(--lime);color:var(--ink);border-radius:var(--radius);padding:31px 35px;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-box p{margin:5px 0 0;color:#3c4529}.cta-box .btn-secondary{background:transparent;border-color:#718536;color:var(--ink)}footer{border-top:1px solid var(--line);padding:50px 0 22px;background:#141512}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-brand p{max-width:390px;color:var(--muted);font-size:13px}.footer-col{display:flex;flex-direction:column;gap:8px}.footer-col h3{font-size:14px;color:var(--lime);margin-bottom:7px}.footer-col a{color:var(--muted);font-size:13px}.footer-col a:hover{color:var(--text)}.footer-bottom{border-top:1px solid var(--line);margin-top:36px;padding-top:17px;display:flex;justify-content:space-between;color:var(--faint);font-size:12px}.drawer{display:none}
@media(max-width:1024px){.container{width:min(100% - 40px,900px)}.nav-actions .status{display:none}.index-layout{grid-template-columns:220px 1fr}.content-list{grid-template-columns:1fr}.paths{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.container{width:calc(100% - 32px)}.nav{height:66px}.logo{font-size:15px}.nav-links{display:none}.nav-actions{margin-left:auto}.menu-btn{display:grid}.page-head{padding:50px 0 35px}.head-grid{grid-template-columns:1fr;gap:22px}.section{padding:52px 0}.index-layout{display:block}.index-panel{position:relative;top:0;margin-bottom:20px}.paths{grid-template-columns:1fr}.faq-grid,.footer-grid{grid-template-columns:1fr}.notice,.cta-box{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column;gap:8px}.drawer.open{display:flex;position:fixed;inset:66px 0 auto;background:var(--panel);border-bottom:1px solid var(--line);padding:15px 16px;z-index:19;flex-direction:column;gap:7px}.drawer .nav-link{min-height:44px}.entry{grid-template-columns:120px 1fr}.index-tip{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){h1{font-size:38px}.container{width:calc(100% - 28px)}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.entry{grid-template-columns:1fr}.thumb{min-height:110px}.list-toolbar{align-items:flex-start;flex-direction:column;gap:8px}.content-list{gap:11px}.section-head{display:block}.section-head p{margin-top:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
