/* roulang page: index */
:root{--berry:#a8427e;--berry-dark:#73305f;--berry-soft:#f5e7ef;--mint:#64b9a7;--ink:#302a32;--muted:#766f77;--paper:#f7f4f1;--white:#fff;--line:#e6deda;--deep:#302337;--coral:#e98981;--radius:18px;--shadow:0 14px 34px rgba(68,39,61,.09)}
    *{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}button{cursor:pointer;border:0}.container{width:min(1220px,calc(100% - 40px));margin:auto}.site-header{height:78px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;gap:34px}.logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--berry-dark);white-space:nowrap}.logo-mark{width:35px;height:35px;border-radius:12px 12px 12px 4px;background:linear-gradient(140deg,var(--berry),var(--coral));position:relative}.logo-mark:after{content:"";width:11px;height:11px;border:3px solid #fff;border-radius:50%;position:absolute;left:10px;top:9px}.logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px;line-height:1.1}.main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}.main-nav a{padding:8px 13px;border-radius:9px;font-size:14px;color:#605962;transition:.2s}.main-nav a:hover,.main-nav a.active{color:var(--berry-dark);background:var(--berry-soft)}.header-actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:11px;font-weight:700;font-size:14px;transition:.2s;border:1px solid transparent}.btn-primary{background:var(--berry);color:#fff;box-shadow:0 8px 18px rgba(168,66,126,.22)}.btn-primary:hover{background:#bd548e;transform:translateY(-2px)}.btn-light{background:#fff;border-color:var(--line);color:var(--berry-dark)}.btn-light:hover{background:var(--berry-soft)}.menu-btn{display:none;background:var(--berry-soft);color:var(--berry-dark);padding:8px 11px;border-radius:9px}.hero{padding:86px 0 72px;background:linear-gradient(115deg,#fff 0%,#fff 53%,#f1e4ec 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:68px;align-items:center}.eyebrow,.section-kicker{font-size:12px;font-weight:800;color:var(--berry);letter-spacing:1.8px;text-transform:uppercase}.hero h1{font-size:clamp(38px,5vw,70px);line-height:1.13;letter-spacing:-2px;margin:14px 0 21px;color:var(--deep)}.hero h1 span{color:var(--berry)}.hero p{font-size:18px;color:var(--muted);max-width:590px}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.hero-art{min-height:375px;position:relative}.art-panel{position:absolute;border-radius:24px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.7)}.art-main{inset:30px 8px 15px 55px;background:var(--deep);padding:28px;color:#fff;transform:rotate(3deg)}.art-main h3{font-size:25px;margin:22px 0 8px}.art-main p{color:#d8cad6;font-size:14px}.art-line{height:9px;border-radius:9px;background:#55445b;margin:14px 0}.art-line b{display:block;width:65%;height:100%;background:var(--mint);border-radius:9px}.art-orb{width:120px;height:120px;border-radius:50%;right:0;top:0;background:linear-gradient(145deg,var(--coral),var(--berry));z-index:2}.art-note{left:0;bottom:0;background:#fff;padding:19px 24px;width:190px;z-index:3}.art-note strong{font-size:26px;color:var(--berry-dark);display:block}.section{padding:82px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section h2{font-size:32px;line-height:1.25;color:var(--deep);margin-top:7px}.section-intro{color:var(--muted);max-width:560px}.quick{padding:22px 0;background:#fff;border-bottom:1px solid var(--line)}.quick-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.quick a{padding:16px 13px;text-align:center;border-right:1px solid var(--line);font-weight:700;color:var(--deep);transition:.2s}.quick a:last-child{border:0}.quick a:hover{color:var(--berry);transform:translateY(-2px)}.quick i{font-style:normal;display:block;font-size:23px;margin-bottom:3px}.feature-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px}.feature-card,.mini-card,.game-card,.event-card,.service-card,.ranking,.guide-box,.article-preview{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.feature-card{padding:32px;min-height:280px;background:linear-gradient(135deg,var(--deep),#523348);color:#fff;position:relative;overflow:hidden}.feature-card:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:rgba(233,137,129,.22);right:-50px;bottom:-90px}.feature-card h3{font-size:29px;max-width:420px;margin:15px 0 10px}.feature-card p{color:#dfd2dc;max-width:430px}.mini-stack{display:grid;gap:20px}.mini-card{padding:24px}.mini-card h3{font-size:19px;margin:10px 0 4px}.badge{display:inline-flex;border-radius:30px;background:var(--berry-soft);color:var(--berry-dark);padding:4px 10px;font-size:12px;font-weight:700}.badge.mint{background:#e1f3ee;color:#287b6c}.split{display:grid;grid-template-columns:300px 1fr;gap:28px;align-items:start}.filter{background:var(--deep);color:#fff;padding:28px;border-radius:var(--radius)}.filter h3{font-size:22px;margin-bottom:16px}.filter p{color:#cfc3ce;font-size:14px;margin-bottom:22px}.filter a{display:block;padding:11px 0;border-bottom:1px solid #55455a;color:#e8dce5}.filter a:hover{color:#fff}.game-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.game-card{padding:22px;transition:.2s}.game-card:hover,.article-preview:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(68,39,61,.14)}.game-icon{width:48px;height:48px;border-radius:14px;background:var(--berry-soft);color:var(--berry);display:grid;place-items:center;font-size:23px;float:left;margin-right:14px}.game-card h3{padding-top:3px}.game-card p{clear:both;padding-top:14px;color:var(--muted);font-size:14px}.meta{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;margin-top:15px}.timeline{border-left:2px solid #e1c6d6;padding-left:28px;display:grid;gap:22px}.event-card{padding:22px;position:relative}.event-card:before{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:var(--berry);left:-36px;top:27px;box-shadow:0 0 0 5px var(--paper)}.event-card h3{font-size:19px;margin:8px 0}.event-card p{color:var(--muted);font-size:14px}.leisure-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}.leisure-card{min-height:210px;padding:25px;border-radius:var(--radius);background:#efe5ef;border:1px solid #e4d5e1}.leisure-card:nth-child(2){background:#e1f2ec}.leisure-card:nth-child(3){background:#f8e8df}.leisure-card h3{font-size:21px;margin:34px 0 8px}.leisure-card p{font-size:14px;color:var(--muted)}.download{background:var(--deep);color:#fff;border-radius:24px;padding:44px 52px;display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:center}.download h2{color:#fff;margin:10px 0 12px}.download p{color:#d5cbd5}.points{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}.points span{color:#eee2eb;font-size:14px}.points span:before{content:"✓";color:var(--mint);font-weight:bold;margin-right:8px}.phone{border:8px solid #5b445c;border-radius:27px;background:#fff;color:var(--deep);padding:20px;margin:auto;max-width:220px;text-align:center}.phone strong{display:block;font-size:17px;margin:16px 0}.qr{width:85px;height:85px;margin:18px auto;background:repeating-linear-gradient(45deg,#342a36 0 4px,#fff 4px 8px);border:8px solid #fff}.news-layout{display:grid;grid-template-columns:210px 1fr;gap:28px}.date-rail{color:var(--berry-dark);font-weight:800;font-size:19px;padding-top:8px}.news-list{display:grid;gap:14px}.news-item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 24px;display:grid;grid-template-columns:1fr auto;gap:12px}.news-item h3{font-size:18px}.news-item p{color:var(--muted);font-size:14px;margin-top:3px}.news-item .meta{grid-column:1/-1;justify-content:flex-start;gap:18px}.notice{background:#f0e1eb;padding:24px;border-radius:var(--radius);display:flex;gap:28px;align-items:center}.notice strong{font-size:20px;color:var(--berry-dark)}.notice p{color:var(--muted);flex:1}.rank-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ranking{padding:25px}.rank-row{display:grid;grid-template-columns:35px 1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.rank-row:last-child{border:0}.rank-no{font-size:22px;color:var(--berry);font-weight:800}.rank-row small{color:var(--muted)}.guide-box{padding:28px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:25px}.step{border-top:3px solid var(--berry);padding-top:15px}.step b{font-size:24px;color:var(--berry)}.step h3{font-size:17px;margin:7px 0}.step p,.service-item p{font-size:13px;color:var(--muted)}.service-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.service-item{padding:24px;border-right:1px solid var(--line)}.service-item:last-child{border:0}.service-item strong{display:block;margin-bottom:6px}.contact{background:var(--deep);color:#fff;border-radius:24px;padding:38px;display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}.contact h2{color:#fff;margin:10px 0}.contact p{color:#d4c9d4}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form input,.contact-form textarea{background:#44344a;border:1px solid #66536a;color:#fff;padding:13px;border-radius:9px;outline:0}.contact-form textarea{grid-column:1/-1;min-height:90px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--mint);outline:2px solid rgba(100,185,167,.2)}.closing{text-align:center;padding:70px 0}.closing h2{font-size:32px;color:var(--deep);margin:10px 0}.closing p{color:var(--muted);margin-bottom:24px}.site-footer{background:var(--deep);color:#eee0ea;padding:52px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:35px}.site-footer h3{color:#fff;font-size:17px;margin-bottom:14px}.site-footer p,.site-footer a{font-size:13px;color:#c9bbc6}.site-footer a{display:block;margin:7px 0}.site-footer a:hover{color:#fff}.footer-brand{font-size:21px;font-weight:800;color:#fff!important}.footer-bottom{border-top:1px solid #514252;margin-top:38px;padding-top:18px;color:#a99ca8;font-size:12px;display:flex;justify-content:space-between}.footer-download{border:1px dashed #80627b;border-radius:14px;padding:15px;text-align:center}.footer-download .qr{width:64px;height:64px;margin:10px auto}.mobile-menu{display:none}
    @media(max-width:1024px){.main-nav{gap:0}.main-nav a{padding:8px 8px}.hero-grid{gap:35px}.download{grid-template-columns:1fr 250px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:768px){.container{width:min(100% - 30px,620px)}.site-header{height:68px}.header-inner{gap:12px}.logo{font-size:14px}.main-nav,.header-actions .btn-light{display:none}.header-actions{margin-left:auto}.menu-btn{display:block}.hero{padding:55px 0 45px}.hero-grid,.feature-grid,.split,.download,.contact{grid-template-columns:1fr}.hero-art{min-height:300px}.quick-grid{grid-template-columns:repeat(3,1fr)}.quick a{border-bottom:1px solid var(--line)}.section{padding:55px 0}.section-head{display:block}.section-intro{margin-top:10px}.game-list,.rank-grid,.leisure-grid{grid-template-columns:1fr}.news-layout{grid-template-columns:1fr;gap:12px}.date-rail{padding:0}.steps,.service-strip{grid-template-columns:repeat(2,1fr)}.service-item:nth-child(2){border-right:0}.service-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.download{padding:32px 24px}.contact{padding:28px 22px}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}}
    @media(max-width:480px){.container{width:calc(100% - 24px)}.logo small{display:none}.logo-mark{width:31px;height:31px}.hero h1{font-size:40px;letter-spacing:-1px}.hero p{font-size:16px}.hero-art{min-height:260px}.art-main{inset:25px 0 12px 30px;padding:22px}.art-main h3{font-size:21px}.art-orb{width:80px;height:80px}.quick-grid{grid-template-columns:repeat(2,1fr)}.section h2{font-size:27px}.news-item{display:block;padding:17px}.news-item .meta{margin-top:10px}.steps,.service-strip,.footer-grid,.points{grid-template-columns:1fr}.service-item{border-right:0!important;border-bottom:1px solid var(--line)}.service-item:last-child{border:0}.contact-form{grid-template-columns:1fr}.contact-form textarea{grid-column:auto}.closing{padding:52px 0}.hero-actions .btn{width:100%}}

/* roulang page: category1 */
:root{--berry:#a8427e;--berry-dark:#73305f;--berry-soft:#f5e7ef;--mint:#64b9a7;--ink:#302a32;--muted:#766f77;--paper:#f7f4f1;--white:#fff;--line:#e6deda;--deep:#302337;--coral:#e98981;--radius:18px;--shadow:0 14px 34px rgba(68,39,61,.09)}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
    a{color:inherit;text-decoration:none}
    a:focus,button:focus,input:focus,textarea:focus{outline:3px solid rgba(100,185,167,.42);outline-offset:2px}
    img{max-width:100%;display:block}
    button,input,textarea{font:inherit}
    button{cursor:pointer;border:0}
    .container{width:min(1220px,calc(100% - 40px));margin:auto}
    .site-header{height:78px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20}
    .header-inner{display:flex;align-items:center;gap:34px}
    .logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--berry-dark);white-space:nowrap}
    .logo-mark{width:35px;height:35px;border-radius:12px 12px 12px 4px;background:linear-gradient(140deg,var(--berry),var(--coral));position:relative}
    .logo-mark:after{content:"";width:11px;height:11px;border:3px solid #fff;border-radius:50%;position:absolute;left:10px;top:9px}
    .logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px;line-height:1.1}
    .main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}
    .main-nav a{padding:8px 13px;border-radius:9px;font-size:14px;color:#605962;transition:.2s}
    .main-nav a:hover,.main-nav a.active{color:var(--berry-dark);background:var(--berry-soft)}
    .header-actions{display:flex;align-items:center;gap:10px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:11px;font-weight:700;font-size:14px;transition:.2s;border:1px solid transparent}
    .btn-primary{background:var(--berry);color:#fff;box-shadow:0 8px 18px rgba(168,66,126,.22)}
    .btn-primary:hover{background:#bd548e;color:#fff;transform:translateY(-2px)}
    .btn-light{background:#fff;border-color:var(--line);color:var(--berry-dark)}
    .btn-light:hover{background:var(--berry-soft)}
    .menu-btn{display:none;background:var(--berry-soft);color:var(--berry-dark);padding:8px 11px;border-radius:9px}
    .page-intro{padding:68px 0 48px;background:linear-gradient(115deg,#fff,#f3e5ed)}
    .crumb{font-size:13px;color:var(--muted);margin-bottom:24px}
    .crumb a{color:var(--berry-dark)}
    .intro-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:end}
    .eyebrow,.section-kicker{font-size:12px;font-weight:800;color:var(--berry);letter-spacing:1.8px}
    h1{font-size:clamp(36px,5vw,62px);line-height:1.15;letter-spacing:-1.5px;color:var(--deep);margin:12px 0 16px}
    .intro-copy{font-size:17px;color:var(--muted);max-width:700px;margin:0}
    .intro-note{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow)}
    .intro-note strong{display:block;font-size:26px;color:var(--berry-dark);margin-bottom:3px}
    .intro-note span{font-size:13px;color:var(--muted)}
    .section{padding:70px 0}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
    .section h2{font-size:30px;line-height:1.25;color:var(--deep);margin:7px 0 0}
    .section-intro{color:var(--muted);max-width:570px;margin:0}
    .filter-bar{display:flex;flex-wrap:wrap;gap:10px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:26px}
    .filter-bar a{padding:9px 18px;border-radius:9px;color:var(--muted);font-size:14px;transition:.2s}
    .filter-bar a:hover,.filter-bar a.active{background:var(--berry);color:#fff}
    .hall-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
    .featured-game{min-height:350px;padding:32px;border-radius:var(--radius);background:linear-gradient(135deg,var(--deep),#58374f);color:#fff;position:relative;overflow:hidden}
    .featured-game:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:rgba(233,137,129,.2);right:-90px;bottom:-100px}
    .featured-game h3{font-size:30px;margin:65px 0 10px;position:relative;z-index:1}
    .featured-game p{max-width:440px;color:#dfd2dc;position:relative;z-index:1}
    .badge{display:inline-flex;border-radius:30px;background:var(--berry-soft);color:var(--berry-dark);padding:4px 10px;font-size:12px;font-weight:700}
    .badge.mint{background:#e1f3ee;color:#287b6c}
    .hall-list{display:grid;gap:13px}
    .hall-item{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px 21px;display:grid;grid-template-columns:54px 1fr auto;gap:14px;align-items:center;transition:.2s}
    .hall-item:hover,.article-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
    .game-icon{width:54px;height:54px;border-radius:15px;background:var(--berry-soft);color:var(--berry);display:grid;place-items:center;font-size:22px;font-weight:800}
    .hall-item h3{font-size:18px;margin:0 0 3px}
    .hall-item p{font-size:13px;color:var(--muted);margin:0}
    .hall-item time{display:block;color:var(--muted);font-size:11px;margin-top:4px}
    .arrow{color:var(--berry);font-size:22px}
    .support-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px}
    .ranking,.guide-box,.download-box,.article-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
    .ranking{padding:25px}
    .rank-row{display:grid;grid-template-columns:35px 1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}
    .rank-row:last-child{border:0}
    .rank-no{font-size:21px;font-weight:800;color:var(--berry)}
    .rank-row strong{display:block}
    .rank-row small{color:var(--muted);font-size:12px}
    .rank-state{font-size:12px;color:var(--mint);font-weight:700}
    .download-box{padding:28px;display:flex;align-items:center;gap:26px;background:linear-gradient(135deg,#fff,#f4e9ef)}
    .device{width:125px;height:190px;border:7px solid var(--deep);border-radius:25px;background:#fff;padding:12px;flex:none;box-shadow:0 10px 20px rgba(48,35,55,.14)}
    .device-top{height:8px;width:43px;background:var(--berry-soft);border-radius:10px;margin:0 auto 18px}
    .device-line{height:10px;border-radius:8px;background:var(--berry-soft);margin:12px 0}
    .device-line.short{width:60%}
    .download-box h3{font-size:23px;color:var(--deep);margin:8px 0}
    .download-box p{color:var(--muted);font-size:14px;margin:0 0 17px}
    .article-section{background:#fbfaf8}
    .article-layout{display:grid;grid-template-columns:1fr 310px;gap:24px}
    .article-card{padding:24px;transition:.2s}
    .article-card h3{font-size:18px;margin:10px 0 5px}
    .article-card p{font-size:14px;color:var(--muted);margin:0}
    .article-meta{display:flex;gap:16px;color:var(--muted);font-size:12px;margin-top:15px}
    .article-meta .tag{color:var(--berry-dark);font-weight:700}
    .cms-list{display:grid;gap:13px}
    .side-panel{background:var(--deep);color:#fff;border-radius:var(--radius);padding:27px;align-self:start}
    .side-panel h3{font-size:21px;margin:10px 0 14px}
    .side-panel p{color:#ddcfd9;font-size:14px}
    .side-panel ul{list-style:none;padding:0;margin:22px 0}
    .side-panel li{padding:10px 0;border-bottom:1px solid #5b4960;color:#eee4eb;font-size:14px}
    .empty{padding:35px;text-align:center;border:1px dashed #d8cbd4;border-radius:15px;background:#fff;color:var(--muted)}
    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
    .step{padding:23px;background:#fff;border:1px solid var(--line);border-radius:15px}
    .step-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--berry);color:#fff;font-weight:800;margin-bottom:15px}
    .step h3{font-size:17px;margin:0 0 6px}
    .step p{font-size:13px;color:var(--muted);margin:0}
    .cta{padding:58px 0;background:var(--berry-soft)}
    .cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
    .cta h2{font-size:30px;color:var(--deep);margin:0 0 8px}
    .cta p{color:var(--muted);margin:0}
    .cta-actions{display:flex;gap:11px;flex-wrap:wrap}
    .site-footer{background:var(--deep);color:#fff;padding:54px 0 22px}
    .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:35px}
    .footer-brand{font-size:22px;font-weight:800}
    .site-footer p{color:#cbbdca;font-size:13px;margin:7px 0}
    .site-footer h3{font-size:15px;margin:3px 0 13px}
    .site-footer a:not(.footer-brand){display:block;color:#cbbdca;font-size:13px;padding:3px 0}
    .site-footer a:hover{color:#fff}
    .footer-download{margin-top:12px;color:#e9dce6;font-size:13px}
    .qr{width:62px;height:62px;margin:9px 0;background:repeating-linear-gradient(45deg,#fff 0 4px,#ddd 4px 7px);border:5px solid #fff}
    .footer-download small{color:#a99aa8}
    .footer-bottom{border-top:1px solid #524157;margin-top:38px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#aa9ba9;font-size:12px}
    @media(max-width:1024px){.main-nav{gap:1px}.main-nav a{padding:8px 8px}.header-inner{gap:14px}.hall-layout,.support-grid,.article-layout{grid-template-columns:1fr}.side-panel{order:-1}.steps{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:768px){.container{width:min(100% - 28px,620px)}.site-header{height:70px}.main-nav{display:none}.header-actions .btn-light{display:none}.menu-btn{display:block}.header-actions{margin-left:auto}.page-intro{padding:46px 0 35px}.intro-grid{grid-template-columns:1fr;gap:22px}.section{padding:52px 0}.section h2{font-size:26px}.section-head{display:block}.section-intro{margin-top:10px}.hall-item{grid-template-columns:45px 1fr auto}.game-icon{width:45px;height:45px}.download-box{align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}}
    @media(max-width:520px){.logo{font-size:14px}.logo-mark{width:31px;height:31px}.logo small{font-size:9px}.header-actions .btn-primary{padding:9px 11px;font-size:12px}.h1{font-size:38px}.filter-bar{gap:5px}.filter-bar a{padding:8px 12px}.featured-game{min-height:285px;padding:24px}.featured-game h3{margin-top:42px;font-size:25px}.hall-item{padding:15px}.hall-item .arrow{font-size:18px}.hall-item p{font-size:12px}.download-box{display:block}.device{margin:0 auto 20px}.steps,.footer-grid{grid-template-columns:1fr}.cta-inner{display:block}.cta-actions{margin-top:22px}.btn{padding:11px 16px}}

/* roulang page: article */
:root{
        --berry:#a8427e;
        --berry-dark:#73305f;
        --berry-soft:#f5e7ef;
        --mint:#64b9a7;
        --mint-soft:#e1f3ee;
        --ink:#302a32;
        --muted:#766f77;
        --paper:#f7f4f1;
        --white:#fff;
        --line:#e6deda;
        --deep:#302337;
        --coral:#e98981;
        --radius:18px;
        --shadow:0 14px 34px rgba(68,39,61,.09);
        --shadow-hover:0 20px 42px rgba(68,39,61,.15);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
        margin:0;
        color:var(--ink);
        background:var(--paper);
        font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
        line-height:1.7;
        -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    a:hover{color:var(--berry)}
    img{display:block;max-width:100%;height:auto}
    button,input,textarea{font:inherit}
    button{cursor:pointer;border:0}
    .container{width:min(1220px,calc(100% - 40px));margin:0 auto}
    .site-header{
        height:78px;
        background:rgba(255,255,255,.97);
        border-bottom:1px solid var(--line);
        display:flex;
        align-items:center;
        position:sticky;
        top:0;
        z-index:20;
    }
    .header-inner{display:flex;align-items:center;gap:34px}
    .logo{
        display:flex;
        align-items:center;
        gap:10px;
        color:var(--berry-dark);
        font-size:16px;
        font-weight:800;
        white-space:nowrap;
    }
    .logo-mark{
        width:35px;height:35px;border-radius:12px 12px 12px 4px;
        background:linear-gradient(140deg,var(--berry),var(--coral));
        position:relative;flex:none;
    }
    .logo-mark:after{
        content:"";position:absolute;width:11px;height:11px;
        border:3px solid #fff;border-radius:50%;left:10px;top:9px;
    }
    .logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px;line-height:1.1}
    .main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}
    .main-nav a{
        padding:8px 13px;border-radius:9px;font-size:14px;color:#605962;
        transition:.2s ease;
    }
    .main-nav a:hover,.main-nav a.active{color:var(--berry-dark);background:var(--berry-soft)}
    .header-actions{display:flex;align-items:center;gap:10px}
    .btn{
        display:inline-flex;align-items:center;justify-content:center;gap:8px;
        min-height:44px;padding:11px 20px;border-radius:11px;
        font-size:14px;font-weight:700;border:1px solid transparent;
        transition:.2s ease;
    }
    .btn-primary{background:var(--berry);color:#fff;box-shadow:0 8px 18px rgba(168,66,126,.22)}
    .btn-primary:hover{background:#bd548e;color:#fff;transform:translateY(-2px)}
    .btn-light{background:#fff;border-color:var(--line);color:var(--berry-dark)}
    .btn-light:hover{background:var(--berry-soft);color:var(--berry-dark)}
    .menu-btn{display:none;background:var(--berry-soft);color:var(--berry-dark);padding:8px 11px;border-radius:9px}
    .article-hero{
        padding:70px 0 64px;
        background:linear-gradient(115deg,#fff 0%,#fff 58%,#f1e4ec 100%);
        border-bottom:1px solid var(--line);
    }
    .breadcrumb{
        display:flex;align-items:center;gap:10px;flex-wrap:wrap;
        margin-bottom:28px;color:var(--muted);font-size:13px;
    }
    .breadcrumb a{color:var(--berry-dark)}
    .breadcrumb .slash{color:#b4a9b0}
    .article-heading{max-width:900px}
    .eyebrow,.section-kicker{
        color:var(--berry);font-size:12px;font-weight:800;
        letter-spacing:1.8px;text-transform:uppercase;
    }
    .article-heading h1{
        margin:13px 0 18px;
        color:var(--deep);
        font-size:clamp(34px,5vw,60px);
        line-height:1.2;
        letter-spacing:-1.5px;
        overflow-wrap:anywhere;
    }
    .article-summary{
        max-width:790px;margin:0;color:var(--muted);font-size:17px;
    }
    .article-meta{
        display:flex;align-items:center;gap:18px;flex-wrap:wrap;
        margin-top:24px;color:var(--muted);font-size:13px;
    }
    .badge{
        display:inline-flex;align-items:center;
        border-radius:30px;background:var(--berry-soft);
        color:var(--berry-dark);padding:4px 11px;font-size:12px;font-weight:700;
    }
    .badge.mint{background:var(--mint-soft);color:#287b6c}
    .article-layout{
        display:grid;grid-template-columns:minmax(0,820px) 300px;
        gap:42px;align-items:start;padding:72px 0 86px;
    }
    .article-content{
        background:var(--white);border:1px solid var(--line);
        border-radius:var(--radius);box-shadow:var(--shadow);
        padding:clamp(25px,5vw,58px);
        overflow:hidden;
    }
    .article-content>*:first-child{margin-top:0}
    .article-content h2{
        color:var(--deep);font-size:29px;line-height:1.35;
        margin:38px 0 16px;padding-left:15px;border-left:4px solid var(--berry);
    }
    .article-content h3{color:var(--berry-dark);font-size:22px;margin:30px 0 12px}
    .article-content p{margin:0 0 21px;color:#4c454d;font-size:16px;line-height:2}
    .article-content ul,.article-content ol{margin:0 0 24px;padding-left:26px;color:#4c454d}
    .article-content li{margin:8px 0;line-height:1.9}
    .article-content blockquote{
        margin:28px 0;padding:20px 24px;
        background:var(--berry-soft);border-left:4px solid var(--berry);
        border-radius:0 12px 12px 0;color:var(--berry-dark);
    }
    .article-content img{width:auto;max-width:100%;margin:28px auto;border-radius:14px}
    .article-content table{width:100%;border-collapse:collapse;margin:25px 0;display:block;overflow-x:auto}
    .article-content th,.article-content td{padding:12px 15px;border:1px solid var(--line);text-align:left;white-space:nowrap}
    .article-content th{background:var(--berry-soft);color:var(--berry-dark)}
    .article-content hr{border:0;border-top:1px solid var(--line);margin:35px 0}
    .not-found{text-align:center;padding:50px 20px}
    .not-found h2{border:0;padding:0;margin:0 0 12px}
    .not-found p{color:var(--muted)}
    .article-side{position:sticky;top:108px;display:grid;gap:18px}
    .side-card{
        padding:24px;background:#fff;border:1px solid var(--line);
        border-radius:var(--radius);box-shadow:var(--shadow);
    }
    .side-card.dark{background:var(--deep);color:#fff;border-color:var(--deep)}
    .side-card h2{font-size:19px;line-height:1.4;margin:0 0 14px;color:var(--deep)}
    .side-card.dark h2{color:#fff}
    .side-card p{margin:0;color:var(--muted);font-size:14px}
    .side-card.dark p{color:#d8cad6}
    .side-links{display:grid;gap:10px;margin-top:17px}
    .side-links a{
        padding:10px 0;border-bottom:1px solid var(--line);
        font-size:14px;font-weight:700;color:var(--berry-dark);
    }
    .side-links a:last-child{border-bottom:0}
    .side-links a:hover{padding-left:4px}
    .download-mark{
        width:48px;height:48px;border-radius:14px;
        display:grid;place-items:center;background:var(--coral);
        color:#fff;font-weight:800;font-size:20px;margin-bottom:18px;
    }
    .article-bottom{
        padding:26px 0 0;margin-top:34px;border-top:1px solid var(--line);
        display:flex;justify-content:space-between;gap:18px;align-items:center;
        flex-wrap:wrap;
    }
    .article-bottom p{margin:0;color:var(--muted);font-size:13px}
    .reading-note{
        padding:20px 22px;margin:28px 0 0;
        background:var(--mint-soft);border:1px solid #cce9e0;
        border-radius:14px;color:#36796d;font-size:14px;
    }
    .closing{
        padding:68px 0;background:var(--deep);color:#fff;
    }
    .closing-inner{
        display:flex;align-items:center;justify-content:space-between;
        gap:30px;
    }
    .closing h2{font-size:30px;line-height:1.35;margin:0 0 9px}
    .closing p{margin:0;color:#d8cad6}
    .closing-actions{display:flex;gap:11px;flex-wrap:wrap}
    .closing .btn-light{background:#fff}
    .site-footer{background:var(--deep);color:#d8cad6;padding:58px 0 22px;border-top:1px solid rgba(255,255,255,.08)}
    .footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.1fr;gap:35px}
    .footer-brand{display:inline-block;color:#fff;font-size:20px;font-weight:800}
    .site-footer p{margin:5px 0;color:#bcaebe;font-size:13px}
    .site-footer h3{margin:0 0 14px;color:#fff;font-size:14px}
    .site-footer a:not(.footer-brand){display:block;width:max-content;margin:8px 0;color:#bcaebe;font-size:13px;transition:.2s}
    .site-footer a:hover{color:#fff;transform:translateX(2px)}
    .footer-download{margin-top:12px;color:#fff;font-size:13px}
    .qr{width:62px;height:62px;margin:10px 0;border:5px solid #fff;background:repeating-linear-gradient(45deg,#fff 0 4px,#6f566b 4px 7px);opacity:.85}
    .footer-download small{color:#a995a8;font-size:11px}
    .footer-bottom{
        display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
        border-top:1px solid rgba(255,255,255,.13);margin-top:42px;padding-top:18px;
        color:#a995a8;font-size:12px;
    }
    :focus-visible{outline:3px solid rgba(100,185,167,.75);outline-offset:3px}
    @media(max-width:1024px){
        .header-inner{gap:18px}
        .main-nav a{padding:8px 8px;font-size:13px}
        .header-actions .btn-light{display:none}
        .article-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}
        .footer-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:768px){
        .container{width:min(100% - 30px,620px)}
        .site-header{height:68px}
        .main-nav{
            display:none;position:absolute;left:15px;right:15px;top:67px;
            padding:10px;background:#fff;border:1px solid var(--line);
            border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;
        }
        .main-nav.open{display:flex}
        .main-nav a{padding:12px 14px}
        .menu-btn{display:block}
        .header-actions{margin-left:auto}
        .header-actions .btn-primary{padding:9px 12px;font-size:12px;min-height:38px}
        .article-hero{padding:47px 0 44px}
        .article-heading h1{font-size:36px;letter-spacing:-.8px}
        .article-summary{font-size:15px}
        .article-layout{display:block;padding:42px 0 55px}
        .article-content{padding:27px 21px}
        .article-content p{font-size:15px;line-height:1.9}
        .article-side{position:static;margin-top:22px;grid-template-columns:1fr 1fr}
        .closing{padding:48px 0}
        .closing-inner{display:block}
        .closing-actions{margin-top:24px}
    }
    @media(max-width:520px){
        .logo{font-size:14px}
        .logo-mark{width:31px;height:31px}
        .logo small{font-size:9px}
        .header-actions .btn-primary{display:none}
        .article-heading h1{font-size:30px}
        .article-meta{gap:10px}
        .article-side{grid-template-columns:1fr}
        .article-bottom{align-items:flex-start;flex-direction:column}
        .closing h2{font-size:25px}
        .closing-actions .btn{width:100%}
        .footer-grid{grid-template-columns:1fr;gap:26px}
        .footer-bottom{display:block}
        .footer-bottom span{display:block;margin:7px 0}
    }

/* roulang page: category3 */
:root{--berry:#a8427e;--berry-dark:#73305f;--berry-soft:#f5e7ef;--mint:#64b9a7;--ink:#302a32;--muted:#766f77;--paper:#f7f4f1;--white:#fff;--line:#e6deda;--deep:#302337;--coral:#e98981;--radius:18px;--shadow:0 14px 34px rgba(68,39,61,.09)}
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
        a{color:inherit;text-decoration:none}
        img{max-width:100%;display:block}
        button,input,textarea{font:inherit}
        button{cursor:pointer;border:0}
        .container{width:min(1220px,calc(100% - 40px));margin:auto}
        .site-header{height:78px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20}
        .header-inner{display:flex;align-items:center;gap:34px}
        .logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--berry-dark);white-space:nowrap}
        .logo-mark{width:35px;height:35px;border-radius:12px 12px 12px 4px;background:linear-gradient(140deg,var(--berry),var(--coral));position:relative}
        .logo-mark:after{content:"";width:11px;height:11px;border:3px solid #fff;border-radius:50%;position:absolute;left:10px;top:9px}
        .logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px;line-height:1.1}
        .main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}
        .main-nav a{padding:8px 13px;border-radius:9px;font-size:14px;color:#605962;transition:.2s}
        .main-nav a:hover,.main-nav a.active{color:var(--berry-dark);background:var(--berry-soft)}
        .header-actions{display:flex;align-items:center;gap:10px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:11px;font-weight:700;font-size:14px;transition:.2s;border:1px solid transparent}
        .btn-primary{background:var(--berry);color:#fff;box-shadow:0 8px 18px rgba(168,66,126,.22)}
        .btn-primary:hover{background:#bd548e;color:#fff;transform:translateY(-2px)}
        .btn-light{background:#fff;border-color:var(--line);color:var(--berry-dark)}
        .btn-light:hover{background:var(--berry-soft)}
        .menu-btn{display:none;background:var(--berry-soft);color:var(--berry-dark);padding:8px 11px;border-radius:9px}
        .page-intro{padding:70px 0 58px;background:linear-gradient(115deg,#fff 0%,#fff 58%,#f1e4ec 100%);border-bottom:1px solid var(--line)}
        .crumbs{font-size:13px;color:var(--muted);margin-bottom:22px}
        .crumbs a{color:var(--berry-dark)}
        .intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}
        .eyebrow,.section-kicker{font-size:12px;font-weight:800;color:var(--berry);letter-spacing:1.8px}
        h1{font-size:clamp(38px,5vw,64px);line-height:1.14;letter-spacing:-1.5px;color:var(--deep);margin:12px 0 16px}
        h1 span{color:var(--berry)}
        .intro-copy{font-size:18px;color:var(--muted);max-width:650px;margin:0}
        .intro-note{background:var(--deep);color:#fff;border-radius:20px;padding:25px 28px;box-shadow:var(--shadow)}
        .intro-note strong{display:block;font-size:20px;margin-bottom:7px}
        .intro-note p{margin:0;color:#dfd2dc;font-size:14px}
        .section{padding:78px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
        .section h2{font-size:31px;line-height:1.25;color:var(--deep);margin:7px 0 0}
        .section-intro{color:var(--muted);max-width:570px;margin:0}
        .filter-bar{display:flex;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;margin-bottom:25px}
        .filter-bar a{padding:8px 18px;border-radius:9px;color:var(--muted);font-size:14px}
        .filter-bar a:hover,.filter-bar a.active{background:var(--berry);color:#fff}
        .content-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:22px}
        .recommend-main{padding:32px;min-height:320px;border-radius:20px;background:linear-gradient(135deg,var(--deep),#523348);color:#fff;position:relative;overflow:hidden}
        .recommend-main:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;bottom:-100px;background:rgba(233,137,129,.25)}
        .badge{display:inline-flex;border-radius:30px;background:var(--berry-soft);color:var(--berry-dark);padding:4px 10px;font-size:12px;font-weight:700}
        .badge.mint{background:#e1f3ee;color:#287b6c}
        .recommend-main h3{font-size:29px;max-width:440px;margin:28px 0 12px;position:relative;z-index:1}
        .recommend-main p{color:#dfd2dc;max-width:460px;position:relative;z-index:1}
        .recommend-side{display:grid;gap:14px}
        .info-card,.list-card,.rank-box,.steps-box,.download-box,.support-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
        .info-card{padding:22px}
        .info-card h3{font-size:19px;margin:10px 0 5px}
        .info-card p,.list-card p{font-size:14px;color:var(--muted);margin:0}
        .meta{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:12px;margin-top:14px}
        .leisure-board{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
        .leisure-card{padding:26px;min-height:205px;border-radius:18px;border:1px solid #e4d5e1;background:#efe5ef}
        .leisure-card:nth-child(1){grid-column:span 5}
        .leisure-card:nth-child(2){grid-column:span 7;background:#e1f2ec}
        .leisure-card:nth-child(3){grid-column:span 7;background:#f8e8df}
        .leisure-card:nth-child(4){grid-column:span 5;background:#fff}
        .leisure-card h3{font-size:21px;margin:35px 0 7px;color:var(--deep)}
        .leisure-card p{font-size:14px;color:var(--muted);margin:0}
        .list-stack{display:grid;gap:13px}
        .list-card{display:grid;grid-template-columns:74px 1fr auto;gap:18px;align-items:center;padding:19px 22px;transition:.2s}
        .list-card:hover{transform:translateY(-2px);box-shadow:0 17px 32px rgba(68,39,61,.13)}
        .list-icon{width:58px;height:58px;border-radius:15px;background:var(--berry-soft);display:grid;place-items:center;color:var(--berry);font-weight:800;font-size:22px}
        .list-card h3{font-size:18px;margin:0 0 3px;color:var(--deep)}
        .list-card .meta{justify-content:flex-start;margin-top:7px;gap:16px}
        .rank-box{padding:24px}
        .rank-row{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}
        .rank-row:last-child{border:0}
        .rank-num{font-size:20px;font-weight:800;color:var(--berry)}
        .rank-row strong{display:block}
        .rank-row small{color:var(--muted)}
        .download-box{display:grid;grid-template-columns:1fr 210px;gap:30px;align-items:center;padding:32px;background:linear-gradient(135deg,#fff,#f4e7ef)}
        .download-box h2{margin:8px 0 10px;color:var(--deep)}
        .download-box p{color:var(--muted);max-width:560px}
        .download-points{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0;color:var(--berry-dark);font-size:14px;font-weight:700}
        .device-preview{height:155px;border:9px solid var(--deep);border-radius:25px;background:linear-gradient(145deg,var(--berry),var(--coral));display:flex;align-items:end;justify-content:center;padding:18px;color:#fff;font-size:13px}
        .qr{width:92px;height:92px;background:repeating-linear-gradient(45deg,#302337 0 4px,#fff 4px 8px);border:7px solid #fff;box-shadow:0 5px 15px rgba(48,35,55,.15);margin:0 auto}
        .article-list{display:grid;gap:13px}
        .empty-state{padding:34px;background:#fff;border:1px dashed var(--line);border-radius:15px;color:var(--muted);text-align:center}
        .steps-box{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
        .step{padding:25px;border-right:1px solid var(--line)}
        .step:last-child{border:0}
        .step b{display:grid;place-items:center;width:34px;height:34px;background:var(--berry);color:#fff;border-radius:10px;margin-bottom:18px}
        .step strong{display:block;color:var(--deep);margin-bottom:5px}
        .step p{margin:0;font-size:13px;color:var(--muted)}
        .cta-band{padding:38px 42px;border-radius:20px;background:var(--deep);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}
        .cta-band h2{font-size:27px;margin:0 0 5px}
        .cta-band p{color:#dfd2dc;margin:0}
        .cta-actions{display:flex;gap:11px;flex-wrap:wrap}
        .site-footer{background:var(--deep);color:#fff;padding:60px 0 22px}
        .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:34px}
        .footer-brand{font-size:21px;font-weight:800}
        .site-footer p{color:#cdbdca;font-size:14px;margin:7px 0}
        .site-footer h3{font-size:14px;margin:3px 0 16px;color:#fff}
        .site-footer a:not(.footer-brand){display:block;color:#cdbdca;font-size:13px;margin:8px 0}
        .site-footer a:hover{color:#fff}
        .footer-download{color:#cdbdca;font-size:13px;margin-top:10px}
        .footer-download .qr{width:72px;height:72px;margin:10px 0 6px}
        .footer-bottom{border-top:1px solid #514356;margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#ad9baa;font-size:12px}
        :focus-visible{outline:3px solid rgba(100,185,167,.7);outline-offset:3px}
        @media(max-width:1024px){.main-nav{gap:1px}.main-nav a{padding:8px 8px}.header-inner{gap:14px}.intro-grid,.content-layout{gap:28px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
        @media(max-width:768px){.container{width:min(100% - 30px,620px)}.site-header{height:70px}.main-nav{display:none}.header-actions .btn-light{display:none}.menu-btn{display:block}.header-actions{margin-left:auto}.page-intro{padding:48px 0 42px}.intro-grid,.content-layout,.download-box{grid-template-columns:1fr}.section{padding:56px 0}.section-head{display:block}.section-head .section-intro{margin-top:10px}.leisure-card:nth-child(n){grid-column:span 6}.steps-box{grid-template-columns:1fr 1fr}.step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:1px solid var(--line)}.list-card{grid-template-columns:58px 1fr}.list-card>a{grid-column:2}.list-card .meta{flex-wrap:wrap}.download-box{padding:25px}.device-preview{max-width:210px}.cta-band{display:block;padding:30px 25px}.cta-actions{margin-top:22px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}}
        @media(max-width:480px){h1{font-size:38px}.intro-copy{font-size:16px}.leisure-card:nth-child(n){grid-column:span 12}.steps-box{grid-template-columns:1fr}.step{border-right:0!important;border-bottom:1px solid var(--line)!important}.step:last-child{border-bottom:0!important}.list-card{padding:17px}.list-icon{width:50px;height:50px}.footer-grid{grid-template-columns:1fr}.header-actions .btn-primary{padding:9px 12px;font-size:12px}.logo{font-size:14px}.logo-mark{width:31px;height:31px}.logo small{font-size:9px}}

/* roulang page: category2 */
:root{--berry:#a8427e;--berry-dark:#73305f;--berry-soft:#f5e7ef;--mint:#64b9a7;--ink:#302a32;--muted:#766f77;--paper:#f7f4f1;--white:#fff;--line:#e6deda;--deep:#302337;--coral:#e98981;--radius:18px;--shadow:0 14px 34px rgba(68,39,61,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}button{cursor:pointer;border:0}.container{width:min(1220px,calc(100% - 40px));margin:auto}
.site-header{height:78px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;gap:34px}.logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--berry-dark);white-space:nowrap}.logo-mark{width:35px;height:35px;border-radius:12px 12px 12px 4px;background:linear-gradient(140deg,var(--berry),var(--coral));position:relative}.logo-mark:after{content:"";width:11px;height:11px;border:3px solid #fff;border-radius:50%;position:absolute;left:10px;top:9px}.logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px;line-height:1.1}.main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}.main-nav a{padding:8px 13px;border-radius:9px;font-size:14px;color:#605962;transition:.2s}.main-nav a:hover,.main-nav a.active{color:var(--berry-dark);background:var(--berry-soft)}.header-actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:11px;font-weight:700;font-size:14px;transition:.2s;border:1px solid transparent}.btn-primary{background:var(--berry);color:#fff;box-shadow:0 8px 18px rgba(168,66,126,.22)}.btn-primary:hover{background:#bd548e;color:#fff;transform:translateY(-2px)}.btn-light{background:#fff;border-color:var(--line);color:var(--berry-dark)}.btn-light:hover{background:var(--berry-soft)}.menu-btn{display:none;background:var(--berry-soft);color:var(--berry-dark);padding:8px 11px;border-radius:9px}
.page-top{padding:60px 0 54px;background:linear-gradient(120deg,#fff 0%,#fff 62%,#f2e5ed 100%)}.crumbs{font-size:13px;color:var(--muted);margin-bottom:22px}.crumbs a:hover{color:var(--berry)}.top-grid{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:end}.eyebrow,.section-kicker{font-size:12px;font-weight:800;color:var(--berry);letter-spacing:1.8px}.page-top h1{font-size:clamp(36px,5vw,60px);line-height:1.15;letter-spacing:-1.5px;color:var(--deep);margin:12px 0 15px}.page-top h1 span{color:var(--berry)}.lead{font-size:17px;color:var(--muted);max-width:700px}.status-card{background:var(--deep);border-radius:20px;padding:25px;color:#fff;box-shadow:var(--shadow)}.status-card strong{font-size:27px;display:block}.status-card p{color:#d9cbd7;font-size:14px;margin:5px 0 0}
.section{padding:68px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.section h2{font-size:30px;line-height:1.25;color:var(--deep);margin:7px 0}.section-intro{color:var(--muted);max-width:590px}.filter-bar{display:flex;gap:9px;flex-wrap:wrap;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:24px}.filter-bar a{padding:8px 16px;border-radius:9px;color:var(--muted);font-size:14px}.filter-bar a:hover,.filter-bar a.active{background:var(--berry-soft);color:var(--berry-dark);font-weight:700}
.competition-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:22px}.timeline{position:relative;padding-left:27px}.timeline:before{content:"";position:absolute;left:7px;top:12px;bottom:12px;width:2px;background:#dcc7d5}.event-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;margin-bottom:16px;position:relative;box-shadow:var(--shadow);transition:.2s}.event-card:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(68,39,61,.14)}.event-card:before{content:"";position:absolute;width:13px;height:13px;border-radius:50%;background:var(--berry);left:-27px;top:29px;box-shadow:0 0 0 5px var(--paper)}.event-card h3{font-size:20px;margin:11px 0 7px;color:var(--deep)}.event-card p{font-size:14px;color:var(--muted);margin:0}.event-meta{display:flex;gap:15px;flex-wrap:wrap;color:var(--muted);font-size:12px}.badge{display:inline-flex;border-radius:30px;background:var(--berry-soft);color:var(--berry-dark);padding:4px 10px;font-size:12px;font-weight:700}.badge.mint{background:#e1f3ee;color:#287b6c}.side-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.side-panel h3{margin:0 0 15px;color:var(--deep)}.rank-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.rank-row:last-child{border:0}.rank-num{font-size:19px;font-weight:800;color:var(--berry)}.rank-row strong{font-size:14px}.rank-row small{display:block;color:var(--muted);font-size:12px}.trend{color:var(--mint);font-size:12px}
.news-list{display:grid;gap:13px}.news-item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px 22px;display:grid;grid-template-columns:1fr auto;gap:8px;transition:.2s}.news-item:hover{border-color:#d2a9c2;transform:translateX(3px)}.news-item h3{font-size:18px;margin:0;color:var(--deep)}.news-item p{color:var(--muted);font-size:14px;margin:3px 0 0}.news-item .meta{grid-column:1/-1;display:flex;gap:16px;color:var(--muted);font-size:12px}.article-link{color:var(--berry-dark);font-weight:700;font-size:13px;align-self:center}.empty-state{padding:35px;text-align:center;background:#fff;border:1px dashed #d7c5d1;border-radius:16px;color:var(--muted)}
.trend-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.data-card{background:var(--deep);color:#fff;border-radius:var(--radius);padding:28px}.data-card h3{margin:0 0 18px}.bar-item{margin:17px 0}.bar-label{display:flex;justify-content:space-between;font-size:13px;color:#e8dce5}.bar{height:8px;background:#55445d;border-radius:8px;margin-top:7px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--berry),var(--coral));border-radius:8px}.guide{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.guide-item{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px}.guide-item b{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--berry-soft);color:var(--berry);margin-bottom:15px}.guide-item h3{font-size:16px;margin:0 0 5px}.guide-item p{font-size:13px;color:var(--muted);margin:0}.app-strip{background:#e8f3ef;border:1px solid #d0e9e1;border-radius:22px;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:25px}.app-strip h2{margin:0 0 7px;font-size:25px;color:var(--deep)}.app-strip p{margin:0;color:var(--muted);font-size:14px}.app-mark{width:72px;height:72px;border-radius:18px;background:var(--berry);color:#fff;display:grid;place-items:center;font-weight:800;font-size:22px}.cta{background:var(--deep);color:#fff;border-radius:22px;padding:35px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px}.cta h2{margin:0 0 7px;font-size:27px}.cta p{margin:0;color:#d9cbd7}.cta .btn-light{background:#fff}
.site-footer{background:var(--deep);color:#fff;padding:58px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:38px}.footer-brand{font-weight:800;font-size:20px}.site-footer p{color:#c9bbc7;font-size:13px;margin:5px 0}.site-footer h3{font-size:14px;margin:0 0 13px}.site-footer a{display:block;color:#c9bbc7;font-size:13px;margin:8px 0;transition:.2s}.site-footer a:hover{color:#fff}.footer-download{margin-top:13px;color:#fff;font-size:13px}.qr{width:62px;height:62px;border:5px solid #fff;background:repeating-linear-gradient(45deg,#fff 0 4px,#806b82 4px 8px);margin:8px 0;border-radius:5px}.footer-download small{color:#a997a7}.footer-bottom{border-top:1px solid #514354;margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#a997a7;font-size:12px}
:focus-visible{outline:3px solid rgba(100,185,167,.65);outline-offset:3px}
@media(max-width:1024px){.main-nav{gap:2px}.main-nav a{padding:8px 9px}.header-inner{gap:15px}.top-grid{grid-template-columns:1fr 290px}.competition-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.site-header{height:70px}.main-nav{display:none;position:absolute;top:70px;left:20px;right:20px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:11px 13px}.header-actions .btn-light{display:none}.menu-btn{display:block}.header-inner{justify-content:space-between}.top-grid{grid-template-columns:1fr;gap:24px}.page-top{padding:43px 0}.section{padding:52px 0}.section-head{display:block}.section-head .section-intro{margin-top:8px}.trend-grid,.guide{grid-template-columns:1fr 1fr}.app-strip,.cta{display:block}.app-mark{margin-bottom:18px}.cta .hero-actions{margin-top:20px}}
@media(max-width:520px){.container{width:min(100% - 28px,1220px)}.logo{font-size:14px}.logo-mark{width:31px;height:31px}.logo small{font-size:9px}.header-actions{gap:6px}.header-actions .btn-primary{padding:9px 12px;font-size:12px}.page-top h1{font-size:38px}.lead{font-size:15px}.filter-bar{gap:4px}.filter-bar a{padding:7px 10px;font-size:13px}.event-card{padding:20px}.news-item{display:block}.article-link{display:inline-block;margin-top:10px}.trend-grid,.guide,.footer-grid{grid-template-columns:1fr}.section h2{font-size:26px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}}

/* roulang page: category4 */
:root{--berry:#a8427e;--berry-dark:#73305f;--berry-soft:#f5e7ef;--mint:#64b9a7;--ink:#302a32;--muted:#766f77;--paper:#f7f4f1;--white:#fff;--line:#e6deda;--deep:#302337;--coral:#e98981;--radius:18px;--shadow:0 14px 34px rgba(68,39,61,.09)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(100,185,167,.55);outline-offset:3px}
img{max-width:100%;display:block}
button,input,textarea{font:inherit}
button{cursor:pointer;border:0}
.container{width:min(1220px,calc(100% - 40px));margin:auto}
.site-header{height:78px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20}
.header-inner{display:flex;align-items:center;gap:34px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--berry-dark);white-space:nowrap}
.logo-mark{width:35px;height:35px;border-radius:12px 12px 12px 4px;background:linear-gradient(140deg,var(--berry),var(--coral));position:relative}
.logo-mark:after{content:"";width:11px;height:11px;border:3px solid #fff;border-radius:50%;position:absolute;left:10px;top:9px}
.logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px;line-height:1.1}
.main-nav{display:flex;align-items:center;gap:7px;margin-left:auto}
.main-nav a{padding:8px 13px;border-radius:9px;font-size:14px;color:#605962;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:var(--berry-dark);background:var(--berry-soft)}
.header-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:11px;font-weight:700;font-size:14px;transition:.2s;border:1px solid transparent}
.btn-primary{background:var(--berry);color:#fff;box-shadow:0 8px 18px rgba(168,66,126,.22)}
.btn-primary:hover{background:#bd548e;color:#fff;transform:translateY(-2px)}
.btn-light{background:#fff;border-color:var(--line);color:var(--berry-dark)}
.btn-light:hover{background:var(--berry-soft)}
.menu-btn{display:none;background:var(--berry-soft);color:var(--berry-dark);padding:8px 11px;border-radius:9px}
.page-intro{padding:68px 0 54px;background:linear-gradient(115deg,#fff 0%,#fff 58%,#f1e4ec 100%)}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:22px}
.crumbs a{color:var(--berry-dark)}
.intro-layout{display:grid;grid-template-columns:1fr 350px;gap:60px;align-items:end}
.eyebrow,.section-kicker{font-size:12px;font-weight:800;color:var(--berry);letter-spacing:1.8px}
.page-intro h1{font-size:clamp(36px,5vw,62px);line-height:1.18;letter-spacing:-1.5px;color:var(--deep);margin:13px 0 16px}
.page-intro h1 span{color:var(--berry)}
.page-intro p{color:var(--muted);font-size:17px;max-width:700px;margin:0}
.update-panel{background:var(--deep);color:#fff;padding:25px;border-radius:20px;box-shadow:var(--shadow)}
.update-panel strong{font-size:24px;display:block;margin:6px 0}
.update-panel small{color:#d9cbd6}
.section{padding:76px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.section h2{font-size:31px;line-height:1.25;color:var(--deep);margin:7px 0 0}
.section-intro{color:var(--muted);max-width:600px}
.filter-bar{display:flex;flex-wrap:wrap;gap:10px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:15px;margin-bottom:28px}
.filter-bar a{padding:8px 17px;border-radius:9px;color:var(--muted);font-size:14px;transition:.2s}
.filter-bar a:hover,.filter-bar a.active{background:var(--berry);color:#fff}
.news-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:24px;align-items:start}
.news-stream{display:grid;gap:15px}
.news-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 26px;display:grid;grid-template-columns:78px 1fr;gap:20px;transition:.2s}
.news-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.news-date{color:var(--berry);font-weight:800;font-size:13px;border-right:1px solid var(--line);padding-right:18px}
.news-card h3{font-size:20px;line-height:1.4;margin:0 0 7px;color:var(--deep)}
.news-card p{font-size:14px;color:var(--muted);margin:0}
.card-foot{display:flex;gap:15px;align-items:center;margin-top:14px;font-size:12px;color:var(--muted)}
.card-foot .badge{margin-right:auto}
.badge{display:inline-flex;border-radius:30px;background:var(--berry-soft);color:var(--berry-dark);padding:4px 10px;font-size:12px;font-weight:700}
.badge.mint{background:#e1f3ee;color:#287b6c}
.side-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:var(--shadow)}
.side-card h3{font-size:20px;color:var(--deep);margin:0 0 18px}
.side-list{list-style:none;padding:0;margin:0}
.side-list li{padding:14px 0;border-bottom:1px solid var(--line)}
.side-list li:last-child{border-bottom:0}
.side-list a{font-weight:700;line-height:1.45}
.side-list a:hover{color:var(--berry)}
.side-list small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.feature-news{background:linear-gradient(135deg,var(--deep),#523348);border-radius:20px;color:#fff;padding:32px;min-height:270px;position:relative;overflow:hidden}
.feature-news:after{content:"";position:absolute;right:-75px;bottom:-90px;width:250px;height:250px;border-radius:50%;background:rgba(233,137,129,.2)}
.feature-news h3{font-size:28px;max-width:560px;line-height:1.35;margin:17px 0 10px;position:relative;z-index:1}
.feature-news p{color:#ded1dc;max-width:570px;position:relative;z-index:1}
.feature-news .btn{position:relative;z-index:1;margin-top:12px}
.short-news{display:grid;gap:12px;margin-top:18px}
.short-news a{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 18px;display:flex;justify-content:space-between;gap:16px;font-weight:700}
.short-news a:hover{color:var(--berry);border-color:#d8b6ca}
.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.topic-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;min-height:180px}
.topic-card:nth-child(2){background:#e1f2ec}.topic-card:nth-child(3){background:#f8e8df}
.topic-icon{width:42px;height:42px;border-radius:13px;background:var(--berry-soft);color:var(--berry);display:grid;place-items:center;font-weight:800}
.topic-card h3{margin:19px 0 7px;font-size:20px;color:var(--deep)}
.topic-card p{margin:0;color:var(--muted);font-size:14px}
.app-panel{background:var(--deep);border-radius:22px;padding:35px 40px;color:#fff;display:grid;grid-template-columns:1fr 250px;gap:30px;align-items:center}
.app-panel h2{color:#fff;margin:8px 0 12px}
.app-panel p{color:#d9cbd6;max-width:570px}
.app-points{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.app-points span{border:1px solid #705d72;border-radius:8px;padding:7px 11px;font-size:13px;color:#eee2ea}
.qr-box{background:#fff;border-radius:15px;padding:15px;color:var(--deep);text-align:center}
.qr{width:112px;height:112px;margin:0 auto 9px;background:repeating-linear-gradient(45deg,#302337 0 4px,#fff 4px 8px);border:8px solid #fff}
.empty-state{background:#fff;border:1px dashed #cdbbc8;border-radius:16px;text-align:center;padding:38px;color:var(--muted)}
.cta-band{padding:52px 0;background:var(--berry-soft)}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}
.cta-inner h2{margin:0;color:var(--deep);font-size:29px}
.cta-inner p{margin:8px 0 0;color:var(--muted)}
.cta-actions{display:flex;gap:10px;flex-wrap:wrap}
.site-footer{background:var(--deep);color:#eee2ea;padding:54px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px}
.footer-brand{font-size:21px;font-weight:800;color:#fff}
.site-footer p{color:#c6b5c3;font-size:13px;margin:4px 0}
.site-footer h3{font-size:14px;color:#fff;margin:0 0 15px}
.site-footer a:not(.footer-brand){display:block;color:#c6b5c3;font-size:13px;margin:8px 0}
.site-footer a:hover{color:#fff}
.footer-download{font-size:13px;color:#fff;margin-top:13px}
.footer-download .qr{width:78px;height:78px;margin:9px 0 5px;border-width:5px}
.footer-download small{color:#aa98a8;font-size:11px}
.footer-bottom{border-top:1px solid #514257;margin-top:38px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#aa98a8;font-size:12px}
@media(max-width:1024px){.header-inner{gap:16px}.main-nav a{padding:8px 8px}.intro-layout,.news-layout{grid-template-columns:1fr}.topic-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.site-header{height:70px}.main-nav{display:none}.header-actions .btn-light{display:none}.header-actions{margin-left:auto}.menu-btn{display:block}.page-intro{padding:48px 0 40px}.section{padding:55px 0}.app-panel{grid-template-columns:1fr;padding:28px}.app-panel .qr-box{max-width:250px}.footer-grid{grid-template-columns:repeat(2,1fr)}.cta-inner{display:block}.cta-actions{margin-top:20px}}
@media(max-width:520px){.container{width:min(100% - 28px,1220px)}.logo{font-size:14px}.logo-mark{width:31px;height:31px}.page-intro h1{font-size:36px}.section h2{font-size:26px}.news-card{grid-template-columns:1fr;gap:8px;padding:20px}.news-date{border-right:0;border-bottom:1px solid var(--line);padding:0 0 8px}.topic-grid{grid-template-columns:1fr}.feature-news{padding:25px}.feature-news h3{font-size:23px}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}.header-actions .btn-primary{padding:9px 12px;font-size:12px}}
