/* roulang page: index */
:root{
      --ink:#2a2028;
      --ink-soft:#51444e;
      --plum:#6d355d;
      --plum-deep:#45243e;
      --berry:#9d4d6e;
      --coral:#dc7461;
      --blush:#f4dfe2;
      --mist:#f6f1f2;
      --paper:#fffdfb;
      --line:#e7dadd;
      --warm:#ded2cb;
      --muted:#7c6d74;
      --white:#ffffff;
      --shadow:0 18px 48px rgba(61,31,50,.11);
      --shadow-sm:0 8px 20px rgba(61,31,50,.08);
      --radius:14px;
      --radius-sm:9px;
      --container:1180px;
      --ease:180ms ease;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;font-size:16px;line-height:1.7}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input{font:inherit}
    button{cursor:pointer}
    :focus-visible{outline:3px solid rgba(220,116,97,.5);outline-offset:3px}
    .container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
    .site-header{padding:20px 0 0;position:relative;z-index:10}
    .nav-shell{display:flex;align-items:center;gap:14px;background:rgba(255,253,251,.96);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:10px;border-radius:var(--radius)}
    .brand{min-width:235px;display:flex;align-items:center;gap:11px;padding:9px 12px;font-weight:800;color:var(--plum-deep);line-height:1.2}
    .brand-mark{display:grid;place-items:center;width:33px;height:33px;background:var(--plum);color:#fff;border-radius:9px;font-size:17px;font-weight:700}
    .brand-text{font-size:17px}
    .nav-links{display:flex;gap:8px;flex:1}
    .nav-link{display:flex;align-items:center;gap:7px;padding:10px 13px;border:1px solid transparent;border-radius:8px;font-size:14px;color:var(--ink-soft);white-space:nowrap;transition:var(--ease)}
    .nav-link svg{width:16px;height:16px}
    .nav-link:hover{background:var(--mist);color:var(--plum)}
    .nav-link.active{background:var(--blush);border-color:#edd1d7;color:var(--plum-deep);font-weight:700}
    .nav-cta,.button-primary{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--plum);border:1px solid var(--plum);border-radius:8px;color:#fff;padding:12px 17px;font-weight:700;white-space:nowrap;transition:var(--ease)}
    .nav-cta:hover,.button-primary:hover{background:var(--plum-deep);border-color:var(--plum-deep);transform:translateY(-1px);box-shadow:0 8px 16px rgba(69,36,62,.2)}
    .nav-cta:active,.button-primary:active{transform:translateY(0)}
    .menu-button{display:none;border:1px solid var(--line);background:var(--paper);width:42px;height:42px;border-radius:8px;color:var(--plum)}
    .hero{margin-top:18px;min-height:580px;position:relative;overflow:hidden;background:#2c222a;border-radius:18px;color:#fff}
    .hero-art{position:absolute;inset:0;background:
      linear-gradient(90deg,rgba(32,22,30,.93) 0%,rgba(40,25,37,.70) 43%,rgba(49,28,42,.24) 72%,rgba(39,23,35,.52) 100%),
      url('https://chaoyujx.com/assets/home-cover.jpg') center/cover no-repeat}
    .hero-art:after{content:"";position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:74px 74px}
    .hero-inner{position:relative;z-index:1;min-height:580px;padding:66px 6.5% 0;display:flex;flex-direction:column;align-items:flex-start}
    .eyebrow{display:inline-flex;gap:8px;align-items:center;color:#fee6e3;font-size:13px;font-weight:700;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.3)}
    .eyebrow i{width:8px;height:8px;background:var(--coral);border-radius:50%;box-shadow:0 0 0 5px rgba(220,116,97,.16)}
    h1,h2,h3,p{margin-top:0}
    h1{max-width:720px;margin:16px 0 19px;font-size:clamp(37px,5vw,64px);line-height:1.14;letter-spacing:0;font-weight:850}
    .hero-copy{max-width:650px;color:#f5eaee;font-size:17px;line-height:1.9}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
    .button-secondary{display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:12px 17px;border:1px solid rgba(255,255,255,.55);border-radius:8px;color:#fff;font-weight:700;transition:var(--ease)}
    .button-secondary:hover{background:rgba(255,255,255,.13);border-color:#fff}
    .hero-trail{margin-top:auto;width:100%;display:flex;gap:0;max-width:720px;border-top:1px solid rgba(255,255,255,.27)}
    .trail-item{flex:1;padding:17px 15px 18px 0;color:#f5e7ed;font-size:13px}
    .trail-item+.trail-item{padding-left:18px;border-left:1px solid rgba(255,255,255,.27)}
    .trail-item strong{display:block;color:#fff;font-size:19px;line-height:1.25}
    main{overflow:hidden}
    .section{padding:92px 0}
    .section-tint{background:var(--mist)}
    .section-dark{background:var(--ink);color:#fff}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}
    .section-kicker{color:var(--berry);font-size:13px;font-weight:800;margin-bottom:7px}
    .section-dark .section-kicker{color:#f0a598}
    h2{font-size:clamp(28px,3.4vw,43px);line-height:1.23;letter-spacing:0;margin-bottom:0;font-weight:850}
    .section-intro{max-width:515px;margin-bottom:0;color:var(--muted);font-size:15px}
    .section-dark .section-intro{color:#dccbd3}
    .problem-layout{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.75fr);gap:54px;align-items:start}
    .problem-index{position:sticky;top:18px}
    .problem-index p{color:var(--muted);font-size:15px;margin:14px 0 22px}
    .index-line{height:2px;width:95px;background:var(--coral)}
    .problem-list{border-top:1px solid var(--line)}
    .problem-row{display:grid;grid-template-columns:76px 1fr auto;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:var(--ease)}
    .problem-row:hover{padding-left:10px;background:rgba(244,223,226,.33)}
    .problem-num{font-size:13px;color:var(--berry);font-weight:800}
    .problem-row h3{margin:0 0 4px;font-size:19px;line-height:1.4}
    .problem-row p{margin:0;color:var(--muted);font-size:14px}
    .row-arrow{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--plum);transition:var(--ease)}
    .problem-row:hover .row-arrow{background:var(--plum);border-color:var(--plum);color:#fff}
    .content-stage{display:grid;grid-template-columns:1.45fr .72fr;gap:22px}
    .feature-panel{position:relative;min-height:430px;border-radius:var(--radius);overflow:hidden;color:#fff;background:#46313e}
    .feature-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(31,19,28,.94),rgba(31,19,28,.07) 76%),url('https://chaoyujx.com/assets/selected-cover.jpg') center/cover no-repeat}
    .feature-panel-content{position:absolute;inset:auto 0 0;padding:35px}
    .badge{display:inline-block;background:var(--coral);border-radius:5px;padding:4px 9px;color:#fff;font-size:12px;font-weight:800;line-height:1.35}
    .feature-panel h3{font-size:29px;line-height:1.25;margin:12px 0 9px}
    .feature-panel p{color:#f0e4e9;max-width:570px;font-size:15px}
    .text-link{display:inline-flex;align-items:center;gap:7px;color:inherit;font-weight:800;font-size:14px;margin-top:8px}
    .text-link span{transition:var(--ease)}
    .text-link:hover span{transform:translateX(4px)}
    .stage-side{display:flex;flex-direction:column;gap:14px}
    .entry-card{display:grid;grid-template-columns:76px 1fr;gap:15px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:13px;min-height:132px;transition:var(--ease)}
    .entry-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px);border-color:#d8b4c0}
    .entry-thumb{border-radius:7px;background-color:#8d586e;background-image:linear-gradient(145deg,rgba(255,255,255,.2),transparent),url('https://chaoyujx.com/assets/topic-cover.jpg');background-size:cover;background-position:center}
    .entry-card:nth-child(2) .entry-thumb{background-color:#c17371;background-image:linear-gradient(145deg,rgba(255,255,255,.17),transparent),url('https://chaoyujx.com/assets/new-cover.jpg')}
    .entry-card:nth-child(3) .entry-thumb{background-color:#6f6673;background-image:linear-gradient(145deg,rgba(255,255,255,.2),transparent),url('https://chaoyujx.com/assets/recommend-cover.jpg')}
    .entry-card h3{font-size:16px;line-height:1.4;margin:4px 0 5px}
    .entry-card p{font-size:13px;color:var(--muted);line-height:1.55;margin:0}
    .entry-meta{font-size:12px;color:var(--berry);font-weight:700}
    .path-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:55px;align-items:center}
    .path-intro p{color:var(--muted);margin:18px 0 24px;max-width:405px}
    .route-list{position:relative;padding-left:35px}
    .route-list:before{content:"";position:absolute;left:8px;top:20px;bottom:20px;width:1px;background:#d9b8c3}
    .route-step{position:relative;padding:0 0 25px 27px}
    .route-step:last-child{padding-bottom:0}
    .route-step:before{content:"";position:absolute;left:-33px;top:5px;width:13px;height:13px;border:4px solid var(--mist);border-radius:50%;background:var(--plum);box-shadow:0 0 0 1px #cdaab7}
    .route-step span{font-size:12px;font-weight:800;color:var(--berry)}
    .route-step h3{font-size:20px;margin:3px 0 5px}
    .route-step p{font-size:14px;color:var(--muted);margin:0}
    .results-band{padding:50px 0;background:#f1e6e5;border-top:1px solid #ead6d7;border-bottom:1px solid #ead6d7}
    .results-grid{display:grid;grid-template-columns:1.05fr 1.8fr;gap:55px;align-items:center}
    .results-grid h2{font-size:32px}
    .results-grid p{margin:12px 0 0;color:var(--ink-soft);font-size:15px}
    .signal-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-left:1px solid #dcbfc2}
    .signal{padding:4px 20px;border-right:1px solid #dcbfc2}
    .signal strong{display:block;color:var(--plum);font-size:23px;line-height:1.35}
    .signal span{font-size:13px;color:var(--ink-soft)}
    .rail{display:flex;gap:16px;overflow-x:auto;padding:4px 2px 14px;scroll-snap-type:x mandatory;scrollbar-color:#ba899b transparent}
    .rail::-webkit-scrollbar{height:7px}
    .rail::-webkit-scrollbar-thumb{background:#ba899b;border-radius:8px}
    .quote{flex:0 0 min(430px,88%);scroll-snap-align:start;border-top:2px solid var(--coral);background:var(--paper);padding:25px 25px 21px;box-shadow:var(--shadow-sm)}
    .quote-mark{color:var(--coral);font-size:38px;line-height:.7}
    .quote p{font-size:17px;line-height:1.8;margin:14px 0 19px;color:var(--ink-soft)}
    .quote-footer{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted)}
    .quote-footer strong{color:var(--plum)}
    .updates-layout{display:grid;grid-template-columns:1.28fr .72fr;gap:58px}
    .update-list{border-top:1px solid var(--line)}
    .update-item{display:grid;grid-template-columns:115px 1fr auto;gap:20px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line)}
    .update-date{font-size:13px;color:var(--berry);font-weight:800}
    .update-item h3{font-size:17px;margin:0 0 3px;line-height:1.4}
    .update-item p{margin:0;font-size:13px;color:var(--muted)}
    .mini-action{font-size:13px;color:var(--plum);font-weight:800;border-bottom:1px solid currentColor}
    .notice-box{background:var(--plum-deep);color:#fff;padding:30px;border-radius:var(--radius);align-self:start}
    .notice-box h3{font-size:23px;line-height:1.35;margin:0 0 11px}
    .notice-box p{color:#eadce4;font-size:14px;margin-bottom:22px}
    .notice-lines{border-top:1px solid rgba(255,255,255,.23)}
    .notice-lines div{padding:11px 0;border-bottom:1px solid rgba(255,255,255,.23);font-size:13px}
    .faq-layout{display:grid;grid-template-columns:.76fr 1.24fr;gap:55px}
    .faq-layout .section-intro{margin-top:15px}
    .faq-list{border-top:1px solid var(--line)}
    .faq-item{border-bottom:1px solid var(--line)}
    .faq-question{width:100%;border:0;background:transparent;padding:19px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;text-align:left;color:var(--ink);font-weight:800;font-size:17px}
    .faq-question svg{flex:0 0 auto;transition:var(--ease);color:var(--berry)}
    .faq-item.open .faq-question svg{transform:rotate(45deg)}
    .faq-answer{display:none;padding:0 38px 19px 0;color:var(--muted);font-size:14px;line-height:1.85}
    .faq-item.open .faq-answer{display:block}
    .cta{position:relative;overflow:hidden;background:#382633;color:#fff}
    .cta:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(47,29,42,.95),rgba(47,29,42,.66)),url('https://chaoyujx.com/assets/cta-cover.jpg') center/cover no-repeat}
    .cta-inner{position:relative;padding:75px 0;display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:center}
    .cta h2{font-size:clamp(30px,4vw,48px);max-width:670px}
    .cta p{margin:15px 0 0;color:#eadbe2;max-width:640px}
    .cta .button-primary{background:var(--coral);border-color:var(--coral);margin-top:25px}
    .cta .button-primary:hover{background:#c85d4e;border-color:#c85d4e}
    .safety{border-left:1px solid rgba(255,255,255,.28);padding-left:32px}
    .safety h3{font-size:18px;margin-bottom:10px}
    .safety p{font-size:13px;margin:0;color:#dfcbd5}
    .site-footer{background:#20191f;color:#ded0d6;padding:55px 0 21px}
    .footer-grid{display:grid;grid-template-columns:1.25fr .7fr .7fr;gap:42px;padding-bottom:42px;border-bottom:1px solid rgba(255,255,255,.14)}
    .footer-brand{font-size:20px;font-weight:800;color:#fff;margin-bottom:12px}
    .footer-note{max-width:390px;color:#bdaeb5;font-size:13px;margin:0}
    .footer-col h3{font-size:14px;color:#fff;margin:0 0 12px}
    .footer-col a{display:block;color:#c9bac1;font-size:13px;padding:4px 0;transition:var(--ease)}
    .footer-col a:hover{color:#f2aaa0;padding-left:4px}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:18px;color:#9f9098;font-size:12px}
    .status{display:inline-flex;align-items:center;gap:6px}
    .status:before{content:"";width:7px;height:7px;border-radius:50%;background:#9ec68c}
    @media(max-width:1024px){
      .brand{min-width:190px}.nav-link{padding:10px}.nav-link span{display:none}
      .hero{min-height:535px}.hero-inner{min-height:535px}
      .content-stage,.updates-layout{grid-template-columns:1fr}.stage-side{display:grid;grid-template-columns:repeat(3,1fr)}
      .entry-card{grid-template-columns:1fr}.entry-thumb{min-height:74px}
      .path-grid,.faq-layout{gap:35px}.problem-layout{gap:35px}
    }
    @media(max-width:768px){
      .container{width:min(100% - 28px,var(--container))}
      .site-header{padding-top:14px}.nav-shell{flex-wrap:wrap;gap:8px;padding:8px}
      .brand{min-width:0;flex:1;padding:8px}.brand-text{font-size:15px}
      .menu-button{display:grid;place-items:center}.nav-cta{padding:10px 12px;font-size:13px}
      .nav-links{order:3;width:100%;overflow-x:auto;flex:none;padding-top:4px}.nav-link{flex:0 0 auto}.nav-link span{display:inline}
      .hero{margin-top:14px;min-height:535px;border-radius:14px}.hero-inner{min-height:535px;padding:45px 24px 0}
      h1{font-size:39px}.hero-copy{font-size:15px}.hero-trail{margin-top:26px}.trail-item{padding-top:13px;font-size:12px}.trail-item strong{font-size:16px}
      .section{padding:65px 0}.section-head{display:block;margin-bottom:28px}.section-intro{margin-top:13px}
      .problem-layout,.path-grid,.results-grid,.faq-layout,.cta-inner{grid-template-columns:1fr;gap:28px}.problem-index{position:static}
      .problem-row{grid-template-columns:48px 1fr auto;gap:10px}.problem-row h3{font-size:17px}.problem-row p{font-size:13px}.row-arrow{width:34px;height:34px}
      .stage-side{grid-template-columns:1fr}.entry-card{grid-template-columns:76px 1fr}.entry-thumb{min-height:0}
      .feature-panel{min-height:350px}.feature-panel-content{padding:25px}.feature-panel h3{font-size:25px}
      .signal-list{grid-template-columns:1fr}.signal{border-right:0;border-bottom:1px solid #dcbfc2;padding:12px 0}.signal:last-child{border-bottom:0}
      .updates-layout{gap:30px}.update-item{grid-template-columns:78px 1fr;gap:12px}.update-item .mini-action{display:none}
      .safety{border-left:0;border-top:1px solid rgba(255,255,255,.28);padding:23px 0 0}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}
    }
    @media(max-width:520px){
      .nav-cta{font-size:12px;padding:10px}.brand-mark{width:30px;height:30px}.hero-inner{padding:37px 20px 0}
      h1{font-size:33px}.hero-actions{display:grid;grid-template-columns:1fr}.button-primary,.button-secondary{width:100%}
      .hero-trail{gap:8px}.trail-item{padding-right:8px}.trail-item+.trail-item{padding-left:9px}.trail-item strong{font-size:14px}
      .section{padding:53px 0}h2{font-size:29px}.problem-row{grid-template-columns:39px 1fr}.row-arrow{display:none}
      .problem-row:hover{padding-left:3px}.feature-panel{min-height:375px}.feature-panel-content{padding:21px}.feature-panel h3{font-size:23px}
      .entry-card{padding:11px}.route-list{padding-left:27px}.route-step{padding-left:22px}.route-step:before{left:-28px}
      .quote{padding:22px}.cta-inner{padding:58px 0}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span+span{display:block;margin-top:5px}
    }

/* roulang page: category2 */
:root{
 --ink:#2a2028;
 --ink-soft:#51444e;
 --plum:#6d355d;
 --plum-deep:#45243e;
 --berry:#9d4d6e;
 --coral:#dc7461;
 --blush:#f4dfe2;
 --mist:#f6f1f2;
 --paper:#fffdfb;
 --line:#e7dadd;
 --warm:#ded2cb;
 --muted:#7c6d74;
 --white:#fff;
 --shadow:0 18px 48px rgba(61,31,50,.11);
 --shadow-sm:0 8px 20px rgba(61,31,50,.08);
 --radius:14px;
 --radius-sm:9px;
 --container:1180px;
 --ease:180ms ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;font-size:16px;line-height:1.7}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid rgba(220,116,97,.55);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
.site-header{padding:20px 0 0;position:relative;z-index:10}
.nav-shell{display:flex;align-items:center;gap:14px;background:rgba(255,253,251,.96);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:10px;border-radius:var(--radius)}
.brand{min-width:235px;display:flex;align-items:center;gap:11px;padding:9px 12px;font-weight:800;color:var(--plum-deep);line-height:1.2}
.brand-mark{display:grid;place-items:center;width:33px;height:33px;background:var(--plum);color:#fff;border-radius:9px;font-size:17px;font-weight:700}
.brand-text{font-size:17px}
.nav-links{display:flex;gap:8px;flex:1}
.nav-link{display:flex;align-items:center;gap:7px;padding:10px 13px;border:1px solid transparent;border-radius:8px;font-size:14px;color:var(--ink-soft);white-space:nowrap;transition:var(--ease)}
.nav-link svg{width:16px;height:16px}
.nav-link:hover{background:var(--mist);color:var(--plum)}
.nav-link.active{background:var(--blush);border-color:#edd1d7;color:var(--plum-deep);font-weight:700}
.nav-cta,.button-primary{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--plum);border:1px solid var(--plum);border-radius:8px;color:#fff;padding:12px 17px;font-weight:700;white-space:nowrap;transition:var(--ease)}
.nav-cta:hover,.button-primary:hover{background:var(--plum-deep);border-color:var(--plum-deep);transform:translateY(-1px);box-shadow:0 8px 16px rgba(69,36,62,.2)}
.nav-cta:active,.button-primary:active{transform:translateY(0)}
.menu-button{display:none;border:1px solid var(--line);background:var(--paper);width:42px;height:42px;border-radius:8px;color:var(--plum)}
main{overflow:hidden}
.page-intro{padding:74px 0 42px}
.breadcrumb{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin-bottom:19px}
.breadcrumb a:hover{color:var(--plum)}
.page-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:end}
.eyebrow,.section-kicker{color:var(--berry);font-size:13px;font-weight:800;letter-spacing:.04em}
.page-intro h1{font-size:clamp(34px,5vw,60px);line-height:1.16;letter-spacing:0;margin:10px 0 18px;color:var(--plum-deep)}
.page-intro p{max-width:700px;color:var(--ink-soft);font-size:17px;margin:0}
.intro-note{border-left:3px solid var(--coral);padding:16px 18px;background:var(--mist);color:var(--ink-soft);font-size:14px}
.intro-note strong{display:block;color:var(--plum-deep);font-size:18px;margin-bottom:4px}
.topic-hero{position:relative;min-height:390px;border-radius:18px;overflow:hidden;color:#fff;background:#382530}
.topic-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(35,20,31,.9),rgba(54,29,45,.46) 55%,rgba(43,25,37,.3)),url("https://chaoyujx.com/assets/topic-cover.jpg") center/cover no-repeat}
.topic-hero:after{content:"";position:absolute;inset:0;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);background-size:68px 68px}
.topic-hero-inner{position:relative;z-index:1;padding:58px 7%;min-height:390px;display:flex;flex-direction:column;justify-content:flex-end}
.topic-hero h2{font-size:clamp(28px,4vw,44px);line-height:1.25;margin:12px 0 10px;max-width:630px}
.topic-hero p{max-width:600px;color:#f4e6eb;margin:0;font-size:16px}
.badge{display:inline-block;width:max-content;background:var(--coral);border-radius:5px;padding:4px 9px;color:#fff;font-size:12px;font-weight:800;line-height:1.35}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:23px}
.button-secondary{display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:12px 17px;border:1px solid rgba(255,255,255,.6);border-radius:8px;color:#fff;font-weight:700;transition:var(--ease)}
.button-secondary:hover{background:rgba(255,255,255,.13);border-color:#fff}
.section{padding:82px 0}
.section-tint{background:var(--mist)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}
.section-head h2{font-size:32px;line-height:1.25;margin:8px 0 0;color:var(--plum-deep)}
.section-intro{max-width:500px;margin:0;color:var(--muted);font-size:15px}
.topic-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:30px;align-items:start}
.filter-panel{position:sticky;top:18px;border-top:2px solid var(--plum);padding-top:18px}
.filter-panel h3{margin:0 0 15px;color:var(--plum-deep);font-size:19px}
.filter-list{display:flex;flex-direction:column;gap:7px}
.filter-list button{border:1px solid transparent;background:transparent;color:var(--ink-soft);padding:10px 12px;text-align:left;border-radius:8px;transition:var(--ease)}
.filter-list button:hover{background:var(--blush);color:var(--plum)}
.filter-list button.active{background:var(--plum);color:#fff;font-weight:700}
.filter-tip{border-top:1px solid var(--line);margin-top:25px;padding-top:16px;color:var(--muted);font-size:13px}
.topic-list{display:flex;flex-direction:column;gap:15px}
.topic-item{display:grid;grid-template-columns:210px minmax(0,1fr) auto;gap:22px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);transition:var(--ease)}
.topic-item:hover{border-color:#d4a9b8;box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.topic-image{height:145px;border-radius:10px;overflow:hidden;background:#dfc9cf}
.topic-image img{width:100%;height:100%;object-fit:cover}
.topic-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:12px}
.topic-meta .tag{color:var(--berry);background:var(--blush);padding:3px 8px;border-radius:5px;font-weight:700}
.topic-item h3{font-size:21px;line-height:1.35;margin:9px 0 6px;color:var(--plum-deep)}
.topic-item p{font-size:14px;color:var(--muted);margin:0}
.item-link{color:var(--plum);font-weight:800;font-size:14px;white-space:nowrap}
.item-link:hover{color:var(--coral)}
.topic-strip{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px}
.strip-card{min-height:190px;border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:23px;position:relative;overflow:hidden}
.strip-card:first-child{background:var(--plum-deep);color:#fff;border-color:var(--plum-deep)}
.strip-card h3{margin:0 0 8px;font-size:21px;line-height:1.35}
.strip-card p{margin:0;color:var(--muted);font-size:14px}
.strip-card:first-child p{color:#ead9e0}
.strip-card .card-index{color:var(--coral);font-size:12px;font-weight:800;margin-bottom:25px}
.status-line{display:flex;gap:10px;align-items:center;margin-top:23px;color:var(--berry);font-size:13px;font-weight:700}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px rgba(220,116,97,.13)}
.notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.notice-box{padding:25px;border-left:3px solid var(--coral);background:#fff7f4}
.notice-box h3{margin:0 0 7px;color:var(--plum-deep);font-size:20px}
.notice-box p{margin:0;color:var(--ink-soft);font-size:14px}
.faq-list{max-width:850px;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;cursor:pointer;padding:21px 42px 21px 0;font-weight:800;color:var(--plum-deep);position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:"+";position:absolute;right:8px;top:17px;color:var(--coral);font-size:25px;font-weight:400}
.faq-item[open] summary:after{content:"−"}
.faq-answer{padding:0 42px 20px 0;color:var(--muted);font-size:14px}
.cta-band{padding:60px 0;background:var(--plum-deep);color:#fff}
.cta-content{display:flex;justify-content:space-between;align-items:center;gap:30px}
.cta-content h2{font-size:32px;line-height:1.3;margin:0 0 9px}
.cta-content p{margin:0;color:#ead9e0;max-width:650px}
.cta-band .button-primary{background:var(--coral);border-color:var(--coral)}
.cta-band .button-primary:hover{background:#c95e51;border-color:#c95e51}
.site-footer{background:#211820;color:#fff;padding:55px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:50px}
.footer-brand{font-size:21px;font-weight:800;color:#fff;margin-bottom:12px}
.footer-note{max-width:430px;color:#cdbdc5;font-size:14px;margin:0}
.footer-col{display:flex;flex-direction:column;gap:9px}
.footer-col h3{font-size:14px;color:#f1b8b0;margin:0 0 7px}
.footer-col a{color:#cdbdc5;font-size:14px;transition:var(--ease)}
.footer-col a:hover{color:#fff;padding-left:4px}
.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid rgba(255,255,255,.13);margin-top:42px;padding-top:18px;color:#a996a1;font-size:12px}
.status{color:#eaa79b}
.empty-state{display:none;padding:30px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}
@media(max-width:1024px){
 .brand{min-width:205px}.nav-link{padding-left:9px;padding-right:9px}
 .topic-item{grid-template-columns:175px minmax(0,1fr) auto}
}
@media(max-width:768px){
 .container{width:min(var(--container),calc(100% - 28px))}
 .site-header{padding-top:14px}
 .nav-shell{flex-wrap:wrap}
 .brand{min-width:0;flex:1;padding-left:4px}.brand-text{font-size:15px}
 .menu-button{display:grid;place-items:center}
 .nav-cta{font-size:13px;padding:10px 12px}
 .nav-links{order:4;flex-basis:100%;overflow-x:auto;padding-top:4px}
 .nav-link{flex:0 0 auto}
 .page-intro{padding:52px 0 30px}
 .page-intro-grid{grid-template-columns:1fr;gap:22px}
 .topic-hero{min-height:430px}.topic-hero-inner{min-height:430px;padding:38px 7%}
 .section{padding:62px 0}.section-head{display:block;margin-bottom:24px}
 .section-intro{margin-top:12px}
 .topic-layout{grid-template-columns:1fr;gap:25px}
 .filter-panel{position:static;border:1px solid var(--line);padding:16px;border-radius:var(--radius);background:var(--mist)}
 .filter-list{display:grid;grid-template-columns:repeat(2,1fr)}
 .filter-tip{margin-bottom:0}
 .topic-item{grid-template-columns:125px 1fr;gap:15px}
 .topic-image{height:112px;grid-row:span 2}
 .item-link{grid-column:2}
 .topic-strip,.notice-grid{grid-template-columns:1fr}
 .cta-content{display:block}.cta-content .button-primary{margin-top:23px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:520px){
 .nav-cta{padding:9px 10px;font-size:12px}
 .brand-mark{width:30px;height:30px}.brand-text{font-size:14px}
 .page-intro h1{font-size:35px}
 .topic-hero h2{font-size:29px}
 .hero-actions a{width:100%}
 .topic-item{grid-template-columns:1fr;gap:12px}
 .topic-image{grid-row:auto;height:180px}
 .item-link{grid-column:auto}
 .filter-list{grid-template-columns:1fr 1fr}
 .footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}
 .footer-bottom{display:block}.footer-bottom .status{display:block;margin-top:8px}
}

/* roulang page: category1 */
:root{
 --ink:#2a2028;--ink-soft:#51444e;--plum:#6d355d;--plum-deep:#45243e;
 --berry:#9d4d6e;--coral:#dc7461;--blush:#f4dfe2;--mist:#f6f1f2;
 --paper:#fffdfb;--line:#e7dadd;--warm:#ded2cb;--muted:#7c6d74;
 --white:#fff;--shadow:0 18px 48px rgba(61,31,50,.11);
 --shadow-sm:0 8px 20px rgba(61,31,50,.08);--radius:14px;--radius-sm:9px;
 --container:1180px;--ease:180ms ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;font-size:16px;line-height:1.7}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(220,116,97,.48);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
.site-header{padding:20px 0 0;position:relative;z-index:10}
.nav-shell{display:flex;align-items:center;gap:14px;background:rgba(255,253,251,.96);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:10px;border-radius:var(--radius)}
.brand{min-width:235px;display:flex;align-items:center;gap:11px;padding:9px 12px;font-weight:800;color:var(--plum-deep);line-height:1.2}
.brand-mark{display:grid;place-items:center;width:33px;height:33px;background:var(--plum);color:#fff;border-radius:9px;font-size:17px;font-weight:700}
.brand-text{font-size:17px}
.nav-links{display:flex;gap:8px;flex:1}
.nav-link{display:flex;align-items:center;gap:7px;padding:10px 13px;border:1px solid transparent;border-radius:8px;font-size:14px;color:var(--ink-soft);white-space:nowrap;transition:var(--ease)}
.nav-link svg{width:16px;height:16px}
.nav-link:hover{background:var(--mist);color:var(--plum)}
.nav-link.active{background:var(--blush);border-color:#edd1d7;color:var(--plum-deep);font-weight:700}
.nav-cta,.button-primary{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--plum);border:1px solid var(--plum);border-radius:8px;color:#fff;padding:12px 17px;font-weight:700;white-space:nowrap;transition:var(--ease)}
.nav-cta:hover,.button-primary:hover{background:var(--plum-deep);border-color:var(--plum-deep);transform:translateY(-1px);box-shadow:0 8px 16px rgba(69,36,62,.2)}
.nav-cta:active,.button-primary:active{transform:translateY(0)}
.menu-button{display:none;border:1px solid var(--line);background:var(--paper);width:42px;height:42px;border-radius:8px;color:var(--plum)}
.page-head{padding:72px 0 48px;background:var(--mist);border-bottom:1px solid var(--line)}
.crumbs{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:22px}
.crumbs a:hover{color:var(--plum)}
.page-head-grid{display:grid;grid-template-columns:1fr 330px;gap:50px;align-items:end}
.kicker,.section-kicker{color:var(--berry);font-size:13px;font-weight:800;letter-spacing:.04em}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(34px,5vw,58px);line-height:1.17;letter-spacing:0;font-weight:850;margin:10px 0 18px;color:var(--plum-deep)}
h2{font-size:clamp(26px,3.4vw,40px);line-height:1.25;color:var(--plum-deep);margin:7px 0 13px}
h3{line-height:1.35}
.lead{max-width:700px;color:var(--ink-soft);font-size:17px;line-height:1.9;margin:0}
.head-stats{border-left:2px solid var(--coral);padding:8px 0 8px 24px}
.head-stats strong{display:block;font-size:34px;line-height:1.2;color:var(--plum)}
.head-stats span{display:block;color:var(--muted);font-size:14px;margin-top:5px}
.section{padding:82px 0}
.section-tint{background:var(--mist)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}
.section-intro{max-width:540px;margin:0;color:var(--muted);font-size:15px}
.browser-layout{display:grid;grid-template-columns:250px 1fr;gap:42px;align-items:start}
.filter-panel{position:sticky;top:20px;border-top:3px solid var(--plum);padding-top:18px}
.filter-panel h3{font-size:18px;margin:0 0 16px;color:var(--plum-deep)}
.filter-label{display:block;color:var(--muted);font-size:13px;font-weight:700;margin:18px 0 7px}
.filter-options{display:flex;flex-wrap:wrap;gap:7px}
.filter-options button{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);padding:7px 10px;border-radius:7px;font-size:13px;transition:var(--ease)}
.filter-options button:hover,.filter-options button.active{background:var(--blush);border-color:#d9aebb;color:var(--plum-deep);font-weight:700}
.search-box{display:flex;border:1px solid var(--line);border-radius:8px;background:#fff;padding:4px;margin-bottom:24px}
.search-box input{width:100%;border:0;outline:0;background:transparent;padding:8px 10px;color:var(--ink)}
.search-box button{border:0;background:var(--plum);color:#fff;border-radius:6px;padding:0 13px}
.search-box button:hover{background:var(--plum-deep)}
.content-list{border-top:1px solid var(--line)}
.content-item{display:grid;grid-template-columns:188px 1fr auto;gap:22px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);transition:var(--ease)}
.content-item:hover{background:rgba(244,223,226,.35);padding-left:10px;padding-right:10px}
.cover{height:124px;border-radius:10px;overflow:hidden;background:var(--warm);position:relative}
.cover img{width:100%;height:100%;object-fit:cover}
.cover:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(69,36,62,.18),transparent)}
.badge{display:inline-block;background:var(--coral);border-radius:5px;padding:4px 9px;color:#fff;font-size:12px;font-weight:800;line-height:1.35}
.item-title{font-size:20px;color:var(--plum-deep);margin:9px 0 6px}
.item-summary{font-size:14px;color:var(--muted);margin:0 0 8px;line-height:1.65}
.item-meta{font-size:12px;color:var(--muted)}
.item-action{color:var(--plum);font-size:14px;font-weight:800;white-space:nowrap}
.item-action span{display:inline-block;transition:var(--ease)}
.content-item:hover .item-action span{transform:translateX(4px)}
.feature-strip{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.feature-image{min-height:330px;border-radius:var(--radius);overflow:hidden;position:relative;background:#4b3041}
.feature-image img{width:100%;height:100%;object-fit:cover}
.feature-image figcaption{position:absolute;inset:auto 0 0;padding:25px;color:#fff;background:linear-gradient(transparent,rgba(36,20,31,.9))}
.feature-image h3{font-size:24px;margin:8px 0 0}
.route-panel{padding:28px;border:1px solid var(--line);background:#fff;border-radius:var(--radius)}
.route-panel h3{font-size:22px;color:var(--plum-deep);margin:0 0 20px}
.route-step{display:grid;grid-template-columns:36px 1fr;gap:13px;padding:15px 0;border-bottom:1px solid var(--line)}
.route-step:last-child{border-bottom:0}
.step-num{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--blush);color:var(--plum);font-weight:800;font-size:13px}
.route-step strong{display:block;color:var(--ink);font-size:15px}
.route-step span{display:block;color:var(--muted);font-size:13px;margin-top:3px}
.notice-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 24px;background:var(--plum-deep);color:#fff;border-radius:var(--radius);margin-top:32px}
.notice-bar p{margin:0;color:#ead9e0;font-size:14px}
.outline-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;padding:11px 16px;color:var(--plum);font-weight:700;background:#fff;transition:var(--ease);white-space:nowrap}
.outline-button:hover{background:var(--blush);border-color:#d9aebb}
.faq-list{max-width:850px;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-question{width:100%;display:flex;justify-content:space-between;gap:20px;text-align:left;border:0;background:transparent;padding:20px 0;color:var(--plum-deep);font-weight:800;font-size:16px}
.faq-question:hover{color:var(--berry)}
.faq-icon{font-size:23px;font-weight:400;line-height:1;transition:var(--ease)}
.faq-answer{display:none;color:var(--muted);font-size:14px;padding:0 45px 20px 0}
.faq-item.open .faq-answer{display:block}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.cta-band{padding:60px 0;background:#3b2635;color:#fff}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
.cta-band h2{color:#fff;margin-bottom:9px}
.cta-band p{color:#e7d6de;margin:0;max-width:600px}
.cta-band .button-primary{background:var(--coral);border-color:var(--coral)}
.cta-band .button-primary:hover{background:#c96050;border-color:#c96050}
.site-footer{padding:52px 0 22px;background:var(--ink);color:#fff}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}
.footer-brand{font-size:20px;font-weight:800;color:#fff;margin-bottom:12px}
.footer-note{max-width:400px;color:#cdbcc5;font-size:14px;margin:0}
.footer-col{display:flex;flex-direction:column;gap:8px}
.footer-col h3{font-size:14px;color:#f3cdd0;margin:0 0 6px}
.footer-col a{font-size:14px;color:#cdbcc5;transition:var(--ease)}
.footer-col a:hover{color:#fff;padding-left:3px}
.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid rgba(255,255,255,.15);margin-top:38px;padding-top:18px;color:#aa96a1;font-size:12px}
.status{color:#e9ad9f}
.empty-state{display:none;padding:45px 20px;text-align:center;border:1px dashed var(--line);color:var(--muted)}
@media(max-width:1024px){
 .brand{min-width:205px}.nav-link{padding:10px 9px}.page-head-grid{grid-template-columns:1fr 250px}
}
@media(max-width:768px){
 .container{width:min(var(--container),calc(100% - 28px))}
 .site-header{padding-top:14px}.nav-shell{flex-wrap:wrap}.brand{min-width:0;flex:1}
 .menu-button{display:grid;place-items:center}.nav-cta{padding:10px 12px;font-size:13px}
 .nav-links{order:4;display:none;width:100%;overflow-x:auto;padding-top:4px}.nav-shell.menu-open .nav-links{display:flex}
 .nav-link{font-size:13px}.page-head{padding:50px 0 35px}.page-head-grid{grid-template-columns:1fr;gap:25px}
 .head-stats{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}
 .section{padding:60px 0}.section-head{display:block;margin-bottom:25px}.section-intro{margin-top:10px}
 .browser-layout{display:block}.filter-panel{position:static;margin-bottom:30px;padding:18px;background:var(--mist);border:1px solid var(--line);border-top:3px solid var(--plum);border-radius:10px}
 .content-item{grid-template-columns:125px 1fr;gap:15px}.cover{height:100px}.item-action{grid-column:2}
 .feature-strip{grid-template-columns:1fr}.feature-image{min-height:280px}
 .notice-bar,.cta-inner{display:block}.notice-bar .outline-button,.cta-band .button-primary{margin-top:15px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:520px){
 h1{font-size:35px}.brand-text{font-size:15px}.nav-cta{font-size:12px;padding:9px}
 .content-item{grid-template-columns:1fr}.cover{height:180px}.item-action{grid-column:auto}
 .footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom .status{display:block;margin-top:7px}
}
