/* roulang page: index */
:root{--coral:#ff6b57;--mint:#43c6a3;--cream:#fff9ef;--ink:#2c2926;--muted:#716a64;--line:#e9dfd2;--sunny:#f6c851}
    *{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;line-height:1.8;overflow-x:hidden}
    a{color:inherit;text-decoration:none} button,input,select{font:inherit} button{cursor:pointer} img{display:block;max-width:100%}
    .pattern{background-image:radial-gradient(rgba(255,107,87,.13) 1px,transparent 1px);background-size:18px 18px}
    .nav-link{padding:.58rem .86rem;border-radius:999px;font-size:.94rem;font-weight:650;transition:.2s}
    .nav-link:hover{background:#fff0eb;color:#bd3d2d}.nav-link.active{background:#ffe1da;color:#9f3022;font-weight:800}
    .focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #2c2926;outline-offset:3px}
    .btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.7rem 1.1rem;border-radius:14px;font-weight:800;transition:transform .2s,background .2s,box-shadow .2s;border:1px solid transparent}
    .btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px rgba(255,107,87,.24)}.btn-primary:hover{background:#e95443}.btn-light{background:#fff;border-color:var(--line);color:var(--ink)}.btn-light:hover{background:#fff5e9}
    .section{padding:84px 0}.card-rise{transition:transform .2s,box-shadow .2s,border-color .2s}.card-rise:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(78,57,38,.13);border-color:#ffb5aa}
    .art-thumb{position:relative;overflow:hidden;background:#fee6de}.art-thumb:before,.art-thumb:after{content:"";position:absolute;border-radius:999px}.art-thumb:before{width:62%;height:62%;background:#ff907f;right:-12%;top:-12%}.art-thumb:after{width:52%;height:52%;background:#92e0cd;left:-13%;bottom:-18%}
    .faq-answer{display:none}.faq-item.open .faq-answer{display:block}.faq-item.open .faq-plus{transform:rotate(45deg)}
    .faq-plus{transition:transform .18s}.mobile-panel{display:none}.mobile-panel.open{display:block}
    @media(max-width:767px){.section{padding:60px 0}.desktop-nav{display:none}.mobile-panel{border-top:1px solid var(--line)}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* roulang page: category2 */
:root{--coral:#ff6b57;--mint:#43c6a3;--cream:#fff9ef;--ink:#2c2926;--muted:#716a64;--line:#e9dfd2;--sunny:#f6c851;--white:#fff;--soft-coral:#fff0eb;--soft-mint:#eaf9f4;--shadow:0 14px 34px rgba(78,57,38,.10);--radius:22px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;line-height:1.8;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
::selection{background:#ffd7cf;color:var(--ink)}
.text-ink{color:var(--ink)}
.text-muted{color:var(--muted)}
.text-coral{color:var(--coral)}
.border-coral{border-color:var(--coral)}
.bg-cream{background:var(--cream)}
.nav-link{min-height:42px;display:inline-flex;align-items:center;padding:.58rem .86rem;border-radius:999px;font-size:.94rem;font-weight:650;transition:background .2s,color .2s,transform .2s}
.nav-link:hover{background:#fff0eb;color:#bd3d2d}
.nav-link:active{transform:translateY(1px)}
.nav-link.active{background:#ffe1da;color:#9f3022;font-weight:800;box-shadow:inset 0 -2px 0 rgba(67,198,163,.55)}
.focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #2c2926;outline-offset:3px}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.7rem 1.1rem;border-radius:14px;font-weight:800;transition:transform .2s,background .2s,box-shadow .2s,border-color .2s;border:1px solid transparent}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn:disabled{cursor:not-allowed;opacity:.55;transform:none}
.btn-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px rgba(255,107,87,.24)}
.btn-primary:hover{background:#e95443;box-shadow:0 12px 24px rgba(255,107,87,.3)}
.btn-light{background:#fff;border-color:var(--line);color:var(--ink)}
.btn-light:hover{background:#fff5e9;border-color:#dfcdbb}
.section{padding:84px 0}
.card-rise{transition:transform .2s,box-shadow .2s,border-color .2s}
.card-rise:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(78,57,38,.13);border-color:#ffb5aa}
.tag{display:inline-flex;min-height:34px;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;background:#fff;padding:.35rem .78rem;font-size:.84rem;font-weight:750;color:#5d554f;white-space:nowrap;transition:.2s}
.tag:hover{border-color:#ff9c8e;background:#fff3ef;color:#a93829}
.tag.active{border-color:#8edfc9;background:#e8f9f4;color:#176c58}
.topic-art{position:relative;isolation:isolate;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.topic-art:before,.topic-art:after{content:"";position:absolute;border-radius:999px;z-index:-1}
.topic-art:before{width:190px;height:190px;background:#ffe0d9;right:-52px;top:-56px}
.topic-art:after{width:150px;height:150px;background:#dff7f0;left:-45px;bottom:-68px}
.pattern{background-image:radial-gradient(rgba(255,107,87,.14) 1.4px,transparent 1.4px);background-size:22px 22px}
.timeline-line{position:absolute;left:19px;top:42px;bottom:10px;width:2px;background:linear-gradient(var(--coral),var(--sunny),var(--mint))}
.timeline-dot{position:relative;z-index:2;display:flex;width:40px;height:40px;flex:none;align-items:center;justify-content:center;border:5px solid #fff;border-radius:999px;background:var(--coral);box-shadow:0 0 0 1px var(--line)}
.timeline-item:nth-child(2) .timeline-dot{background:var(--sunny)}
.timeline-item:nth-child(3) .timeline-dot{background:var(--mint)}
.faq-answer{display:none}
.faq-item.open .faq-answer{display:block}
.faq-item.open .faq-plus{transform:rotate(45deg)}
.faq-plus{transition:transform .18s}
.mobile-panel{display:none}
.mobile-panel.open{display:block}
.desktop-nav{display:none}
.search-clear{display:none}
.search-wrap:focus-within .search-clear,.search-wrap.has-value .search-clear{display:inline-flex}
.prose-limit{max-width:780px}
.clamp-two{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.cta-shape:before{content:"";position:absolute;width:160px;height:160px;border:28px solid rgba(246,200,81,.28);border-radius:50%;right:-40px;top:-55px}
.cta-shape:after{content:"";position:absolute;width:120px;height:58px;border-radius:999px;background:rgba(67,198,163,.16);left:-30px;bottom:-18px;transform:rotate(-12deg)}
.mobile-panel{border-top:1px solid var(--line)}
@media(min-width:768px){
  .desktop-nav{display:flex}
  .mobile-panel{display:none!important}
}
@media(max-width:767px){
  .section{padding:60px 0}
  .desktop-nav{display:none}
  .mobile-panel{border-top:1px solid var(--line)}
  .timeline-line{left:17px}
  .timeline-dot{width:36px;height:36px}
}
@media(max-width:520px){
  .btn-mobile-full{width:100%}
  .topic-art{border-radius:20px}
  .tag{font-size:.8rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important;animation:none!important}
}

/* roulang page: category1 */
:root{--coral:#ff6b57;--mint:#43c6a3;--cream:#fff9ef;--ink:#2c2926;--muted:#716a64;--line:#e9dfd2;--sunny:#f6c851;--white:#fff;--radius:22px;--shadow:0 16px 38px rgba(78,57,38,.10)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;line-height:1.8;overflow-x:hidden}
body.drawer-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.55}
img{display:block;max-width:100%}
::selection{background:#ffd7cf;color:var(--ink)}
.nav-link{padding:.58rem .86rem;border-radius:999px;font-size:.94rem;font-weight:650;transition:.2s}
.nav-link:hover{background:#fff0eb;color:#bd3d2d}
.nav-link:active{background:#ffe1da}
.nav-link.active{background:#ffe1da;color:#9f3022;font-weight:800;box-shadow:inset 0 -2px 0 var(--mint)}
.focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #2c2926;outline-offset:3px}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.7rem 1.1rem;border-radius:14px;font-weight:800;transition:transform .2s,background .2s,box-shadow .2s,border-color .2s;border:1px solid transparent}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px rgba(255,107,87,.24)}
.btn-primary:hover{background:#e95443}
.btn-light{background:#fff;border-color:var(--line);color:var(--ink)}
.btn-light:hover{background:#fff5e9;border-color:#d8c9b7}
.btn-mint{background:#dff8ef;border-color:#b7eadb;color:#176c57}
.btn-mint:hover{background:#cff3e7}
.section{padding:84px 0}
.card-rise{transition:transform .2s,box-shadow .2s,border-color .2s}
.card-rise:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(78,57,38,.13);border-color:#ffb5aa}
.card-rise:hover .card-title{color:#bd3d2d}
.card-rise:hover .card-thumb{transform:scale(1.02)}
.card-thumb{transition:transform .22s}
.tag{display:inline-flex;min-height:28px;align-items:center;border-radius:999px;padding:.22rem .68rem;font-size:.78rem;font-weight:800;background:#fff0eb;color:#a83829}
.tag-mint{background:#dff8ef;color:#176c57}
.tag-sunny{background:#fff3c7;color:#735712}
.filter-chip{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;background:#fff;padding:.45rem .9rem;font-size:.9rem;font-weight:750;color:var(--muted);transition:.2s}
.filter-chip:hover{border-color:#ffb5aa;background:#fff5f1;color:#9f3022}
.filter-chip.active{border-color:#ff9d8e;background:#ffe1da;color:#9f3022;box-shadow:inset 0 -2px 0 var(--coral)}
.form-control{width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:#fffdf9;color:var(--ink);padding:.7rem .9rem;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.form-control:hover{border-color:#d7c6b2}
.form-control:focus{border-color:var(--coral);box-shadow:0 0 0 4px rgba(255,107,87,.13);background:#fff}
.sticky-tools{position:sticky;top:74px;z-index:30}
.faq-answer{display:none}
.faq-item.open .faq-answer{display:block}
.faq-item.open .faq-plus{transform:rotate(45deg)}
.faq-plus{transition:transform .18s}
.mobile-panel{display:none}
.mobile-panel.open{display:block}
.filter-drawer{visibility:hidden;opacity:0;transition:opacity .2s,visibility .2s}
.filter-drawer.open{visibility:visible;opacity:1}
.filter-drawer .drawer-panel{transform:translateY(100%);transition:transform .22s ease}
.filter-drawer.open .drawer-panel{transform:translateY(0)}
.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.abstract-pattern{background-color:#fff2ec;background-image:radial-gradient(circle at 18% 24%,rgba(255,107,87,.28) 0 8%,transparent 9%),radial-gradient(circle at 72% 34%,rgba(67,198,163,.25) 0 12%,transparent 13%),linear-gradient(135deg,transparent 43%,rgba(246,200,81,.32) 44% 56%,transparent 57%)}
.result-card[hidden]{display:none!important}
.pagination-link{display:inline-flex;min-width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 .8rem;font-weight:800;color:var(--muted);transition:.2s}
.pagination-link:hover{border-color:#ffad9f;background:#fff0eb;color:#9f3022}
.pagination-link.current{border-color:var(--coral);background:var(--coral);color:#fff}
.desktop-nav{display:flex}
@media(max-width:1023px){
  .section{padding:72px 0}
  .sticky-tools{top:74px}
}
@media(max-width:767px){
  .section{padding:60px 0}
  .desktop-nav{display:none}
  .mobile-panel{border-top:1px solid var(--line)}
  .sticky-tools{top:74px}
}
@media(max-width:520px){
  .section{padding:56px 0}
  .btn{width:100%}
  .pagination-link{min-width:42px;padding:0 .55rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important;animation:none!important}
}
