/* roulang page: index */
:root{
  --ink:#20252b;
  --ink-soft:#68717b;
  --paper:#f6f3ef;
  --surface:#fffdf9;
  --line:#e7e0d8;
  --coral:#f0644b;
  --coral-dark:#d94c36;
  --teal:#14a7a0;
  --teal-dark:#087f7a;
  --sun:#f4bc57;
  --night:#242a31;
  --night-2:#303942;
  --white:#fff;
  --radius-lg:24px;
  --radius-md:16px;
  --radius-sm:10px;
  --shadow:0 16px 45px rgba(37,35,32,.09);
  --shadow-sm:0 7px 20px rgba(37,35,32,.07);
  --max:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Noto Sans SC","Microsoft YaHei",Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}
button{border:0;cursor:pointer}
.container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}
.navbar{height:76px;display:flex;align-items:center;gap:28px}
.logo{display:flex;align-items:center;gap:11px;min-width:196px}
.logo-mark{width:37px;height:37px;border-radius:12px;background:var(--coral);position:relative;transform:rotate(-8deg)}
.logo-mark:before,.logo-mark:after{content:"";position:absolute;background:var(--white);border-radius:5px}
.logo-mark:before{width:18px;height:6px;left:9px;top:10px;transform:rotate(35deg)}
.logo-mark:after{width:18px;height:6px;left:9px;top:21px;transform:rotate(-35deg)}
.logo strong{font-size:21px;letter-spacing:-.04em}
.logo small{display:block;color:var(--ink-soft);font-size:10px;line-height:1.2;margin-top:1px}
.nav-links{display:flex;align-items:center;gap:5px;flex:1}
.nav-links a{padding:9px 13px;border-radius:9px;font-size:14px;color:#505861;transition:.2s}
.nav-links a:hover,.nav-links a:focus,.nav-links a.active{color:var(--coral-dark);background:#fff0eb;outline:none}
.nav-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
.member-link{font-size:14px;color:var(--ink-soft)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:10px;font-weight:700;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(30,30,30,.14)}
.btn:focus{outline:3px solid rgba(20,167,160,.35);outline-offset:2px}
.btn-primary{background:var(--coral);color:#fff}
.btn-primary:hover{background:var(--coral-dark)}
.btn-dark{background:var(--night);color:#fff}
.btn-outline{border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.menu-toggle{display:none;background:transparent;color:var(--ink);font-size:27px;width:42px;height:42px}
.status-bar{background:var(--night);color:#dce4e4;font-size:13px}
.status-inner{height:34px;display:flex;align-items:center;gap:10px}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px rgba(240,100,75,.16)}
.hero{padding:76px 0 88px;background:var(--paper);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:58px}
.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--coral-dark);font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.eyebrow:before,.section-kicker:before{content:"";width:22px;height:3px;border-radius:4px;background:var(--coral)}
.hero h1{font-size:clamp(38px,5vw,62px);line-height:1.18;letter-spacing:-.055em;margin:19px 0 22px;max-width:700px}
.hero h1 em{font-style:normal;color:var(--coral)}
.hero-copy{max-width:590px;color:var(--ink-soft);font-size:17px}
.hero-actions{display:flex;gap:12px;margin-top:31px;flex-wrap:wrap}
.hero-note{display:flex;gap:22px;margin-top:30px;padding-top:20px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:13px}
.hero-note strong{display:block;color:var(--ink);font-size:20px;line-height:1.2}
.hero-visual{position:relative;min-height:395px}
.hero-art{height:395px;border-radius:32px;background:var(--night);overflow:hidden;position:relative;box-shadow:var(--shadow)}
.hero-art:before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;background:var(--teal);right:-150px;top:-170px;opacity:.9}
.hero-art:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:var(--coral);left:-120px;bottom:-150px}
.art-grid{position:absolute;inset:35px;z-index:2;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:23px;display:flex;flex-direction:column;justify-content:space-between}
.art-top{display:flex;justify-content:space-between;color:#fff;font-size:12px}
.live-tag{background:var(--coral);padding:4px 9px;border-radius:5px}
.art-match{display:flex;align-items:center;justify-content:center;gap:20px;color:#fff}
.team{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);font-size:24px;font-weight:800;border:2px solid rgba(255,255,255,.35)}
.vs{color:var(--sun);font-weight:800;font-size:20px}
.art-bottom{color:#d8e0df;font-size:13px;display:flex;justify-content:space-between;align-items:end}
.viewers{color:#fff}.viewers b{font-size:21px;margin-right:5px}
.section{padding:92px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}
.section-head h2{font-size:clamp(27px,3vw,39px);line-height:1.25;letter-spacing:-.04em;margin-top:10px}
.section-head p{color:var(--ink-soft);max-width:440px;font-size:14px}
.live-section{background:var(--surface)}
.live-layout{display:grid;grid-template-columns:1.45fr .8fr;gap:22px}
.feature-live{min-height:360px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#303a40,#1e252c);color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.feature-live:before{content:"";position:absolute;right:-60px;top:-70px;width:270px;height:270px;border:38px solid rgba(20,167,160,.55);border-radius:50%}
.feature-live>*{position:relative;z-index:1}
.feature-live .live-tag{width:max-content}
.feature-live h3{font-size:29px;line-height:1.35;max-width:480px}
.live-meta{display:flex;gap:20px;color:#b8c2c4;font-size:13px;margin-top:12px}
.schedule{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;padding:12px}
.schedule-title{padding:12px 14px 10px;font-size:15px;font-weight:800}
.schedule-item{padding:15px 14px;border-top:1px solid #f0ebe6;display:grid;grid-template-columns:66px 1fr;gap:10px;transition:.2s}
.schedule-item:hover{background:#fff7f2;border-radius:10px}
.schedule-time{font-size:12px;color:var(--ink-soft)}
.schedule-item h4{font-size:14px;line-height:1.4}
.badge{display:inline-flex;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:700;margin-top:5px}
.badge-live{color:#c44431;background:#fff0eb}.badge-soon{color:#087f7a;background:#e6f7f5}.badge-end{color:#7b8186;background:#f0f1f1}
.quick-section{padding-top:0;background:var(--surface)}
.quick-row{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:14px}
.quick-card{min-height:150px;border-radius:var(--radius-md);padding:25px;background:#f5eee7;border:1px solid transparent;transition:.25s}
.quick-card:nth-child(2){background:#e7f5f3}.quick-card:nth-child(3){background:#fff1d9}
.quick-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:rgba(240,100,75,.25)}
.quick-card span{font-size:12px;color:var(--ink-soft)}.quick-card h3{font-size:20px;margin:8px 0 6px}.quick-card p{font-size:13px;color:var(--ink-soft)}
.quick-arrow{float:right;font-size:20px;color:var(--coral)}
.member-section{background:#eee9e3}
.member-panel{display:grid;grid-template-columns:1.05fr .95fr;gap:45px;align-items:center;background:var(--night);color:#fff;border-radius:var(--radius-lg);padding:42px 45px}
.member-panel h2{font-size:35px;line-height:1.3;margin:12px 0}.member-panel p{color:#c5cece;font-size:15px}
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:17px;border-left:1px solid rgba(255,255,255,.15);padding-left:42px}
.benefit{display:flex;gap:12px;align-items:flex-start}.benefit-icon{width:30px;height:30px;background:var(--teal);color:#fff;border-radius:8px;display:grid;place-items:center;font-weight:800}.benefit h4{font-size:14px}.benefit p{font-size:12px;margin-top:2px}
.app-section{background:var(--paper)}
.app-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.devices{height:310px;position:relative;background:#e7ddd4;border-radius:28px;overflow:hidden}
.devices:before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:#f8c875;left:35px;top:30px}
.device{position:absolute;width:145px;height:270px;border:7px solid var(--night);border-radius:24px;background:#fff;box-shadow:var(--shadow);overflow:hidden}
.device:first-of-type{left:125px;top:34px;transform:rotate(-8deg)}.device:last-of-type{left:220px;top:18px;transform:rotate(8deg)}
.device-screen{height:100%;padding:16px 10px;background:#f7f3ef}.device-screen b{display:block;font-size:13px;margin:12px 0}.screen-block{height:65px;border-radius:9px;background:var(--coral);margin-bottom:9px}.screen-line{height:9px;width:72%;background:#d7d1ca;border-radius:4px;margin:10px 0}
.app-copy h2{font-size:38px;line-height:1.25;margin:10px 0 15px}.app-copy p{color:var(--ink-soft);max-width:510px}.feature-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.feature-tags span{padding:7px 12px;border:1px solid var(--line);border-radius:20px;font-size:13px;background:#fff}
.download-line{display:flex;align-items:center;gap:18px;margin-top:22px}.qr{width:78px;height:78px;background:repeating-linear-gradient(45deg,#252a2e 0 3px,#fff 3px 6px);border:7px solid #fff;box-shadow:var(--shadow-sm)}.download-line small{display:block;color:var(--ink-soft);font-size:12px}
.news-section{background:var(--surface)}
.news-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:25px}.featured-news{border-radius:var(--radius-lg);background:#fff3e8;padding:28px;min-height:280px;display:flex;flex-direction:column;justify-content:end}.featured-news .badge{width:max-content}.featured-news h3{font-size:25px;line-height:1.4;margin:14px 0 8px}.featured-news p{font-size:14px;color:var(--ink-soft)}
.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:92px 1fr auto;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.news-date{font-size:12px;color:var(--ink-soft)}.news-item h3{font-size:15px;line-height:1.45}.news-item p{font-size:12px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.news-item a{font-size:13px;color:var(--coral-dark);font-weight:700}
.empty-state{padding:35px;color:var(--ink-soft);border:1px dashed var(--line);border-radius:14px}
.faq-section{background:var(--paper)}.faq-wrap{max-width:850px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;background:transparent;text-align:left;display:flex;justify-content:space-between;align-items:center;padding:21px 4px;font-weight:800;color:var(--ink)}.faq-question i{font-style:normal;color:var(--coral);font-size:24px;transition:.2s}.faq-answer{display:none;color:var(--ink-soft);font-size:14px;padding:0 35px 20px 4px}.faq-item.open .faq-answer{display:block}.faq-item.open .faq-question i{transform:rotate(45deg)}
.cta{background:var(--coral);color:#fff;padding:58px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta h2{font-size:32px;line-height:1.3}.cta p{color:#ffe4dc;margin-top:8px}.cta .btn{background:#fff;color:var(--coral-dark)}
.site-footer{background:var(--night);color:#fff;padding:48px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px;padding-bottom:38px}.footer-brand p{color:#aeb8b9;font-size:13px;max-width:250px;margin-top:15px}.footer-title{font-size:14px;margin-bottom:14px}.footer-links{display:grid;gap:8px}.footer-links a{color:#aeb8b9;font-size:13px;transition:.2s}.footer-links a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;color:#919b9d;font-size:12px;display:flex;justify-content:space-between;gap:15px}
@media(max-width:900px){.nav-links{gap:0}.nav-links a{padding:8px}.logo{min-width:auto}.member-link{display:none}.hero-grid,.app-layout{grid-template-columns:1fr;gap:38px}.hero{padding-top:55px}.hero-visual{max-width:650px}.member-panel{grid-template-columns:1fr;padding:35px}.benefits{border-left:0;border-top:1px solid rgba(255,255,255,.15);padding:25px 0 0}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}}
@media(max-width:768px){.container{width:min(var(--max),calc(100% - 32px))}.navbar{height:66px}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;left:16px;right:16px;top:72px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{padding:12px 14px}.nav-actions{display:none}.hero{padding:48px 0 60px}.hero h1{font-size:38px}.hero-copy{font-size:15px}.section{padding:62px 0}.section-head{display:block}.section-head p{margin-top:12px}.live-layout,.news-layout{grid-template-columns:1fr}.quick-row{grid-template-columns:1fr 1fr}.quick-card:first-child{grid-column:span 2}.app-layout{gap:30px}.app-copy h2{font-size:31px}.devices{height:280px}.device:first-of-type{left:25%;}.device:last-of-type{left:45%}.cta-inner{display:block}.cta .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:480px){.container{width:calc(100% - 28px)}.logo small{display:none}.hero h1{font-size:32px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn{width:100%}.hero-note{gap:13px}.hero-art{height:300px;min-height:300px}.art-grid{inset:20px;padding:16px}.art-match{gap:11px}.team{width:65px;height:65px}.feature-live{min-height:310px;padding:23px}.feature-live h3{font-size:23px}.quick-row{grid-template-columns:1fr}.quick-card:first-child{grid-column:auto}.member-panel{padding:27px 22px}.member-panel h2{font-size:27px}.benefits{grid-template-columns:1fr}.news-item{grid-template-columns:72px 1fr}.news-item p{display:none}.news-item a{grid-column:2}.download-line{align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}.copyright{display:block}.copyright span{display:block;margin-top:5px}}

/* roulang page: index */
:root{
            --ink:#101713;
            --ink-2:#16221c;
            --panel:#1c2a23;
            --panel-2:#223329;
            --lime:#c7f36a;
            --lime-2:#9fda42;
            --coral:#ff8065;
            --paper:#f3f5ed;
            --paper-2:#e8ede2;
            --text:#eef4e9;
            --muted:#9caea1;
            --dark-text:#203027;
            --dark-muted:#647369;
            --line:rgba(221,242,214,.14);
            --dark-line:rgba(27,55,39,.13);
            --radius:22px;
            --radius-sm:14px;
            --shadow:0 18px 50px rgba(3,12,7,.22);
            --container:1180px;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{font-family:"Noto Sans SC","Microsoft YaHei","PingFang SC",Arial,sans-serif;background:var(--ink);color:var(--text);line-height:1.65;font-size:15px}
        a{color:inherit;text-decoration:none}
        button,input{font:inherit}
        button{border:0;cursor:pointer}
        img{display:block;max-width:100%}
        .container{width:min(var(--container),calc(100% - 48px));margin:auto}
        .notice{height:36px;background:var(--lime);color:var(--ink);font-size:12px;display:flex;align-items:center}
        .notice .container{display:flex;justify-content:space-between;align-items:center}
        .notice strong{font-weight:800}
        .notice span{opacity:.72}
        .site-header{height:78px;background:rgba(16,23,19,.93);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}
        .header-inner{height:100%;display:flex;align-items:center;gap:34px}
        .logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:21px;letter-spacing:-.04em;white-space:nowrap}
        .logo-mark{width:28px;height:28px;border-radius:9px 9px 9px 3px;background:var(--lime);position:relative;display:inline-block}
        .logo-mark:after{content:"";width:9px;height:9px;border-radius:50%;background:var(--ink);position:absolute;right:6px;top:6px}
        .logo small{font-size:10px;color:var(--muted);font-weight:500;letter-spacing:.05em;margin-left:2px}
        .nav{display:flex;align-items:center;gap:6px;flex:1}
        .nav a{padding:9px 14px;border-radius:10px;color:#c2cec3;font-size:14px;transition:.2s ease}
        .nav a:hover,.nav a:focus,.nav a.active{background:rgba(199,243,106,.12);color:var(--lime)}
        .header-actions{display:flex;align-items:center;gap:10px}
        .header-link{font-size:13px;color:#c2cec3;padding:9px 12px}
        .menu-toggle{display:none;background:none;color:var(--text);font-size:25px;padding:4px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:12px;font-weight:750;font-size:14px;transition:.22s ease;border:1px solid transparent}
        .btn-primary{background:var(--lime);color:var(--ink)}
        .btn-primary:hover,.btn-primary:focus{background:#d8fa8c;transform:translateY(-2px);box-shadow:0 10px 25px rgba(199,243,106,.18)}
        .btn-dark{background:var(--ink-2);border-color:var(--line);color:var(--text)}
        .btn-dark:hover,.btn-dark:focus{border-color:var(--lime);color:var(--lime);transform:translateY(-2px)}
        .btn-outline{border-color:var(--dark-line);color:var(--dark-text);background:transparent}
        .btn-outline:hover{background:var(--dark-text);color:#fff}
        :focus-visible{outline:3px solid var(--coral);outline-offset:3px}
        .hero{position:relative;overflow:hidden;padding:90px 0 88px;background:var(--ink)}
        .hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(199,243,106,.12);border-radius:50%;right:-120px;top:-180px}
        .hero:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(255,128,101,.14);border-radius:50%;right:55px;bottom:-180px}
        .hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:70px;align-items:center;position:relative;z-index:1}
        .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:none;color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.08em}
        .eyebrow:before,.section-kicker:before{content:"";width:22px;height:2px;background:var(--lime)}
        h1{font-size:clamp(38px,5vw,70px);line-height:1.12;letter-spacing:-.065em;margin:22px 0 22px;max-width:720px}
        .hero-copy{font-size:17px;line-height:1.85;color:var(--muted);max-width:590px}
        .hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
        .hero-note{display:flex;gap:22px;margin-top:38px;color:var(--muted);font-size:12px}
        .hero-note b{color:var(--text);font-size:14px;display:block}
        .display-board{background:#19261f;border:1px solid var(--line);border-radius:26px;padding:18px;box-shadow:var(--shadow);transform:rotate(1.2deg)}
        .board-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:4px 3px 16px;color:var(--muted);font-size:12px}
        .live-dot{display:inline-flex;align-items:center;gap:7px;color:var(--lime);font-weight:700}
        .live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(199,243,106,.12)}
        .board-main{padding:28px 12px 23px;display:flex;align-items:center;justify-content:space-between;gap:12px}
        .team{text-align:center;width:30%;font-weight:800}.team-mark{width:57px;height:57px;border-radius:17px;background:#2d4434;margin:0 auto 10px;display:grid;place-items:center;color:var(--lime);font-size:23px}
        .team small{display:block;color:var(--muted);font-size:11px;font-weight:500}
        .score{text-align:center}.score strong{font-size:34px;letter-spacing:.08em}.score small{display:block;color:var(--coral);font-size:11px;margin-top:2px}
        .board-progress{height:5px;background:#33453a;border-radius:5px;overflow:hidden}.board-progress span{display:block;width:66%;height:100%;background:var(--lime)}
        .board-footer{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
        .mini-panel{background:#223329;border-radius:14px;padding:15px}.mini-panel label{display:block;color:var(--muted);font-size:11px;margin-bottom:4px}.mini-panel strong{font-size:14px}
        .section{padding:92px 0}.section-light{background:var(--paper);color:var(--dark-text)}.section-soft{background:var(--paper-2);color:var(--dark-text)}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:34px}.section-head h2{font-size:clamp(28px,3vw,43px);line-height:1.2;letter-spacing:-.045em;margin-top:12px}.section-head p{color:var(--dark-muted);max-width:460px;font-size:14px}
        .dark-head p{color:var(--muted)}
        .text-link{color:var(--lime);font-weight:750;font-size:13px;white-space:nowrap}.text-link:after{content:"  ↗";font-size:16px}
        .schedule{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px}
        .event{background:#fff;border:1px solid var(--dark-line);border-radius:var(--radius);padding:22px;position:relative;overflow:hidden;transition:.22s}
        .event:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(35,53,40,.11)}
        .event.featured{background:var(--ink-2);color:var(--text);min-height:270px}.event.featured .event-muted{color:var(--muted)}
        .event:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--coral)}.event.live:before{background:var(--lime)}
        .event-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:30px}.badge{display:inline-flex;padding:5px 9px;border-radius:7px;font-size:11px;font-weight:800;background:#edf5df;color:#58722d}.badge.live{background:rgba(199,243,106,.14);color:var(--lime)}.badge.soon{background:#fff0e8;color:#c65439}.badge.done{background:#edf0ed;color:#768079}
        .event-time{font-size:12px;color:var(--dark-muted)}.featured .event-time{color:var(--muted)}
        .event h3{font-size:22px;line-height:1.35;margin-bottom:8px}.event-muted{color:var(--dark-muted);font-size:13px;line-height:1.7}
        .event-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:26px;padding-top:16px;border-top:1px solid var(--dark-line);font-size:12px}.featured .event-bottom{border-color:var(--line)}
        .event-action{font-weight:800;color:var(--dark-text)}.featured .event-action{color:var(--lime)}
        .membership{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}.membership h2{font-size:clamp(30px,4vw,49px);line-height:1.2;letter-spacing:-.05em;margin:13px 0 18px}.membership-intro{color:var(--muted);max-width:450px}
        .member-panel{background:var(--panel);border-radius:var(--radius);padding:28px;border:1px solid var(--line);box-shadow:var(--shadow)}.member-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.member-panel-head strong{font-size:20px}.member-panel-head span{font-size:12px;color:var(--lime)}
        .meter{height:9px;background:#35463b;border-radius:9px;overflow:hidden}.meter span{display:block;width:62%;height:100%;background:var(--lime);border-radius:9px}.meter-label{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:8px}
        .benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.benefit{padding:16px;background:var(--panel-2);border-radius:13px}.benefit i{font-style:normal;color:var(--lime);font-size:18px}.benefit strong{display:block;font-size:14px;margin:5px 0}.benefit span{font-size:12px;color:var(--muted)}
        .interaction-wrap{display:grid;grid-template-columns:1fr 1.25fr;gap:16px}.interaction-intro{background:var(--coral);color:var(--ink);border-radius:var(--radius);padding:30px;min-height:290px;display:flex;flex-direction:column;justify-content:space-between}.interaction-intro h2{font-size:38px;line-height:1.2;letter-spacing:-.05em}.interaction-intro p{font-size:14px;max-width:330px}.interaction-feed{background:#fff;border:1px solid var(--dark-line);border-radius:var(--radius);padding:26px}.feed-title{display:flex;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--dark-line);font-weight:800}.feed-title span{font-size:12px;color:var(--dark-muted);font-weight:500}.feed-row{display:flex;gap:16px;padding:21px 0;border-bottom:1px solid var(--dark-line);align-items:center}.feed-icon{width:43px;height:43px;border-radius:12px;background:#edf5df;color:#54762d;display:grid;place-items:center;font-weight:900}.feed-row strong{display:block;font-size:14px}.feed-row small{color:var(--dark-muted);font-size:12px}.feed-state{margin-left:auto;color:#6b8571;font-size:11px;white-space:nowrap}
        .app-section{background:#dfe8d9;color:var(--dark-text);padding:76px 0}.app-grid{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:70px}.app-grid h2{font-size:clamp(31px,4vw,52px);line-height:1.2;letter-spacing:-.055em;margin:12px 0 16px}.app-grid p{color:var(--dark-muted);max-width:500px}.app-actions{display:flex;gap:12px;align-items:center;margin-top:28px;flex-wrap:wrap}.qr{width:72px;height:72px;border:1px dashed #819283;border-radius:10px;display:grid;place-items:center;text-align:center;color:#718173;font-size:10px}.phones{display:flex;justify-content:center;align-items:end;gap:16px}.phone{width:150px;height:282px;background:var(--ink-2);border:6px solid #27362c;border-radius:24px;padding:17px 11px;box-shadow:0 14px 28px rgba(20,42,27,.18)}.phone.back{height:238px;opacity:.78;transform:rotate(-7deg)}.phone-head{height:6px;width:42px;background:#607263;border-radius:5px;margin:0 auto 23px}.phone h4{font-size:13px;margin-bottom:16px}.phone-line{height:8px;background:#3a5140;border-radius:5px;margin:9px 0}.phone-line.short{width:58%}.phone-box{height:72px;background:#2b4934;border-radius:12px;margin:16px 0}.phone-button{height:30px;background:var(--lime);border-radius:8px;margin-top:20px}
        .news-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:16px}.news-feature,.news-list{background:#fff;border:1px solid var(--dark-line);border-radius:var(--radius);padding:27px}.news-feature{background:var(--ink-2);color:var(--text);display:flex;flex-direction:column;justify-content:space-between;min-height:250px}.news-feature h3{font-size:25px;line-height:1.4;margin:20px 0}.news-feature p{color:var(--muted);font-size:13px}.news-meta{font-size:11px;color:var(--muted);display:flex;gap:12px}.news-list{padding:9px 25px}.news-item{display:grid;grid-template-columns:76px 1fr auto;gap:15px;align-items:center;padding:17px 0;border-bottom:1px solid var(--dark-line)}.news-item:last-child{border-bottom:0}.news-item time{font-size:12px;color:var(--dark-muted)}.news-item h4{font-size:14px}.news-item p{font-size:12px;color:var(--dark-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.news-tag{font-size:11px;color:#668143;background:#edf5df;padding:4px 7px;border-radius:6px;white-space:nowrap}.empty-state{padding:28px;color:var(--dark-muted);font-size:13px}
        .faq-area{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px}.faq-area h2{font-size:40px;line-height:1.2;letter-spacing:-.05em;margin-top:13px}.faq-area p{color:var(--muted);margin-top:15px}.faq-list details{border-bottom:1px solid var(--line);padding:21px 0}.faq-list summary{cursor:pointer;list-style:none;font-size:15px;font-weight:750;display:flex;justify-content:space-between;gap:15px}.faq-list summary:after{content:"+";color:var(--lime);font-size:22px;font-weight:400;line-height:1}.faq-list details[open] summary:after{content:"−"}.faq-list details p{color:var(--muted);font-size:13px;line-height:1.8;padding:14px 30px 0 0}
        .cta{padding:68px 0;background:var(--lime);color:var(--ink)}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.05em;line-height:1.2}.cta p{margin-top:9px;color:#52663e}.cta .btn-dark{border-color:rgba(16,23,19,.25);background:var(--ink);color:var(--lime)}
        .footer{background:#0b110e;padding:60px 0 26px;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:35px;padding-bottom:45px}.footer .logo{color:var(--text);margin-bottom:15px}.footer h3{font-size:13px;color:var(--text);margin-bottom:16px}.footer p{font-size:12px;line-height:1.8;max-width:270px}.footer a{display:block;font-size:12px;margin:9px 0;transition:.2s}.footer a:hover{color:var(--lime)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:18px;font-size:11px}.footer-bottom span:last-child{text-align:right}
        @media(max-width:1024px){.hero-grid{gap:35px}.schedule{grid-template-columns:1fr 1fr}.event.featured{grid-column:span 2}.membership,.app-grid{gap:35px}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}}
        @media(max-width:768px){.container{width:min(100% - 34px,600px)}.notice span{display:none}.site-header{height:68px}.header-inner{gap:15px}.logo{font-size:18px}.logo small{display:none}.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ink-2);border-bottom:1px solid var(--line);padding:12px 17px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:13px 14px}.header-actions .header-link{display:none}.header-actions .btn{min-height:38px;padding:0 12px;font-size:12px}.hero{padding:60px 0}.hero-grid,.membership,.interaction-wrap,.app-grid,.faq-area,.news-grid{grid-template-columns:1fr}.hero-grid{gap:45px}h1{font-size:43px}.display-board{transform:none}.section{padding:65px 0}.section-head{display:block}.section-head p{margin-top:14px}.section-head .text-link{display:inline-block;margin-top:18px}.interaction-intro{min-height:230px}.app-grid{gap:35px}.phones{justify-content:flex-start;padding-left:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:span 2}.cta-inner{display:block}.cta .btn{margin-top:22px}}
        @media(max-width:520px){.hero{padding:48px 0}.hero-copy{font-size:15px}.hero-buttons .btn{width:100%}.hero-note{gap:14px}.schedule{display:flex;overflow-x:auto;margin-right:-17px;padding-right:17px}.event{min-width:280px}.event.featured{min-width:310px}.benefits{grid-template-columns:1fr}.interaction-feed{padding:18px}.feed-state{display:none}.news-feature,.news-list{padding:21px}.news-item{grid-template-columns:58px 1fr}.news-item .news-tag{display:none}.faq-area h2{font-size:32px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block;line-height:1.8}.footer-bottom span:last-child{text-align:left;display:block;margin-top:8px}.phone{width:138px}.phone.back{display:none}}

/* roulang page: article */
:root{
            --ink:#101713;
            --ink-2:#16221c;
            --panel:#1c2a23;
            --panel-2:#223329;
            --lime:#c7f36a;
            --lime-2:#9fda42;
            --coral:#ff8065;
            --paper:#f3f5ed;
            --paper-2:#e8ede2;
            --text:#eef4e9;
            --muted:#9caea1;
            --dark-text:#203027;
            --dark-muted:#647369;
            --line:rgba(221,242,214,.14);
            --dark-line:rgba(27,55,39,.13);
            --radius:22px;
            --radius-sm:14px;
            --shadow:0 18px 50px rgba(3,12,7,.22);
            --shadow-sm:0 7px 20px rgba(37,55,42,.09);
            --container:1180px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            color:var(--dark-text);
            background:var(--paper);
            font-family:"Noto Sans SC","Microsoft YaHei",Arial,sans-serif;
            font-size:16px;
            line-height:1.7;
            -webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{border:0;cursor:pointer}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .site-header{
            position:sticky;
            top:0;
            z-index:50;
            background:rgba(255,253,249,.96);
            border-bottom:1px solid #dfe8dc;
            backdrop-filter:blur(15px);
        }
        .navbar{height:76px;display:flex;align-items:center;gap:28px}
        .logo{display:flex;align-items:center;gap:11px;min-width:196px}
        .logo-mark{
            width:37px;height:37px;border-radius:12px;background:var(--coral);
            position:relative;transform:rotate(-8deg);flex:0 0 auto;
        }
        .logo-mark:before,.logo-mark:after{
            content:"";position:absolute;background:#fff;border-radius:5px;
        }
        .logo-mark:before{width:18px;height:6px;left:9px;top:10px;transform:rotate(35deg)}
        .logo-mark:after{width:18px;height:6px;left:9px;top:21px;transform:rotate(-35deg)}
        .logo strong{font-size:21px;letter-spacing:-.04em;color:var(--ink)}
        .logo small{display:block;color:var(--dark-muted);font-size:10px;line-height:1.2;margin-top:1px}
        .nav{
            display:flex;align-items:center;gap:5px;flex:1;
        }
        .nav a{
            padding:9px 13px;border-radius:9px;font-size:14px;color:#526056;
            transition:.2s ease;
        }
        .nav a:hover,.nav a:focus,.nav a.active{
            color:#b84c38;background:#fff0eb;outline:none;
        }
        .nav-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
        .btn{
            display:inline-flex;align-items:center;justify-content:center;gap:8px;
            min-height:44px;padding:0 20px;border-radius:11px;font-weight:800;
            font-size:14px;transition:transform .2s,box-shadow .2s,background .2s;
        }
        .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(30,30,30,.14)}
        .btn:focus{outline:3px solid rgba(20,167,160,.35);outline-offset:2px}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:#df5941}
        .btn-dark{background:var(--ink-2);color:#fff}
        .btn-lime{background:var(--lime);color:#172018}
        .btn-outline{border:1px solid #d7e0d5;background:#fffdf9;color:var(--dark-text)}
        .menu-toggle{display:none;background:transparent;color:var(--ink);font-size:27px;width:42px;height:42px}
        .notice-bar{
            background:var(--ink-2);color:#cbd9c9;font-size:12px;
            padding:7px 0;text-align:center;letter-spacing:.02em;
        }
        .article-hero{
            background:var(--ink-2);color:var(--text);padding:62px 0 68px;
            position:relative;overflow:hidden;
        }
        .article-hero:after{
            content:"";position:absolute;width:380px;height:380px;border-radius:50%;
            border:65px solid rgba(199,243,106,.13);right:-130px;top:-170px;
        }
        .article-hero:before{
            content:"";position:absolute;width:180px;height:180px;border-radius:50%;
            background:rgba(255,128,101,.18);left:-70px;bottom:-100px;
        }
        .article-hero .container{position:relative;z-index:1}
        .breadcrumb{
            display:flex;flex-wrap:wrap;gap:9px;align-items:center;
            color:var(--muted);font-size:13px;margin-bottom:25px;
        }
        .breadcrumb a:hover{color:var(--lime)}
        .breadcrumb .current{color:#dce8d9;max-width:680px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .article-kicker{
            display:inline-flex;align-items:center;gap:8px;color:var(--lime);
            font-size:12px;font-weight:800;letter-spacing:.12em;
        }
        .article-kicker:before{content:"";width:22px;height:3px;border-radius:5px;background:var(--coral)}
        .article-hero h1{
            max-width:900px;margin:18px 0 20px;font-size:clamp(32px,5vw,58px);
            line-height:1.22;letter-spacing:-.055em;color:#fff;
        }
        .article-meta{display:flex;flex-wrap:wrap;gap:18px;color:#a9b9aa;font-size:13px}
        .article-meta span{display:inline-flex;align-items:center;gap:6px}
        .meta-dot{width:6px;height:6px;border-radius:50%;background:var(--coral)}
        .reading-layout{
            display:grid;grid-template-columns:minmax(0,790px) 310px;
            gap:42px;align-items:start;padding:70px 0 92px;
        }
        .article-card{
            background:#fffdf9;border:1px solid #e1e8de;border-radius:var(--radius);
            box-shadow:var(--shadow-sm);overflow:hidden;
        }
        .cover-placeholder{
            min-height:190px;background:
                linear-gradient(135deg,rgba(199,243,106,.22),transparent 48%),
                linear-gradient(120deg,#283b30,#142019);
            display:flex;align-items:flex-end;padding:26px;color:#dcebd7;
            position:relative;overflow:hidden;
        }
        .cover-placeholder:after{
            content:"";position:absolute;width:210px;height:210px;border:34px solid rgba(255,128,101,.35);
            border-radius:50%;right:55px;top:-95px;
        }
        .cover-placeholder strong{position:relative;z-index:1;font-size:14px;font-weight:700}
        .article-body{padding:42px 52px 48px;color:#344239;line-height:1.9}
        .article-body h2,.article-body h3,.article-body h4{
            color:var(--dark-text);line-height:1.4;letter-spacing:-.025em;margin:34px 0 15px;
        }
        .article-body h2{font-size:28px;border-left:4px solid var(--coral);padding-left:14px}
        .article-body h3{font-size:21px}
        .article-body p{margin:0 0 20px}
        .article-body ul,.article-body ol{padding-left:25px;margin:0 0 22px}
        .article-body li{margin:7px 0}
        .article-body blockquote{
            margin:28px 0;padding:20px 24px;background:var(--paper);
            border-left:4px solid var(--lime-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
            color:#536358;
        }
        .article-body img{border-radius:var(--radius-sm);margin:25px auto}
        .article-body table{width:100%;border-collapse:collapse;margin:25px 0;font-size:14px}
        .article-body th,.article-body td{padding:12px 14px;border:1px solid #dfe7dc;text-align:left}
        .article-body th{background:var(--paper-2);color:var(--dark-text)}
        .article-body a{color:#078d87;text-decoration:underline;text-underline-offset:3px}
        .empty-state{padding:65px 30px;text-align:center}
        .empty-state h2{margin:0 0 9px;color:var(--dark-text)}
        .empty-state p{color:var(--dark-muted);margin:0 0 24px}
        .side-stack{display:grid;gap:18px;position:sticky;top:104px}
        .side-card{
            background:#fffdf9;border:1px solid #dfe8dc;border-radius:var(--radius-sm);
            padding:23px;box-shadow:var(--shadow-sm);
        }
        .side-card.dark{background:var(--ink-2);color:#fff;border-color:transparent}
        .side-card h3{font-size:18px;margin:0 0 13px;letter-spacing:-.025em}
        .side-card p{font-size:13px;color:var(--dark-muted);margin:0 0 17px}
        .side-card.dark p{color:#a9b8aa}
        .side-links{display:grid;gap:8px}
        .side-links a{
            padding:11px 12px;border-radius:9px;background:var(--paper);
            font-size:13px;display:flex;justify-content:space-between;
            transition:.2s;
        }
        .side-links a:hover{background:#e5f3d5;color:#4f7e21;transform:translateX(3px)}
        .tag{display:inline-flex;padding:4px 9px;border-radius:6px;background:#fff0eb;color:#bd4a35;font-size:11px;font-weight:800}
        .article-footer{
            border-top:1px solid var(--dark-line);margin-top:35px;padding-top:22px;
            display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;
        }
        .article-footer a{font-size:13px;color:#5d6e62;text-decoration:none}
        .article-footer a:hover{color:#c6533c}
        .cta-band{background:var(--coral);color:#fff;padding:50px 0}
        .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
        .cta-inner h2{margin:0 0 7px;font-size:30px;letter-spacing:-.04em}
        .cta-inner p{margin:0;color:#ffe4de;font-size:14px}
        .footer{background:var(--ink-2);color:#eaf1e7;padding:58px 0 22px}
        .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.25fr;gap:35px}
        .footer .logo strong,.footer .logo span{color:#fff}
        .footer .logo{min-width:0;margin-bottom:15px}
        .footer p{color:#a7b6a8;font-size:13px;margin:0;line-height:1.8}
        .footer h3{font-size:14px;margin:3px 0 15px;color:var(--lime)}
        .footer-grid>div:not(:first-child) a{display:block;color:#b9c6ba;font-size:13px;margin:7px 0;transition:.2s}
        .footer-grid>div:not(:first-child) a:hover{color:var(--lime);transform:translateX(3px)}
        .footer-bottom{
            border-top:1px solid var(--line);margin-top:42px;padding-top:18px;
            display:flex;justify-content:space-between;gap:15px;color:#849487;font-size:12px;
        }
        @media(max-width:1024px){
            .navbar{gap:14px}.logo{min-width:170px}
            .nav a{padding:8px 8px;font-size:13px}
            .reading-layout{grid-template-columns:minmax(0,1fr) 270px;gap:25px}
            .article-body{padding:34px 35px}
        }
        @media(max-width:768px){
            .container{width:min(var(--container),calc(100% - 32px))}
            .navbar{height:68px}
            .nav{
                display:none;position:absolute;left:16px;right:16px;top:76px;
                padding:12px;background:#fffdf9;border:1px solid #dfe8dc;
                border-radius:14px;box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch;
            }
            .nav.open{display:flex}
            .nav a{padding:12px 14px}
            .nav-actions .btn-outline{display:none}
            .menu-toggle{display:block}
            .article-hero{padding:43px 0 48px}
            .article-hero h1{font-size:36px}
            .reading-layout{display:block;padding:38px 0 60px}
            .side-stack{position:static;margin-top:24px;grid-template-columns:1fr 1fr}
            .cta-inner{align-items:flex-start;flex-direction:column}
            .footer-grid{grid-template-columns:1fr 1fr}
        }
        @media(max-width:520px){
            .notice-bar{font-size:11px}
            .logo small{display:none}.logo{min-width:auto;flex:1}
            .logo strong{font-size:19px}
            .article-hero h1{font-size:30px}
            .breadcrumb .current{max-width:220px}
            .article-body{padding:27px 21px 32px;font-size:15px}
            .article-body h2{font-size:23px}
            .cover-placeholder{min-height:145px;padding:20px}
            .side-stack{grid-template-columns:1fr}
            .footer-grid{grid-template-columns:1fr;gap:25px}
            .footer-bottom{display:block;line-height:2}
            .footer-bottom span{display:block}
            .footer-bottom span+span{margin-top:5px}
        }

/* roulang page: category1 */
:root{
      --ink:#20252b;
      --ink-soft:#68717b;
      --paper:#f6f3ef;
      --surface:#fffdf9;
      --line:#e7e0d8;
      --coral:#f0644b;
      --coral-dark:#d94c36;
      --teal:#14a7a0;
      --teal-dark:#087f7a;
      --sun:#f4bc57;
      --night:#242a31;
      --night-2:#303942;
      --white:#fff;
      --radius-lg:24px;
      --radius-md:16px;
      --radius-sm:10px;
      --shadow:0 16px 45px rgba(37,35,32,.09);
      --shadow-sm:0 7px 20px rgba(37,35,32,.07);
      --max:1200px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-decoration:none}
    a:focus,button:focus,input:focus,select:focus{outline:3px solid rgba(20,167,160,.3);outline-offset:3px}
    img{display:block;max-width:100%}
    button,input,select{font:inherit}
    button{border:0;cursor:pointer}
    .container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
    .notice{height:34px;background:var(--night);color:#dfe8e5;font-size:12px;display:flex;align-items:center}
    .notice .container{display:flex;justify-content:space-between;align-items:center}
    .notice strong{color:var(--sun);font-weight:700}
    .site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}
    .navbar{height:76px;display:flex;align-items:center;gap:28px}
    .logo{display:flex;align-items:center;gap:11px;min-width:196px}
    .logo-mark{width:37px;height:37px;border-radius:12px;background:var(--coral);position:relative;transform:rotate(-8deg)}
    .logo-mark:before,.logo-mark:after{content:"";position:absolute;background:var(--white);border-radius:5px}
    .logo-mark:before{width:18px;height:6px;left:9px;top:10px;transform:rotate(35deg)}
    .logo-mark:after{width:18px;height:6px;left:9px;top:21px;transform:rotate(-35deg)}
    .logo span{font-size:21px;font-weight:800;letter-spacing:-.04em}
    .nav{display:flex;align-items:center;gap:5px;flex:1}
    .nav a{padding:9px 13px;border-radius:9px;font-size:14px;color:#505861;transition:.2s}
    .nav a:hover,.nav a:focus,.nav a.active{color:var(--coral-dark);background:#fff0eb;outline:none}
    .nav-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:10px;font-weight:700;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s}
    .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(30,30,30,.14)}
    .btn-primary{background:var(--coral);color:#fff}
    .btn-primary:hover{background:var(--coral-dark)}
    .btn-dark{background:var(--night);color:#fff}
    .btn-outline{border:1px solid var(--line);background:var(--surface);color:var(--ink)}
    .menu-toggle{display:none;background:transparent;color:var(--ink);font-size:27px;width:42px;height:42px}
    .page-hero{background:var(--night);color:#fff;padding:58px 0 64px;position:relative;overflow:hidden}
    .page-hero:after{content:"";position:absolute;width:420px;height:420px;border:70px solid rgba(20,167,160,.24);border-radius:50%;right:-110px;top:-170px}
    .page-hero .container{position:relative;z-index:1}
    .breadcrumb{display:flex;gap:9px;align-items:center;color:#aeb9ba;font-size:13px;margin-bottom:32px}
    .breadcrumb a:hover{color:var(--lime)}
    .page-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}
    .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--coral);font-weight:800;font-size:12px;letter-spacing:.1em}
    .eyebrow:before,.section-kicker:before{content:"";width:22px;height:3px;border-radius:4px;background:currentColor}
    .page-hero h1{font-size:clamp(38px,5vw,62px);line-height:1.16;letter-spacing:-.055em;margin:17px 0 18px}
    .page-hero h1 em{font-style:normal;color:#c7f36a}
    .page-hero p{max-width:620px;color:#c0cbca;font-size:17px;margin:0}
    .hero-status{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);border-radius:18px;padding:20px}
    .status-heading{display:flex;justify-content:space-between;align-items:center;color:#dfe8e5;font-size:13px;margin-bottom:18px}
    .status-dot{display:inline-flex;align-items:center;gap:7px;color:#c7f36a;font-weight:700}
    .status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:#c7f36a}
    .status-line{height:7px;background:#46514f;border-radius:10px;overflow:hidden;margin:13px 0}
    .status-line span{display:block;width:62%;height:100%;background:var(--teal);border-radius:10px}
    .status-foot{display:flex;justify-content:space-between;color:#9eacaa;font-size:12px}
    .section{padding:84px 0}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}
    .section-head h2{font-size:clamp(27px,3vw,39px);line-height:1.25;letter-spacing:-.04em;margin:10px 0 0}
    .section-head p{color:var(--ink-soft);max-width:440px;font-size:14px;margin:0}
    .filter-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:18px;box-shadow:var(--shadow-sm);display:grid;grid-template-columns:1.2fr .8fr .8fr 1.1fr auto;gap:12px;margin-bottom:28px}
    .field label{display:block;font-size:12px;color:var(--ink-soft);font-weight:700;margin:0 0 5px 2px}
    .field input,.field select{width:100%;height:43px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 12px;color:var(--ink)}
    .filter-panel .btn{align-self:end;height:43px}
    .schedule-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
    .schedule-header{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
    .schedule-header h3{font-size:18px;margin:0}
    .schedule-header span{font-size:13px;color:var(--ink-soft)}
    .event-row{display:grid;grid-template-columns:120px 1fr 150px 115px;gap:20px;align-items:center;padding:23px 24px;border-bottom:1px solid var(--line);transition:.2s}
    .event-row:last-child{border-bottom:0}
    .event-row:hover{background:#fff8f4}
    .event-time strong{display:block;font-size:20px;line-height:1.2}
    .event-time small{color:var(--ink-soft);font-size:12px}
    .event-info h3{font-size:17px;margin:0 0 5px}
    .event-info p{font-size:13px;color:var(--ink-soft);margin:0}
    .event-type{display:inline-flex;color:var(--teal-dark);background:#e7f7f4;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:700;margin-bottom:7px}
    .badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:5px;font-size:11px;font-weight:700}
    .badge-live{color:#c44431;background:#fff0eb}
    .badge-soon{color:#a15d08;background:#fff4dc}
    .badge-end{color:#68717b;background:#eef0ef}
    .event-action{text-align:right}
    .event-action .btn{min-height:38px;padding:0 14px;font-size:12px}
    .timeline-note{padding:17px 24px;background:#f9f6f1;color:var(--ink-soft);font-size:13px}
    .split-section{background:var(--surface)}
    .watch-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
    .watch-card{padding:29px;border-radius:var(--radius-lg);border:1px solid var(--line);background:#fffdf9;min-height:235px;position:relative;overflow:hidden}
    .watch-card.dark{background:var(--night);color:#fff;border-color:var(--night)}
    .watch-card.teal{background:#e5f5f1;border-color:#d2ebe4}
    .watch-card h3{font-size:23px;margin:15px 0 9px}
    .watch-card p{font-size:14px;color:var(--ink-soft);max-width:430px}
    .dark p{color:#bdc8c7}
    .watch-icon{width:44px;height:44px;border-radius:13px;background:var(--coral);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:800}
    .watch-card.teal .watch-icon{background:var(--teal);color:#fff}
    .watch-card.dark .watch-icon{background:#c7f36a;color:var(--night)}
    .watch-card a{font-size:13px;font-weight:800;color:var(--coral-dark)}
    .info-band{display:grid;grid-template-columns:1fr 1.35fr;gap:44px;align-items:center}
    .info-band h2{font-size:clamp(28px,3vw,40px);line-height:1.25;margin:12px 0}
    .info-band p{color:var(--ink-soft);font-size:15px}
    .steps{display:grid;gap:12px}
    .step{display:flex;gap:16px;padding:17px 19px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}
    .step-num{width:30px;height:30px;border-radius:50%;background:var(--coral);color:#fff;display:grid;place-items:center;font-weight:800;flex:none}
    .step strong{display:block;font-size:15px}
    .step span{display:block;font-size:13px;color:var(--ink-soft)}
    .download-cta{background:var(--teal);color:#fff;border-radius:var(--radius-lg);padding:40px 44px;display:flex;align-items:center;justify-content:space-between;gap:30px;overflow:hidden}
    .download-cta h2{font-size:32px;margin:0 0 9px}
    .download-cta p{color:#d7efea;margin:0;font-size:14px}
    .download-cta .btn{background:#c7f36a;color:#1c2a23}
    .download-cta .btn:hover{background:#e0ffa0}
    .faq{background:var(--surface)}
    .faq-list{max-width:850px;margin:0 auto;border-top:1px solid var(--line)}
    .faq-item{border-bottom:1px solid var(--line)}
    .faq-item summary{list-style:none;cursor:pointer;padding:21px 4px;font-size:16px;font-weight:800;display:flex;justify-content:space-between;gap:20px}
    .faq-item summary::-webkit-details-marker{display:none}
    .faq-item summary:after{content:"+";font-size:24px;font-weight:400;color:var(--coral)}
    .faq-item[open] summary:after{content:"−"}
    .faq-answer{color:var(--ink-soft);font-size:14px;padding:0 35px 22px 4px}
    .footer{background:var(--night);color:#fff;padding:58px 0 22px}
    .footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.2fr;gap:35px}
    .footer .logo{margin-bottom:17px}
    .footer .logo span{color:#fff}
    .footer p{color:#aeb8b8;font-size:13px;margin:0;max-width:260px}
    .footer h3{font-size:14px;margin:4px 0 15px}
    .footer-grid>div>a:not(.logo){display:block;color:#abb6b5;font-size:13px;margin:7px 0;transition:.2s}
    .footer-grid>div>a:not(.logo):hover{color:#c7f36a;transform:translateX(3px)}
    .footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:43px;padding-top:18px;display:flex;justify-content:space-between;color:#8f9a99;font-size:12px}
    @media(max-width:1024px){
      .nav{gap:0}.nav a{padding-left:9px;padding-right:9px}.logo{min-width:165px}
      .filter-panel{grid-template-columns:1fr 1fr 1fr}.filter-panel .field:first-child{grid-column:span 2}
      .filter-panel .btn{grid-column:span 1}
      .event-row{grid-template-columns:95px 1fr 120px 100px;gap:13px}
    }
    @media(max-width:768px){
      .container{width:min(var(--max),calc(100% - 32px))}
      .notice{height:auto;padding:7px 0}.notice .container span:last-child{display:none}
      .navbar{height:68px;gap:10px}.logo{flex:1;min-width:0}.logo span{font-size:19px}
      .nav{display:none;position:absolute;left:16px;right:16px;top:68px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
      .nav.open{display:flex}.nav a{padding:12px 14px}
      .nav-actions .btn-outline{display:none}.menu-toggle{display:block}
      .page-hero{padding:40px 0 45px}.page-hero-grid{grid-template-columns:1fr;gap:30px}.page-hero h1{font-size:42px}
      .section{padding:60px 0}.section-head{display:block}.section-head p{margin-top:13px}
      .filter-panel{grid-template-columns:1fr 1fr}.filter-panel .field:first-child{grid-column:span 2}.filter-panel .btn{grid-column:span 2}
      .event-row{grid-template-columns:82px 1fr;gap:8px 14px;padding:19px 17px}.event-status{grid-column:2}.event-action{grid-column:2;text-align:left;margin-top:3px}
      .watch-grid,.info-band{grid-template-columns:1fr}.download-cta{display:block;padding:30px 25px}.download-cta .btn{margin-top:22px}
      .footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}
    }
    @media(max-width:520px){
      .nav-actions .btn-primary{padding:0 12px;font-size:12px}.page-hero h1{font-size:35px}
      .filter-panel{display:block}.filter-panel .field{margin-bottom:11px}.filter-panel .btn{width:100%;margin-top:3px}
      .schedule-header{display:block;padding:18px}.schedule-header span{display:block;margin-top:5px}
      .event-time strong{font-size:18px}.event-info h3{font-size:15px}.event-info p{font-size:12px}
      .footer-grid{grid-template-columns:1fr}.footer{padding-top:42px}
    }

/* roulang page: category2 */
:root{
            --ink:#101713;
            --ink-2:#16221c;
            --panel:#1c2a23;
            --panel-2:#223329;
            --lime:#c7f36a;
            --lime-2:#9fda42;
            --coral:#ff8065;
            --paper:#f3f5ed;
            --paper-2:#e8ede2;
            --text:#eef4e9;
            --muted:#9caea1;
            --dark-text:#203027;
            --dark-muted:#647369;
            --line:rgba(221,242,214,.14);
            --dark-line:rgba(27,55,39,.13);
            --radius:22px;
            --radius-sm:14px;
            --shadow:0 18px 50px rgba(3,12,7,.22);
            --shadow-sm:0 7px 20px rgba(37,55,40,.09);
            --container:1180px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--paper);color:var(--dark-text);font-family:"Noto Sans SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input{font:inherit}
        button{border:0;cursor:pointer}
        .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
        .notice{background:var(--ink);color:#cbd8ca;font-size:13px;padding:8px 0}
        .notice-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}
        .notice strong{color:var(--lime);font-weight:800}
        .site-header{position:sticky;top:0;z-index:50;background:rgba(243,245,237,.94);border-bottom:1px solid var(--dark-line);backdrop-filter:blur(15px)}
        .navbar{height:76px;display:flex;align-items:center;gap:28px}
        .logo{display:flex;align-items:center;gap:11px;min-width:196px;font-weight:800}
        .logo-mark{width:37px;height:37px;border-radius:12px;background:var(--coral);position:relative;transform:rotate(-8deg);flex:none}
        .logo-mark:before,.logo-mark:after{content:"";position:absolute;background:#fff;border-radius:5px}
        .logo-mark:before{width:18px;height:6px;left:9px;top:10px;transform:rotate(35deg)}
        .logo-mark:after{width:18px;height:6px;left:9px;top:21px;transform:rotate(-35deg)}
        .logo span{font-size:21px;letter-spacing:-.04em}
        .nav{display:flex;align-items:center;gap:5px;flex:1}
        .nav a{padding:9px 13px;border-radius:9px;font-size:14px;color:#526057;transition:.2s}
        .nav a:hover,.nav a:focus,.nav a.active{color:#d9513d;background:#ffebe5;outline:none}
        .nav-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:11px;font-weight:800;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s}
        .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(30,50,35,.14)}
        .btn:focus{outline:3px solid rgba(20,167,160,.35);outline-offset:2px}
        .btn-primary{background:var(--coral);color:#fff}
        .btn-primary:hover{background:#e76049}
        .btn-dark{background:var(--ink);color:#fff}
        .btn-dark:hover{background:#26372c}
        .btn-light{background:var(--lime);color:#1d2a20}
        .btn-light:hover{background:#d7fa83}
        .btn-outline{border:1px solid var(--dark-line);background:transparent;color:var(--dark-text)}
        .menu-toggle{display:none;background:transparent;color:var(--ink);font-size:27px;width:42px;height:42px}
        .page-hero{background:var(--ink);color:var(--text);padding:64px 0 70px;position:relative;overflow:hidden}
        .page-hero:after{content:"";position:absolute;width:430px;height:430px;border:72px solid rgba(199,243,106,.09);border-radius:50%;right:-120px;top:-190px}
        .page-hero:before{content:"";position:absolute;width:220px;height:220px;background:rgba(255,128,101,.12);border-radius:50%;left:39%;bottom:-150px}
        .hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}
        .breadcrumb{display:flex;gap:10px;align-items:center;color:#9caea1;font-size:13px;margin-bottom:22px}
        .breadcrumb a:hover{color:var(--lime)}
        .breadcrumb span{color:#65766a}
        .eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--lime);font-weight:800;font-size:12px;letter-spacing:.12em}
        .eyebrow:before{content:"";width:22px;height:3px;border-radius:4px;background:var(--coral)}
        .page-hero h1{font-size:clamp(36px,5vw,62px);line-height:1.18;letter-spacing:-.055em;margin:17px 0 20px;max-width:680px}
        .page-hero h1 em{font-style:normal;color:var(--lime)}
        .hero-copy{max-width:600px;color:#b8c8ba;font-size:17px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}
        .member-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:var(--shadow)}
        .panel-top{display:flex;justify-content:space-between;align-items:center;color:#dfeadd;font-size:13px;margin-bottom:27px}
        .status-dot{display:inline-flex;align-items:center;gap:7px;color:var(--lime)}
        .status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime)}
        .level-line{height:9px;background:#34463a;border-radius:20px;overflow:hidden;margin:15px 0 9px}
        .level-line i{display:block;width:62%;height:100%;background:var(--lime);border-radius:20px}
        .panel-label{color:#9caea1;font-size:13px}
        .panel-level{display:flex;align-items:end;justify-content:space-between}
        .panel-level strong{font-size:28px;color:#fff}
        .panel-level span{font-size:12px;color:#a8b8aa}
        .benefit-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}
        .benefit-mini div{padding:12px 10px;background:var(--panel-2);border-radius:12px;color:#dce9da;font-size:12px}
        .benefit-mini b{display:block;color:var(--lime);font-size:18px;margin-bottom:2px}
        .section{padding:86px 0}
        .section-light{background:var(--surface)}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}
        .section-kicker{color:#d9513d;font-weight:800;font-size:12px;letter-spacing:.12em}
        .section-kicker:before{content:"";display:inline-block;width:22px;height:3px;border-radius:4px;background:var(--coral);vertical-align:middle;margin-right:9px}
        .section-head h2{font-size:clamp(27px,3vw,40px);line-height:1.25;letter-spacing:-.04em;margin:10px 0 0}
        .section-head p{color:var(--dark-muted);max-width:450px;font-size:14px;margin:0}
        .benefit-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
        .benefit-board{background:var(--ink);color:var(--text);border-radius:var(--radius);padding:30px}
        .benefit-board h3{font-size:25px;margin:0 0 8px}
        .benefit-board>p{color:var(--muted);margin:0 0 25px;font-size:14px}
        .benefit-row{display:grid;grid-template-columns:45px 1fr auto;gap:16px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}
        .benefit-icon{width:40px;height:40px;border-radius:12px;background:#2b3c30;color:var(--lime);display:grid;place-items:center;font-weight:900;font-size:20px}
        .benefit-row h4{font-size:16px;margin:0 0 2px}
        .benefit-row p{font-size:13px;color:var(--muted);margin:0}
        .benefit-row a{color:var(--lime);font-size:13px;font-weight:800}
        .tier-stack{display:flex;flex-direction:column;gap:14px}
        .tier-card{background:var(--paper);border:1px solid var(--dark-line);border-radius:var(--radius-sm);padding:22px;transition:.2s}
        .tier-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm);border-color:#b4c79d}
        .tier-card.featured{background:#e5f2cf;border-color:#c7f36a}
        .tier-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
        .tier-card h3{font-size:20px;margin:0}
        .tier-tag{font-size:11px;color:#2d672d;background:var(--lime);padding:4px 8px;border-radius:6px;font-weight:800}
        .tier-card p{color:var(--dark-muted);font-size:13px;margin:0}
        .service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
        .service-card{background:var(--paper);border:1px solid var(--dark-line);border-radius:var(--radius-sm);padding:23px;min-height:180px;transition:.2s}
        .service-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-3px)}
        .service-card .number{color:var(--coral);font-weight:900;font-size:13px}
        .service-card h3{font-size:19px;margin:15px 0 7px}
        .service-card p{color:var(--dark-muted);font-size:14px;margin:0}
        .guide{background:var(--paper-2)}
        .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--dark-line)}
        .step{padding:25px 22px 12px 0;border-right:1px solid var(--dark-line);margin-right:22px}
        .step:last-child{border-right:0;margin-right:0}
        .step b{display:grid;place-items:center;width:34px;height:34px;background:var(--coral);color:#fff;border-radius:10px;margin-bottom:16px}
        .step h3{font-size:17px;margin:0 0 7px}
        .step p{font-size:13px;color:var(--dark-muted);margin:0}
        .download{background:var(--ink);color:var(--text);overflow:hidden}
        .download-grid{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:50px}
        .download h2{font-size:clamp(28px,4vw,44px);line-height:1.25;margin:13px 0}
        .download p{color:var(--muted);max-width:520px}
        .download-tools{display:flex;align-items:center;gap:18px;margin-top:25px;flex-wrap:wrap}
        .qr{width:88px;height:88px;border:1px dashed #899b89;border-radius:10px;display:grid;place-items:center;color:#9caea1;font-size:11px;text-align:center}
        .phone-row{display:flex;justify-content:center;gap:16px;align-items:end}
        .phone{width:145px;height:270px;background:#dcebd0;border:7px solid #354a3a;border-radius:24px;padding:15px 10px;color:#24352a;box-shadow:var(--shadow)}
        .phone:first-child{height:230px;background:#ffd3c8}
        .phone-top{font-size:11px;font-weight:800;padding-bottom:16px;border-bottom:1px solid rgba(32,48,39,.2)}
        .phone-line{height:9px;background:rgba(32,48,39,.16);border-radius:8px;margin:13px 0}
        .phone-line.short{width:62%}
        .phone-button{height:33px;border-radius:9px;background:var(--coral);margin-top:20px}
        .faq-list{max-width:850px;margin:0 auto;border-top:1px solid var(--dark-line)}
        .faq-item{border-bottom:1px solid var(--dark-line)}
        .faq-question{width:100%;background:transparent;text-align:left;padding:21px 5px;display:flex;justify-content:space-between;align-items:center;color:var(--dark-text);font-weight:800}
        .faq-question span:last-child{font-size:23px;color:var(--coral);transition:.2s}
        .faq-answer{display:none;color:var(--dark-muted);font-size:14px;padding:0 45px 21px 5px}
        .faq-item.open .faq-answer{display:block}
        .faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
        .cta{padding:64px 0;background:#dff0c9}
        .cta-box{display:flex;align-items:center;justify-content:space-between;gap:25px}
        .cta h2{font-size:clamp(26px,3vw,37px);margin:0 0 7px}
        .cta p{color:var(--dark-muted);margin:0}
        .cta-actions{display:flex;gap:10px;flex-wrap:wrap}
        .footer{background:var(--ink);color:#d9e4d7;padding:57px 0 20px}
        .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:35px}
        .footer .logo{margin-bottom:14px}
        .footer .logo span{color:#fff}
        .footer p{color:var(--muted);font-size:13px;max-width:260px;margin:0}
        .footer h3{font-size:14px;color:#fff;margin:2px 0 15px}
        .footer-grid>div>a:not(.logo){display:block;color:var(--muted);font-size:13px;margin:8px 0;transition:.2s}
        .footer-grid>div>a:not(.logo):hover{color:var(--lime)}
        .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:40px;padding-top:18px;color:#7f9182;font-size:12px}
        @media(max-width:1024px){
            .nav{gap:0}.nav a{padding:8px 8px;font-size:13px}.logo{min-width:165px}
            .hero-inner,.benefit-grid,.download-grid{grid-template-columns:1fr 1fr;gap:28px}
            .service-grid{grid-template-columns:repeat(2,1fr)}
        }
        @media(max-width:768px){
            .container{width:min(100% - 32px,var(--container))}
            .navbar{height:68px;gap:10px}.nav-actions{margin-left:auto}.nav-actions .btn-dark{display:none}
            .nav{display:none;position:absolute;left:16px;right:16px;top:74px;background:var(--surface);border:1px solid var(--dark-line);border-radius:15px;padding:10px;box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch}
            .nav.open{display:flex}.nav a{padding:12px 14px}.menu-toggle{display:block}
            .notice-inner{justify-content:center;text-align:center}.notice-inner span{display:none}
            .page-hero{padding:46px 0 52px}.hero-inner,.benefit-grid,.download-grid{grid-template-columns:1fr}
            .member-panel{max-width:560px}.section{padding:65px 0}
            .section-head{display:block}.section-head p{margin-top:12px}
            .steps{grid-template-columns:repeat(2,1fr);gap:15px}.step{border-right:0;margin:0;padding-right:10px}
            .cta-box{display:block}.cta-actions{margin-top:22px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:28px}
        }
        @media(max-width:520px){
            .logo{min-width:0}.logo span{font-size:18px}.logo-mark{width:32px;height:32px}
            .page-hero h1{font-size:36px}.hero-copy{font-size:15px}.hero-actions .btn{width:100%}
            .benefit-board{padding:22px 18px}.benefit-row{grid-template-columns:38px 1fr;gap:12px}.benefit-row a{grid-column:2}
            .benefit-mini{gap:6px}.benefit-mini div{font-size:11px;padding:10px 7px}
            .service-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr}
            .phone-row{justify-content:flex-start;overflow-x:auto;padding:8px 5px 15px}
            .phone{flex:none}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:6px 0}
        }

/* roulang page: category3 */
:root{
        --ink:#20252b;
        --ink-soft:#68717b;
        --paper:#f6f3ef;
        --surface:#fffdf9;
        --line:#e7e0d8;
        --coral:#f0644b;
        --coral-dark:#d94c36;
        --teal:#14a7a0;
        --teal-dark:#087f7a;
        --sun:#f4bc57;
        --night:#242a31;
        --night-2:#303942;
        --white:#fff;
        --radius-lg:24px;
        --radius-md:16px;
        --radius-sm:10px;
        --shadow:0 16px 45px rgba(37,35,32,.09);
        --shadow-sm:0 7px 20px rgba(37,35,32,.07);
        --max:1200px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;font-family:"Noto Sans SC","Microsoft YaHei",Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input,select{font:inherit}
    button{border:0;cursor:pointer}
    .container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
    .notice{background:var(--night);color:#dce5e1;font-size:13px;padding:8px 0}
    .notice-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}
    .notice strong{color:#c7f36a;margin-right:10px}
    .site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}
    .navbar{height:76px;display:flex;align-items:center;gap:28px}
    .logo{display:flex;align-items:center;gap:11px;min-width:196px}
    .logo-mark{width:37px;height:37px;border-radius:12px;background:var(--coral);position:relative;transform:rotate(-8deg)}
    .logo-mark:before,.logo-mark:after{content:"";position:absolute;background:var(--white);border-radius:5px}
    .logo-mark:before{width:18px;height:6px;left:9px;top:10px;transform:rotate(35deg)}
    .logo-mark:after{width:18px;height:6px;left:9px;top:21px;transform:rotate(-35deg)}
    .logo span{font-size:21px;font-weight:800;letter-spacing:-.04em}
    .nav{display:flex;align-items:center;gap:5px;flex:1}
    .nav a{padding:9px 13px;border-radius:9px;font-size:14px;color:#505861;transition:.2s}
    .nav a:hover,.nav a:focus,.nav a.active{color:var(--coral-dark);background:#fff0eb;outline:none}
    .nav-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:10px;font-weight:700;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s}
    .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(30,30,30,.14)}
    .btn:focus{outline:3px solid rgba(20,167,160,.35);outline-offset:2px}
    .btn-primary{background:var(--coral);color:#fff}
    .btn-primary:hover{background:var(--coral-dark)}
    .btn-dark{background:var(--night);color:#fff}
    .btn-outline{border:1px solid var(--line);background:var(--surface);color:var(--ink)}
    .menu-toggle{display:none;background:transparent;color:var(--ink);font-size:27px;width:42px;height:42px}
    .page-hero{padding:54px 0 64px;background:var(--paper)}
    .breadcrumb{font-size:13px;color:var(--ink-soft);margin-bottom:34px}
    .breadcrumb a:hover{color:var(--coral-dark)}
    .breadcrumb span{margin:0 8px;color:#a9aaa5}
    .hero-panel{display:grid;grid-template-columns:1fr .9fr;gap:55px;align-items:center}
    .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--coral-dark);font-weight:800;font-size:12px;letter-spacing:.12em}
    .eyebrow:before,.section-kicker:before{content:"";width:22px;height:3px;border-radius:4px;background:var(--coral)}
    h1,h2,h3,h4,p{margin-top:0}
    h1{font-size:clamp(38px,5vw,62px);line-height:1.18;letter-spacing:-.055em;margin:18px 0}
    h1 em{font-style:normal;color:var(--coral)}
    .hero-copy{max-width:570px;color:var(--ink-soft);font-size:17px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
    .interaction-board{background:var(--night);border-radius:var(--radius-lg);padding:25px;color:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}
    .interaction-board:after{content:"";position:absolute;width:190px;height:190px;border:28px solid rgba(20,167,160,.35);border-radius:50%;right:-70px;top:-70px}
    .board-top,.board-row,.board-footer{position:relative;z-index:1}
    .board-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:18px}
    .board-title{font-size:18px;font-weight:800}
    .status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#c7f36a;margin-right:7px}
    .board-row{display:flex;justify-content:space-between;align-items:center;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.1)}
    .board-row small{display:block;color:#9eaaa5;font-size:12px}
    .board-row strong{font-size:15px}
    .board-icon{width:42px;height:42px;border-radius:13px;background:#34443a;display:grid;place-items:center;color:#c7f36a;font-weight:800}
    .board-footer{display:flex;gap:10px;margin-top:21px}
    .board-pill{padding:7px 11px;border-radius:8px;background:#324038;color:#dce8d9;font-size:12px}
    .section{padding:82px 0}
    .section-light{background:var(--surface)}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}
    .section-head h2{font-size:clamp(28px,3vw,40px);line-height:1.25;letter-spacing:-.04em;margin:10px 0 0}
    .section-head p{color:var(--ink-soft);max-width:450px;font-size:14px;margin-bottom:0}
    .flow{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
    .feature-interaction{background:var(--night);color:#fff;border-radius:var(--radius-lg);padding:31px;min-height:320px;position:relative;overflow:hidden}
    .feature-interaction:before{content:"";position:absolute;right:-80px;bottom:-100px;width:330px;height:330px;border:42px solid rgba(240,100,75,.8);border-radius:50%}
    .feature-interaction>*{position:relative;z-index:1}
    .feature-interaction h3{font-size:29px;max-width:400px;margin:30px 0 14px;line-height:1.35}
    .feature-interaction p{color:#b8c5c0;max-width:430px}
    .tag{display:inline-flex;padding:5px 10px;border-radius:6px;font-size:12px;font-weight:800}
    .tag-green{background:#e4f5c8;color:#41711c}
    .tag-orange{background:#fff0eb;color:#bf4934}
    .tag-gray{background:#eef0ed;color:#6b746d}
    .activity-list{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
    .activity-list h3{font-size:18px;padding:24px 24px 12px;margin:0}
    .activity-item{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:18px 24px;border-top:1px solid var(--line);transition:.2s}
    .activity-item:hover{background:#fff8f4}
    .activity-mark{width:40px;height:40px;border-radius:12px;background:#e7f6f3;color:var(--teal-dark);display:grid;place-items:center;font-weight:800}
    .activity-item h4{font-size:15px;margin:0 0 3px}
    .activity-item p{font-size:12px;color:var(--ink-soft);margin:0}
    .activity-state{font-size:12px;color:var(--teal-dark);white-space:nowrap}
    .feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
    .strip-card{padding:23px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);min-height:150px}
    .strip-card .number{color:var(--coral);font-size:27px;font-weight:900;line-height:1}
    .strip-card h3{font-size:17px;margin:13px 0 5px}
    .strip-card p{font-size:13px;color:var(--ink-soft);margin:0}
    .guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .guide-card{padding:25px 21px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);transition:.2s}
    .guide-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:#c9d9c9}
    .guide-card b{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--lime);color:#23301e;margin-bottom:17px}
    .guide-card h3{font-size:17px;margin-bottom:7px}
    .guide-card p{font-size:13px;color:var(--ink-soft);margin:0}
    .app-section{background:var(--night);color:#fff}
    .app-layout{display:grid;grid-template-columns:1fr .9fr;gap:60px;align-items:center}
    .app-section .section-kicker{color:#c7f36a}
    .app-section .section-kicker:before{background:#c7f36a}
    .app-section h2{font-size:clamp(29px,4vw,45px);line-height:1.25;letter-spacing:-.04em;margin:13px 0}
    .app-section p{color:#b5c2bc;max-width:510px}
    .app-tools{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
    .app-tools .btn-dark{background:#c7f36a;color:#23301e}
    .app-note{font-size:12px;color:#93a29a;margin-top:16px}
    .phone-row{display:flex;justify-content:center;gap:16px}
    .phone{width:145px;height:275px;border:7px solid #455249;border-radius:27px;background:#eef3e9;color:var(--ink);padding:13px 10px;box-shadow:var(--shadow)}
    .phone:nth-child(2){transform:translateY(28px);background:#dff1e8}
    .phone-top{height:8px;width:50px;border-radius:8px;background:#b9c7bb;margin:0 auto 19px}
    .phone h4{font-size:12px;margin:0 0 14px}
    .phone-line{height:9px;background:#c7f36a;border-radius:5px;margin:9px 0}
    .phone-box{height:66px;border-radius:11px;background:#fff;margin-top:15px;border:1px solid #dae4d7}
    .faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}
    .faq-grid h2{font-size:36px;line-height:1.3;margin:11px 0 14px}
    .faq-grid .intro{color:var(--ink-soft);font-size:14px}
    .faq-list{border-top:1px solid var(--line)}
    details{border-bottom:1px solid var(--line);padding:18px 0}
    summary{cursor:pointer;font-weight:800;list-style:none;padding-right:25px;position:relative}
    summary::-webkit-details-marker{display:none}
    summary:after{content:"+";position:absolute;right:4px;color:var(--coral);font-size:22px;top:-3px}
    details[open] summary:after{content:"−"}
    details p{color:var(--ink-soft);font-size:14px;margin:12px 25px 0 0}
    .cta{padding:34px 40px;background:#e8f0e5;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:space-between;gap:25px}
    .cta h2{font-size:27px;margin:0 0 5px}
    .cta p{color:var(--dark-muted);margin:0;font-size:14px}
    .footer{background:var(--night);color:#eef3ee;padding:55px 0 20px}
    .footer .logo span{color:#fff}
    .footer .logo-mark{background:var(--coral)}
    .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:35px}
    .footer h3{font-size:14px;margin:3px 0 14px;color:#c7f36a}
    .footer p,.footer a{display:block;color:#aebbb3;font-size:13px;margin:0 0 8px}
    .footer a:hover{color:#fff}
    .footer-grid>div:first-child p{max-width:260px;margin-top:14px}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.13);margin-top:39px;padding-top:18px;color:#89968e;font-size:12px}
    @media(max-width:1024px){
        .navbar{gap:14px}.logo{min-width:165px}.nav a{padding:8px 8px}
        .hero-panel,.app-layout{gap:32px}.guide-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:768px){
        .container{width:min(var(--max),calc(100% - 32px))}
        .notice-inner{justify-content:center}.notice-inner span{display:none}
        .navbar{height:68px}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--surface);padding:12px 16px 18px;border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch}
        .nav.open{display:flex}.nav a{padding:12px 14px}.nav-actions .btn{display:none}.menu-toggle{display:block}
        .page-hero{padding:36px 0 48px}.hero-panel,.flow,.app-layout,.faq-grid{grid-template-columns:1fr}
        h1{font-size:42px}.interaction-board{max-width:600px}
        .section{padding:60px 0}.section-head{display:block}.section-head p{margin-top:12px}
        .feature-strip{grid-template-columns:1fr}.guide-grid{grid-template-columns:repeat(2,1fr)}
        .app-layout{gap:38px}.phone-row{justify-content:flex-start;overflow:hidden;padding:0 8px 25px}
        .cta{display:block;padding:28px}.cta .btn{margin-top:20px}
        .footer-grid{grid-template-columns:repeat(2,1fr);gap:28px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}
    }
    @media(max-width:520px){
        .logo{min-width:0}.logo span{font-size:18px}.notice{font-size:12px}
        h1{font-size:36px}.hero-copy{font-size:15px}.hero-actions .btn{width:100%}
        .activity-item{grid-template-columns:40px 1fr;gap:11px;padding:16px}
        .activity-state{grid-column:2}.guide-grid{grid-template-columns:1fr}
        .feature-interaction{padding:24px}.feature-interaction h3{font-size:24px}
        .footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
    }

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
