/* roulang page: index */
:root {
      --ink: #241c2a;
      --muted: #766b7d;
      --paper: #f7f4f6;
      --panel: #fffdfd;
      --plum: #302235;
      --plum-2: #44304b;
      --coral: #c85b61;
      --coral-dark: #a94450;
      --line: #e7dfe6;
      --soft: #eee7ef;
      --cream: #fbf7ef;
      --radius: 14px;
      --shadow: 0 16px 40px rgba(47, 31, 52, .09);
    }
    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
      font-size: 15px;
      line-height: 1.8;
    }
    a { color: inherit; text-decoration: none; }
    img { max-width: 100%; display: block; }
    button, input, select, textarea { font: inherit; }
    :focus-visible { outline: 3px solid rgba(200, 91, 97, .4); outline-offset: 3px; }
    .container { max-width: 1240px; }
    .topline {
      background: var(--plum);
      color: #fff;
      padding: 18px 0;
    }
    .brand {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      font-weight: 800;
      letter-spacing: 0;
      font-size: 19px;
      line-height: 1.2;
    }
    .brand-mark {
      width: 35px;
      height: 35px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(255,255,255,.35);
      color: #ffd9cc;
      border-radius: 9px;
      font-size: 14px;
      font-weight: 800;
    }
    .top-tools { display: flex; align-items: center; gap: 18px; color: #dfd4e3; font-size: 13px; }
    .age-note { color: #ffd0c8; font-weight: 700; }
    .search-mini {
      display: flex;
      min-width: 220px;
      border: 1px solid rgba(255,255,255,.22);
      border-radius: 8px;
      overflow: hidden;
    }
    .search-mini input {
      width: 100%;
      border: 0;
      outline: 0;
      padding: 7px 10px;
      color: #fff;
      background: rgba(255,255,255,.08);
    }
    .search-mini input::placeholder { color: #bcb0c0; }
    .search-mini button {
      border: 0;
      padding: 0 12px;
      color: #fff;
      background: var(--coral-dark);
    }
    .icon-nav {
      background: #fff;
      border-bottom: 1px solid var(--line);
      box-shadow: 0 3px 15px rgba(47,31,52,.04);
    }
    .nav-scroll { display: flex; gap: 7px; overflow-x: auto; padding: 10px 0; scrollbar-width: none; }
    .nav-scroll::-webkit-scrollbar { display: none; }
    .nav-item {
      flex: 0 0 auto;
      min-width: 112px;
      min-height: 58px;
      padding: 8px 13px;
      display: flex;
      align-items: center;
      gap: 9px;
      border: 1px solid transparent;
      border-radius: 10px;
      color: var(--muted);
      transition: .2s ease;
    }
    .nav-item:hover, .nav-item.active {
      color: var(--coral-dark);
      border-color: #edd1d3;
      background: #fff7f5;
    }
    .nav-icon { font-size: 20px; line-height: 1; color: var(--coral); }
    .nav-label { font-size: 13px; font-weight: 700; line-height: 1.3; }
    .hero {
      color: #fff;
      background: var(--plum);
      padding: 86px 0 76px;
      position: relative;
      overflow: hidden;
    }
    .hero::after {
      content: "18+";
      position: absolute;
      right: 7%;
      bottom: -48px;
      color: rgba(255,255,255,.045);
      font-size: 220px;
      font-weight: 900;
      line-height: 1;
    }
    .eyebrow, .section-kicker {
      color: var(--coral);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 1px;
      text-transform: uppercase;
    }
    .eyebrow { color: #f0aca3; margin-bottom: 13px; }
    h1, h2, h3, p { margin-top: 0; }
    h1 {
      max-width: 720px;
      margin-bottom: 23px;
      font-size: clamp(42px, 6vw, 76px);
      line-height: 1.08;
      font-weight: 900;
      letter-spacing: 0;
    }
    .hero-copy { max-width: 680px; color: #d9cbdc; font-size: 17px; line-height: 1.9; }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
    .btn-main, .btn-quiet, .btn-outline-dark {
      display: inline-flex;
      min-height: 46px;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 10px 18px;
      border-radius: 9px;
      font-weight: 800;
      border: 1px solid transparent;
      transition: .2s ease;
    }
    .btn-main { color: #fff; background: var(--coral); }
    .btn-main:hover { color: #fff; background: #dc7074; transform: translateY(-2px); }
    .btn-quiet { color: #fff; border-color: rgba(255,255,255,.34); }
    .btn-quiet:hover { color: #fff; border-color: #fff; background: rgba(255,255,255,.08); }
    .btn-outline-dark { color: var(--plum); border-color: var(--line); background: #fff; }
    .btn-outline-dark:hover { color: var(--coral-dark); border-color: var(--coral); }
    .hero-meta {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin-top: 62px;
      max-width: 720px;
      border-top: 1px solid rgba(255,255,255,.2);
      padding-top: 20px;
    }
    .meta-cell { padding-right: 20px; border-right: 1px solid rgba(255,255,255,.18); }
    .meta-cell + .meta-cell { padding-left: 20px; }
    .meta-cell:last-child { border: 0; }
    .meta-number { color: #fff; display: block; font-size: 21px; font-weight: 900; }
    .meta-label { color: #bcaec0; font-size: 12px; }
    .section { padding: 92px 0; }
    .section-head { max-width: 720px; margin-bottom: 42px; }
    .section-head h2 { margin: 8px 0 14px; font-size: clamp(30px, 4vw, 47px); line-height: 1.18; font-weight: 900; }
    .section-head p { color: var(--muted); font-size: 16px; }
    .feature-layout { display: grid; grid-template-columns: 1.25fr .75fr; gap: 18px; }
    .feature-panel, .mini-panel, .scene, .index-panel, .faq-wrap, .form-panel {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: var(--radius);
    }
    .feature-panel {
      min-height: 310px;
      padding: 34px;
      background: var(--plum-2);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .feature-panel h3 { max-width: 500px; font-size: 31px; line-height: 1.3; font-weight: 900; }
    .feature-panel p { max-width: 510px; color: #d8c9db; }
    .panel-number { color: #f0aaa2; font-size: 12px; font-weight: 900; letter-spacing: 2px; }
    .status { display: inline-flex; align-items: center; gap: 6px; color: #f5c2bb; font-size: 12px; font-weight: 700; }
    .status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #df8d84; }
    .mini-stack { display: grid; gap: 18px; }
    .mini-panel { padding: 25px; min-height: 146px; }
    .mini-panel h3 { margin: 10px 0 6px; font-size: 20px; font-weight: 900; }
    .mini-panel p { color: var(--muted); margin-bottom: 0; font-size: 14px; }
    .topic-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
    .topic {
      padding: 22px 18px;
      border-top: 3px solid var(--coral);
      background: #fff;
      border-radius: 10px;
      border: 1px solid var(--line);
      transition: .2s ease;
    }
    .topic:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
    .topic h3 { margin: 12px 0 5px; font-size: 17px; font-weight: 900; }
    .topic p { color: var(--muted); margin: 0; font-size: 13px; line-height: 1.7; }
    .topic .arrow { display: block; margin-top: 17px; color: var(--coral-dark); font-weight: 900; }
    .scenes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
    .scene { padding: 26px; position: relative; }
    .scene-no { color: var(--coral); font-size: 36px; font-weight: 900; line-height: 1; }
    .scene h3 { margin: 22px 0 8px; font-size: 20px; font-weight: 900; }
    .scene p { color: var(--muted); font-size: 14px; margin-bottom: 18px; }
    .tag { display:inline-flex; align-items:center; min-height:26px; padding:3px 9px; border:1px solid #ead6d8; border-radius:6px; color:var(--coral-dark); background:#fff7f5; font-size:12px; font-weight:800; }
    .index-layout { display:grid; grid-template-columns:1.1fr .9fr; gap:18px; align-items:stretch; }
    .index-panel { padding:30px; }
    .index-panel.dark { color:#fff; background:var(--plum); border-color:var(--plum); }
    .index-panel h3 { margin:10px 0 9px; font-size:25px; font-weight:900; }
    .index-panel p { color:var(--muted); margin-bottom:20px; }
    .index-panel.dark p { color:#d6c9da; }
    .index-list { list-style:none; margin:0; padding:0; }
    .index-list li { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 0; border-bottom:1px solid var(--line); }
    .index-panel.dark .index-list li { border-color:rgba(255,255,255,.16); }
    .index-list li:last-child { border-bottom:0; }
    .index-list a { font-weight:800; }
    .index-list a:hover { color:var(--coral); }
    .index-list small { color:var(--muted); white-space:nowrap; }
    .index-panel.dark small { color:#bcaec0; }
    .rank-list { margin:0; padding:0; list-style:none; counter-reset:item; }
    .rank-list li { counter-increment:item; display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:12px; padding:15px 0; border-bottom:1px solid var(--line); }
    .rank-list li::before { content:counter(item, decimal-leading-zero); color:var(--coral); font-weight:900; }
    .rank-title { font-weight:800; }
    .rank-note { color:var(--muted); font-size:12px; }
    .feedback-strip { padding:26px 30px; border-left:4px solid var(--coral); background:var(--cream); }
    .feedback-strip h3 { margin:0 0 6px; font-size:22px; font-weight:900; }
    .feedback-strip p { margin:0; color:var(--muted); }
    .compare { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line); overflow:hidden; border-radius:var(--radius); }
    .compare th, .compare td { padding:17px 20px; text-align:left; border-bottom:1px solid var(--line); }
    .compare th { color:#fff; background:var(--plum); font-size:14px; }
    .compare td { color:var(--muted); }
    .compare td:first-child { color:var(--ink); font-weight:800; }
    .compare tr:last-child td { border-bottom:0; }
    .faq-wrap { padding:12px 24px; }
    .accordion-item { background:transparent; border:0; border-bottom:1px solid var(--line); }
    .accordion-item:last-child { border-bottom:0; }
    .accordion-button { padding:21px 5px; color:var(--ink); background:transparent; box-shadow:none; font-weight:900; }
    .accordion-button:not(.collapsed) { color:var(--coral-dark); background:transparent; box-shadow:none; }
    .accordion-button::after { background-image:none; content:"+"; width:auto; height:auto; color:var(--coral); font-size:22px; font-weight:400; }
    .accordion-button:not(.collapsed)::after { content:"−"; transform:none; }
    .accordion-body { padding:0 5px 22px; color:var(--muted); line-height:1.8; }
    .compliance { color:#fff; background:var(--coral-dark); padding:30px 0; }
    .compliance-inner { display:flex; align-items:center; justify-content:space-between; gap:25px; }
    .compliance h2 { margin:0 0 5px; font-size:24px; font-weight:900; }
    .compliance p { margin:0; color:#ffe9e4; }
    .cta { padding:76px 0; background:#eee6ed; }
    .cta-box { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:36px; border:1px solid #dacbdc; border-radius:var(--radius); background:#fff; }
    .cta-box h2 { margin:0 0 9px; font-size:32px; font-weight:900; }
    .cta-box p { max-width:680px; margin:0; color:var(--muted); }
    footer { color:#d8ccdc; background:var(--plum); padding:58px 0 25px; }
    .footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:38px; padding-bottom:42px; }
    footer .brand { color:#fff; margin-bottom:17px; }
    .footer-intro { max-width:350px; color:#bcaec0; margin:0; }
    footer h3 { color:#fff; margin:0 0 14px; font-size:14px; font-weight:900; }
    .footer-links { display:grid; gap:8px; margin:0; padding:0; list-style:none; font-size:13px; }
    .footer-links a { color:#c8bacd; transition:.2s ease; }
    .footer-links a:hover { color:#fff; padding-left:3px; }
    .footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid rgba(255,255,255,.15); color:#aa9caf; font-size:12px; }
    .reveal { animation:rise .65s ease both; }
    @keyframes rise { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
    @media (max-width: 991px) {
      .hero { padding:68px 0 60px; }
      .feature-layout, .index-layout { grid-template-columns:1fr; }
      .topic-grid { grid-template-columns:repeat(2, 1fr); }
      .footer-grid { grid-template-columns:repeat(2, 1fr); }
      .compliance-inner, .cta-box { align-items:flex-start; flex-direction:column; }
    }
    @media (max-width: 767px) {
      body { font-size:14px; }
      .topline { padding:14px 0; }
      .top-tools { gap:9px; }
      .age-note { font-size:11px; }
      .search-mini { min-width:42px; border:0; }
      .search-mini input { display:none; }
      .search-mini button { min-width:42px; min-height:40px; border-radius:8px; }
      .nav-item { min-width:105px; min-height:52px; }
      .hero { padding:54px 0 48px; }
      h1 { font-size:43px; }
      .hero-copy { font-size:15px; }
      .hero-actions { display:grid; grid-template-columns:1fr; }
      .hero-actions a { width:100%; }
      .hero-meta { margin-top:42px; grid-template-columns:1fr; gap:14px; }
      .meta-cell, .meta-cell + .meta-cell { padding:0 0 12px; border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }
      .meta-cell:last-child { border:0; }
      .section { padding:62px 0; }
      .section-head { margin-bottom:28px; }
      .section-head h2 { font-size:32px; }
      .feature-panel { padding:25px; min-height:280px; }
      .feature-panel h3 { font-size:25px; }
      .topic-grid, .scenes { grid-template-columns:1fr; }
      .index-panel { padding:23px; }
      .compare {width:100%; font-size:13px; }
      .compare th, .compare td { padding:13px 12px; }
      .compare th:nth-child(3), .compare td:nth-child(3) { display:none; }
      .faq-wrap { padding:8px 17px; }
      .cta { padding:58px 0; }
      .cta-box { padding:25px; }
      .cta-box h2 { font-size:27px; }
      .footer-grid { grid-template-columns:1fr; gap:28px; padding-bottom:32px; }
      .footer-bottom { align-items:flex-start; flex-direction:column; }
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
    }

/* roulang page: category2 */
:root {
      --ink:#241c2a;
      --muted:#766b7d;
      --paper:#f7f4f6;
      --panel:#fffdfd;
      --plum:#302235;
      --plum-2:#44304b;
      --coral:#c85b61;
      --coral-dark:#a94450;
      --line:#e7dfe6;
      --soft:#eee7ef;
      --cream:#fbf7ef;
      --radius:14px;
      --shadow:0 16px 40px rgba(47,31,52,.09);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;color:var(--ink);background:var(--paper);
      font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
      font-size:15px;line-height:1.8;
    }
    a{color:inherit;text-decoration:none}
    a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
      outline:3px solid rgba(200,91,97,.35);outline-offset:3px
    }
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    .container{max-width:1240px}
    .topline{background:var(--plum);color:#fff;padding:18px 0}
    .brand{display:inline-flex;align-items:center;gap:12px;font-weight:800;font-size:19px;line-height:1.2}
    .brand-mark{
      width:35px;height:35px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);
      color:#ffd9cc;border-radius:9px;font-size:14px;font-weight:800
    }
    .top-tools{display:flex;align-items:center;gap:18px}
    .age-note{color:#f0aca3;font-size:13px;font-weight:700;white-space:nowrap}
    .search-mini{display:flex;min-width:220px;border:1px solid rgba(255,255,255,.22);border-radius:8px;overflow:hidden}
    .search-mini input{width:100%;border:0;outline:0;padding:7px 10px;color:#fff;background:rgba(255,255,255,.08)}
    .search-mini input::placeholder{color:#bcb0c0}
    .search-mini button{border:0;padding:0 12px;color:#fff;background:var(--coral-dark)}
    .icon-nav{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 15px rgba(47,31,52,.04)}
    .nav-scroll{display:flex;gap:7px;overflow-x:auto;padding:10px 0;scrollbar-width:none}
    .nav-scroll::-webkit-scrollbar{display:none}
    .nav-item{
      flex:0 0 auto;min-width:112px;min-height:58px;padding:8px 13px;display:flex;align-items:center;
      gap:9px;border:1px solid transparent;border-radius:10px;color:var(--muted);transition:.2s ease
    }
    .nav-item:hover,.nav-item.active{color:var(--coral-dark);border-color:#edd1d3;background:#fff7f5}
    .nav-icon{font-size:20px;line-height:1;color:var(--coral)}
    .nav-label{font-size:13px;font-weight:700;line-height:1.3}
    .page-hero{background:var(--plum);color:#fff;padding:70px 0 58px;position:relative;overflow:hidden}
    .page-hero:after{content:"INDEX";position:absolute;right:4%;bottom:-35px;color:rgba(255,255,255,.045);font-size:130px;font-weight:900;letter-spacing:-5px}
    .eyebrow,.section-kicker{color:var(--coral);font-size:12px;font-weight:800;letter-spacing:1px}
    .eyebrow{color:#f0aca3;margin-bottom:12px}
    h1{font-size:clamp(38px,6vw,72px);line-height:1.08;letter-spacing:-2px;font-weight:900;margin:0 0 20px;max-width:780px;position:relative;z-index:1}
    .hero-copy{max-width:700px;color:#d9cbdc;font-size:17px;line-height:1.9;position:relative;z-index:1}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px;position:relative;z-index:1}
    .btn-main,.btn-quiet,.btn-outline-dark{
      display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;padding:10px 18px;
      border-radius:9px;font-weight:800;border:1px solid transparent;transition:.2s ease
    }
    .btn-main{color:#fff;background:var(--coral)}
    .btn-main:hover{color:#fff;background:#dc7074;transform:translateY(-2px)}
    .btn-quiet{color:#fff;border-color:rgba(255,255,255,.34)}
    .btn-quiet:hover{color:#fff;border-color:#fff;background:rgba(255,255,255,.08)}
    .btn-outline-dark{color:var(--plum);border-color:var(--line);background:#fff}
    .btn-outline-dark:hover{color:var(--coral-dark);border-color:var(--coral)}
    .hero-status{margin-top:42px;border-top:1px solid rgba(255,255,255,.2);padding-top:18px;display:flex;gap:34px;position:relative;z-index:1}
    .status-item strong{display:block;color:#fff;font-size:20px}
    .status-item span{font-size:12px;color:#bcaec0}
    .section{padding:82px 0}
    .section-head{max-width:720px;margin-bottom:36px}
    .section-head h2{margin:8px 0 12px;font-size:clamp(29px,4vw,46px);line-height:1.18;font-weight:900}
    .section-head p{color:var(--muted);font-size:16px}
    .filter-panel,.index-panel,.faq-wrap,.form-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}
    .filter-panel{padding:22px;margin-bottom:30px;box-shadow:var(--shadow)}
    .filter-panel label{display:block;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:6px}
    .filter-panel input,.filter-panel select,.form-panel input,.form-panel select,.form-panel textarea{
      width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:9px 12px
    }
    .filter-panel input:focus,.filter-panel select:focus,.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus{
      border-color:var(--coral);box-shadow:0 0 0 3px rgba(200,91,97,.12);outline:0
    }
    .filter-actions{display:flex;align-items:end;height:100%;gap:8px}
    .filter-actions .btn-main{border:0;width:100%}
    .content-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px}
    .index-panel{padding:26px}
    .index-panel.dark{background:var(--plum-2);color:#fff}
    .index-panel h3{font-size:23px;font-weight:900;margin:0 0 18px}
    .index-panel.dark p,.index-panel.dark small{color:#d8c9db}
    .index-list{list-style:none;margin:0;padding:0}
    .index-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-bottom:1px solid var(--line)}
    .index-panel.dark .index-list li{border-color:rgba(255,255,255,.16)}
    .index-list li:last-child{border-bottom:0}
    .index-list a{font-weight:800}
    .index-list a:hover{color:var(--coral)}
    .index-list small{color:var(--muted);white-space:nowrap}
    .index-row{display:flex;align-items:center;gap:12px}
    .index-no{color:var(--coral);font-size:12px;font-weight:900}
    .tag{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid #ead6d8;border-radius:6px;color:var(--coral-dark);background:#fff7f5;font-size:12px;font-weight:800}
    .side-stack{display:flex;flex-direction:column;gap:18px}
    .side-note{padding:23px;background:var(--cream);border:1px solid #eee3d3;border-radius:var(--radius)}
    .side-note h3{font-size:19px;font-weight:900;margin:0 0 9px}
    .side-note p{margin:0;color:var(--muted);font-size:14px}
    .topic-cloud{display:flex;flex-wrap:wrap;gap:8px}
    .topic-cloud a{padding:7px 10px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}
    .topic-cloud a:hover{border-color:var(--coral);color:var(--coral-dark);background:#fff7f5}
    .path-section{background:#fff}
    .path-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:stretch}
    .path-main{padding:31px;background:var(--plum);color:#fff;border-radius:var(--radius)}
    .path-main h3{font-size:29px;line-height:1.3;font-weight:900;margin:14px 0}
    .path-main p{color:#d9cbdc;margin:0 0 22px}
    .step-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
    .step{border-top:1px solid rgba(255,255,255,.25);padding-top:12px}
    .step b{display:block;color:#f0aca3;font-size:12px}
    .step span{font-weight:800;font-size:14px}
    .path-side{padding:28px;background:var(--soft);border-radius:var(--radius);border:1px solid var(--line)}
    .path-side h3{font-size:21px;font-weight:900;margin:0 0 13px}
    .path-side ul{padding-left:20px;margin:0;color:var(--muted)}
    .faq-wrap{overflow:hidden}
    .accordion-item{border:0;border-bottom:1px solid var(--line);background:transparent}
    .accordion-item:last-child{border-bottom:0}
    .accordion-button{padding:20px 23px;background:transparent;color:var(--ink);font-weight:800;box-shadow:none}
    .accordion-button:not(.collapsed){background:#fff7f5;color:var(--coral-dark);box-shadow:none}
    .accordion-button:focus{box-shadow:none}
    .accordion-body{padding:0 23px 21px;color:var(--muted);font-size:14px}
    .notice{background:#fff0ed;border:1px solid #f0c9c5;border-radius:var(--radius);padding:25px 28px;display:flex;justify-content:space-between;align-items:center;gap:25px}
    .notice h2{font-size:23px;margin:0 0 5px;font-weight:900}
    .notice p{margin:0;color:#765d63}
    .footer{background:var(--plum);color:#fff;padding:58px 0 20px}
    .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}
    .footer-intro{max-width:300px;color:#bcaec0;margin:17px 0 0;font-size:14px}
    .footer h3{font-size:14px;margin:4px 0 14px;color:#f0aca3}
    .footer-links{list-style:none;padding:0;margin:0}
    .footer-links li{margin:7px 0;color:#d9cbdc;font-size:14px}
    .footer-links a:hover{color:#fff}
    .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:#a99baa;font-size:12px}
    .footer-bottom a:hover{color:#fff}
    .reveal{animation:rise .65s ease both}
    @keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
    @media(max-width:991px){
      .content-layout,.path-grid{grid-template-columns:1fr}
      .side-stack{display:grid;grid-template-columns:1fr 1fr}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media(max-width:767px){
      .topline{padding:14px 0}
      .topline .container{align-items:flex-start!important}
      .top-tools{gap:8px;flex-direction:column;align-items:flex-end}
      .age-note{font-size:11px}
      .search-mini{min-width:160px}
      .nav-item{min-width:106px;min-height:52px;padding:7px 10px}
      .page-hero{padding:54px 0 45px}
      h1{font-size:42px;letter-spacing:-1px}
      .hero-copy{font-size:15px}
      .hero-status{gap:18px;flex-wrap:wrap}
      .section{padding:60px 0}
      .filter-panel{padding:17px}
      .filter-actions{margin-top:12px}
      .index-panel{padding:20px}
      .side-stack{display:flex}
      .step-list{grid-template-columns:1fr}
      .path-main,.path-side{padding:23px}
      .notice{display:block;padding:22px}
      .notice .btn-main{margin-top:18px;width:100%}
      .footer-grid{grid-template-columns:1fr;gap:22px}
      .footer-bottom{display:block}
      .footer-bottom a{display:block;margin-top:8px}
    }
    @media(prefers-reduced-motion:reduce){
      *,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
    }

/* roulang page: category1 */
:root{--ink:#241c2a;--muted:#766b7d;--paper:#f7f4f6;--panel:#fffdfd;--plum:#302235;--plum-2:#44304b;--coral:#c85b61;--coral-dark:#a94450;--line:#e7dfe6;--soft:#eee7ef;--cream:#fbf7ef;--radius:14px;--shadow:0 16px 40px rgba(47,31,52,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none;transition:.2s ease}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.container{max-width:1240px}.topline{background:var(--plum);color:#fff;padding:18px 0}.brand{display:inline-flex;align-items:center;gap:12px;font-weight:800;font-size:19px;line-height:1.2}.brand-mark{width:35px;height:35px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);color:#ffd9cc;border-radius:9px;font-size:14px;font-weight:800}.top-tools{display:flex;align-items:center;gap:18px}.age-note{font-size:12px;color:#f0c6c2;white-space:nowrap}.search-mini{display:flex;min-width:220px;border:1px solid rgba(255,255,255,.22);border-radius:8px;overflow:hidden}.search-mini input{width:100%;border:0;outline:0;padding:7px 10px;color:#fff;background:rgba(255,255,255,.08)}.search-mini input::placeholder{color:#bcb0c0}.search-mini button{border:0;padding:0 12px;color:#fff;background:var(--coral-dark);cursor:pointer}.icon-nav{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 15px rgba(47,31,52,.04)}.nav-scroll{display:flex;gap:7px;overflow-x:auto;padding:10px 0;scrollbar-width:none}.nav-scroll::-webkit-scrollbar{display:none}.nav-item{flex:0 0 auto;min-width:112px;min-height:58px;padding:8px 13px;display:flex;align-items:center;gap:9px;border:1px solid transparent;border-radius:10px;color:var(--muted)}.nav-item:hover,.nav-item.active{color:var(--coral-dark);border-color:#edd1d3;background:#fff7f5}.nav-icon{font-size:20px;line-height:1;color:var(--coral)}.nav-label{font-size:13px;font-weight:700;line-height:1.3}.hero{color:#fff;background:var(--plum);padding:70px 0 62px;position:relative;overflow:hidden}.hero:after{content:"18+";position:absolute;right:6%;bottom:-48px;color:rgba(255,255,255,.045);font-size:220px;font-weight:900;line-height:1}.eyebrow,.section-kicker{color:var(--coral);font-size:12px;font-weight:800;letter-spacing:1px}.eyebrow{color:#f0aca3;margin-bottom:13px}.hero h1{position:relative;z-index:1;max-width:760px;margin:0 0 18px;font-size:clamp(38px,6vw,72px);line-height:1.1;letter-spacing:-2px;font-weight:900}.hero-copy{position:relative;z-index:1;max-width:700px;color:#d9cbdc;font-size:17px;line-height:1.9}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px;position:relative;z-index:1}.btn-main,.btn-quiet,.btn-outline-dark{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:9px;font-weight:800;border:1px solid transparent}.btn-main{color:#fff;background:var(--coral)}.btn-main:hover{color:#fff;background:#dc7074;transform:translateY(-2px)}.btn-quiet{color:#fff;border-color:rgba(255,255,255,.34)}.btn-quiet:hover{color:#fff;border-color:#fff;background:rgba(255,255,255,.08)}.btn-outline-dark{color:var(--plum);border-color:var(--line);background:#fff}.btn-outline-dark:hover{color:var(--coral-dark);border-color:var(--coral)}.notice-strip{position:relative;z-index:1;margin-top:40px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:10px;max-width:850px}.notice-strip strong{color:#ffd9cc}.timer{font-variant-numeric:tabular-nums;color:#f4d1ca;font-weight:800;white-space:nowrap}.section{padding:82px 0}.section-head{max-width:730px;margin-bottom:35px}.section-head h2{margin:8px 0 14px;font-size:clamp(30px,4vw,47px);line-height:1.18;font-weight:900}.section-head p{color:var(--muted);font-size:16px}.filter-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.form-label{font-size:12px;font-weight:800;color:var(--muted);margin-bottom:6px}.form-control,.form-select{min-height:46px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.form-control:focus,.form-select:focus{border-color:var(--coral);box-shadow:0 0 0 3px rgba(200,91,97,.14)}.results-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.result-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.result-card{display:flex;flex-direction:column;justify-content:space-between;min-height:220px;padding:25px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);transition:.22s ease}.result-card.wide{grid-column:1/-1;min-height:245px;background:var(--plum-2);color:#fff}.result-card:hover{border-color:#d88b8e;box-shadow:var(--shadow);transform:translateY(-3px)}.result-card p{color:var(--muted);margin:15px 0}.wide p{color:#d8c9db}.card-top,.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.tag{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid #ead6d8;border-radius:6px;color:var(--coral-dark);background:#fff7f5;font-size:12px;font-weight:800}.wide .tag{color:#ffd9cc;border-color:rgba(255,217,204,.3);background:rgba(255,255,255,.08)}.result-card h3{font-size:24px;line-height:1.35;font-weight:900;margin:22px 0 0}.card-meta{color:var(--muted);font-size:12px}.wide .card-meta{color:#cbb8cf}.arrow{color:var(--coral-dark);font-weight:900}.side-panel{padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);height:max-content}.side-panel.dark{color:#fff;background:var(--plum)}.side-panel h3{font-size:20px;font-weight:900;margin:0 0 16px}.index-list{list-style:none;margin:0;padding:0}.index-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.dark .index-list li{border-color:rgba(255,255,255,.15)}.index-list li:last-child{border-bottom:0}.index-list a{font-weight:800}.index-list a:hover{color:var(--coral)}.index-list small{color:var(--muted);white-space:nowrap}.dark small{color:#cbb8cf}.path{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.path-step{padding:22px;border-top:3px solid var(--coral);background:var(--cream);border-radius:10px}.step-no{color:var(--coral-dark);font-size:12px;font-weight:900}.path-step h3{font-size:18px;font-weight:900;margin:10px 0 6px}.path-step p{color:var(--muted);font-size:14px;margin:0}.feedback{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:stretch}.feedback-copy{padding:34px;background:var(--plum-2);border-radius:var(--radius);color:#fff}.feedback-copy h2{font-size:34px;line-height:1.25;font-weight:900}.feedback-copy p{color:#d8c9db}.form-panel{padding:30px;background:#fff}.accordion-item{border:0;border-bottom:1px solid var(--line);background:transparent}.accordion-button{padding:19px 0;background:transparent!important;color:var(--ink)!important;box-shadow:none!important;font-weight:800}.accordion-button:after{filter:hue-rotate(300deg)}.accordion-body{padding:0 0 18px;color:var(--muted)}.compliance{padding:23px 27px;background:#fff2ef;border:1px solid #f0c9c6;border-left:5px solid var(--coral);border-radius:var(--radius)}.compliance strong{display:block;color:var(--coral-dark);font-size:18px}.compliance p{margin:5px 0 0;color:#67525f}.footer{color:#e7dce9;background:var(--plum);padding:58px 0 20px}.footer .brand{color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:35px}.footer-intro{max-width:300px;color:#bcaec0;margin-top:18px}.footer h3{font-size:14px;color:#fff;margin:3px 0 15px}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:8px 0;color:#bcaec0}.footer-links a:hover{color:#f0aca3}.footer-bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid rgba(255,255,255,.14);margin-top:42px;padding-top:18px;color:#a99aaa;font-size:12px}.footer-bottom a:hover{color:#fff}.fade-in{animation:rise .65s ease both}@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}:focus-visible{outline:3px solid #e49a91;outline-offset:3px}@media(max-width:991px){.results-layout{grid-template-columns:1fr}.side-panel{height:auto}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.path{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.topline{padding:14px 0}.topline .container{align-items:flex-start!important}.top-tools{gap:8px}.age-note{display:none}.search-mini{min-width:42px;width:42px;border:0}.search-mini input{display:none}.search-mini button{width:42px;height:42px;border-radius:8px}.hero{padding:52px 0 45px}.hero h1{font-size:clamp(37px,11vw,58px);letter-spacing:-1px}.hero-copy{font-size:15px}.notice-strip{align-items:flex-start;flex-direction:column;gap:4px}.section{padding:60px 0}.result-grid{grid-template-columns:1fr}.result-card.wide{grid-column:auto}.path,.feedback,.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.brand{font-size:16px}.brand-mark{width:32px;height:32px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
