/* roulang page: index */
:root{
      --plum:#4b203d;
      --plum-deep:#32172b;
      --wine:#762f4a;
      --wine-soft:#a85f72;
      --apricot:#f0b18f;
      --cream:#fbf4ed;
      --paper:#fffaf6;
      --mist:#f4e9e6;
      --ink:#2c1e2b;
      --muted:#776873;
      --line:#ead9d7;
      --success:#54715f;
      --warning:#a06443;
      --danger:#a74c57;
      --shadow:0 18px 45px rgba(75,32,61,.10);
      --shadow-soft:0 8px 24px rgba(75,32,61,.07);
      --radius-lg:28px;
      --radius-md:18px;
      --radius-sm:12px;
      --container:1180px;
      --space:clamp(64px,8vw,112px);
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--ink);
      background:var(--cream);
      font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
      font-size:16px;
      line-height:1.75;
      -webkit-font-smoothing:antialiased;
    }
    h1,h2,h3,p,ul{margin:0}
    h1,h2,h3{line-height:1.2;letter-spacing:-.035em}
    h1{font-size:clamp(2.45rem,5.5vw,5.6rem)}
    h2{font-size:clamp(2rem,3.8vw,3.4rem)}
    h3{font-size:1.18rem}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input,select,textarea{font:inherit}
    button{border:0;cursor:pointer}
    :focus-visible{outline:3px solid var(--apricot);outline-offset:4px}
    .container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
    .narrow{max-width:760px}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      color:var(--wine);font-size:.76rem;font-weight:800;letter-spacing:.13em;
      text-transform:uppercase;
    }
    .eyebrow::before{content:"";width:24px;height:2px;background:var(--apricot)}
    .section{padding-block:var(--space)}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:42px}
    .section-head p{max-width:530px;color:var(--muted);font-size:1.03rem}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:10px;
      min-height:48px;padding:0 22px;border-radius:999px;font-weight:750;
      transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;
    }
    .btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(75,32,61,.16)}
    .btn-primary{color:#fff;background:var(--plum)}
    .btn-primary:hover{background:var(--plum-deep)}
    .btn-light{color:var(--plum);background:var(--paper);border:1px solid var(--line)}
    .btn-quiet{color:var(--wine);padding-inline:0;min-height:40px}
    .btn-quiet:hover{box-shadow:none;color:var(--plum)}
    .tag,.status{
      display:inline-flex;align-items:center;width:max-content;padding:5px 10px;
      border-radius:999px;font-size:.75rem;font-weight:750;line-height:1.2;
    }
    .tag{color:var(--wine);background:#f7dfd8}
    .status{gap:6px;color:var(--success);background:#e6efe8}
    .status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
    .site-header{
      position:sticky;top:0;z-index:20;background:rgba(251,244,237,.92);
      border-bottom:1px solid rgba(234,217,215,.85);backdrop-filter:blur(12px)
    }
    .nav-wrap{min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
    .nav-side{display:flex;align-items:center;gap:8px}
    .nav-side.right{justify-content:flex-end}
    .nav-link{padding:9px 13px;color:var(--muted);font-weight:650;border-radius:10px;transition:.2s}
    .nav-link:hover,.nav-link.active{color:var(--plum);background:var(--mist)}
    .brand{display:flex;align-items:center;gap:10px;color:var(--plum);font-weight:900;white-space:nowrap}
    .brand-mark{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:var(--wine);border-radius:11px;font-size:.9rem}
    .brand-text{font-size:1rem}
    .menu-toggle{display:none;background:var(--mist);color:var(--plum);border-radius:10px;width:44px;height:44px;font-size:1.3rem}
    .mobile-menu{display:none;padding:10px 0 20px;border-top:1px solid var(--line)}
    .mobile-menu a{display:block;padding:13px 8px;border-bottom:1px solid var(--line);font-weight:700}
    .hero{padding:clamp(70px,10vw,138px) 0 82px;overflow:hidden}
    .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
    .hero h1{max-width:720px;color:var(--plum);margin:18px 0 24px}
    .hero h1 em{font-style:normal;color:var(--wine)}
    .hero-copy{max-width:650px;color:var(--muted);font-size:1.08rem}
    .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
    .hero-note{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;color:var(--muted);font-size:.84rem}
    .hero-note span{padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,250,246,.65)}
    .vertical-stage{position:relative;min-height:480px}
    .stage-main{
      position:absolute;right:8%;top:0;width:58%;height:430px;padding:22px;
      color:#fff;background:var(--plum);border-radius:34px;box-shadow:var(--shadow);
      transform:rotate(4deg)
    }
    .stage-main::after{content:"";position:absolute;inset:30% -18% auto auto;width:180px;height:180px;border:1px solid rgba(240,177,143,.55);border-radius:50%}
    .stage-top{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:#e8cbd1}
    .stage-number{font-size:4.5rem;font-weight:900;line-height:1;color:var(--apricot);margin-top:68px}
    .stage-title{font-size:1.45rem;font-weight:800;max-width:180px;margin-top:12px}
    .stage-line{height:1px;background:rgba(255,255,255,.22);margin:25px 0}
    .stage-main small{color:#e8cbd1}
    .stage-card{
      position:absolute;left:3%;bottom:25px;width:54%;padding:20px;color:var(--ink);
      background:var(--paper);border:1px solid var(--line);border-radius:22px;
      box-shadow:var(--shadow-soft);transform:rotate(-5deg)
    }
    .stage-card h3{margin:11px 0 6px}.stage-card p{color:var(--muted);font-size:.86rem}
    .stage-orb{position:absolute;right:1%;bottom:0;width:130px;height:130px;background:var(--apricot);border-radius:50%;opacity:.8}
    .metric-band{padding:28px 0;background:var(--plum);color:#fff}
    .metrics{display:grid;grid-template-columns:1.2fr .8fr 1fr 1fr;gap:1px;background:rgba(255,255,255,.18)}
    .metric{padding:18px 24px;background:var(--plum)}
    .metric strong{display:block;font-size:2rem;line-height:1.1;color:var(--apricot)}
    .metric span{display:block;color:#ead3d7;font-size:.84rem;margin-top:7px}
    .matrix{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-template-rows:auto auto;gap:18px}
    .entry-card{padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);transition:.25s}
    .entry-card:hover{transform:translateY(-5px);border-color:var(--wine);box-shadow:var(--shadow)}
    .entry-card.large{grid-row:span 2;padding:34px;background:var(--plum);color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:350px}
    .entry-card.large p{color:#e9d8dc}.entry-card h3{margin:17px 0 10px}
    .entry-card.large h3{font-size:2rem}.entry-card .arrow{display:inline-block;margin-top:24px;font-size:1.35rem;color:var(--apricot);transition:.2s}
    .entry-card:hover .arrow{transform:translateX(6px)}
    .entry-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.78rem}
    .entry-card.large .entry-meta{color:#ead3d7}
    .comparison{background:#f6e7dc}
    .compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid #e8cfc7;border-radius:var(--radius-lg);overflow:hidden;background:var(--paper)}
    .compare-col{padding:34px}.compare-col:first-child{border-right:1px solid #e8cfc7}
    .compare-col h3{margin:16px 0 12px;color:var(--plum)}
    .compare-list{list-style:none;padding:0;margin-top:20px;display:grid:grid;gap:12px}
    .compare-list li{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:.94rem}
    .compare-list li::before{content:"✓";flex:0 0 22px;display:grid;place-items:center;width:22px;height:22px;color:var(--wine);background:#f5ddd5;border-radius:50%;font-size:.75rem;font-weight:900}
    .compare-col.accent{background:var(--wine);color:#fff}
    .compare-col.accent h3{color:#fff}.compare-col.accent .compare-list li{color:#f6e5e3}
    .compare-col.accent .compare-list li::before{color:var(--plum);background:var(--apricot)}
    .compare-label{font-size:.76rem;font-weight:800;letter-spacing:.1em;color:var(--wine)}
    .compare-col.accent .compare-label{color:var(--apricot)}
    .flow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .flow-step{position:relative;padding:25px 22px 22px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md)}
    .flow-step:not(:last-child)::after{content:"→";position:absolute;right:-20px;top:40px;color:var(--wine);font-size:1.5rem;z-index:2}
    .flow-num{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--apricot);color:var(--plum);font-weight:900}
    .flow-step h3{margin:20px 0 9px}.flow-step p{color:var(--muted);font-size:.9rem}
    .feature-zone{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:stretch}
    .feature-copy{padding:38px;background:var(--mist);border-radius:var(--radius-lg)}
    .feature-copy h2{margin:16px 0}.feature-copy p{color:var(--muted)}
    .feature-list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}
    .feature-list li{display:flex;gap:12px;align-items:center;font-weight:700}
    .feature-list b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--wine);color:#fff;font-size:.78rem}
    .showcase{position:relative;min-height:360px;padding:30px;background:var(--plum-deep);border-radius:var(--radius-lg);overflow:hidden}
    .showcase::before,.showcase::after{content:"";position:absolute;border:1px solid rgba(240,177,143,.35);border-radius:50%}
    .showcase::before{width:310px;height:310px;right:-85px;top:-80px}.showcase::after{width:180px;height:180px;left:-70px;bottom:-70px}
    .screen{position:relative;z-index:1;width:76%;margin:0 auto;padding:15px;background:#fff8f2;border-radius:18px;box-shadow:0 16px 35px rgba(0,0,0,.2)}
    .screen-bar{display:flex;gap:5px;margin-bottom:15px}.screen-bar i{width:7px;height:7px;background:#d89b86;border-radius:50%}
    .screen-hero{height:95px;padding:18px;background:#efd6ce;border-radius:12px;color:var(--plum);font-weight:850}
    .screen-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:9px;margin-top:10px}
    .screen-block{height:72px;background:#f5e9e2;border-radius:9px}.screen-block.tall{height:153px;background:var(--wine)}
    .recognition{display:grid;grid-template-columns:1fr 1.4fr;gap:55px;align-items:start}
    .recognition h2{margin:16px 0}.recognition-intro{color:var(--muted)}
    .quote-wall{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .quote{padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md)}
    .quote p{color:var(--muted);font-size:.93rem}.quote strong{display:block;margin-top:17px;color:var(--plum);font-size:.88rem}
    .quote strong::before{content:"";display:inline-block;width:18px;height:2px;background:var(--apricot);vertical-align:middle;margin-right:8px}
    .updates{display:grid;grid-template-columns:1.15fr .85fr;gap:26px}
    .update-list{border-top:1px solid var(--line)}
    .update-item{display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line)}
    .update-date{color:var(--wine);font-size:.82rem;font-weight:800}.update-item h3{font-size:1rem;letter-spacing:0}
    .update-item p{color:var(--muted);font-size:.84rem;margin-top:3px}
    .recommend{padding:30px;background:var(--plum);color:#fff;border-radius:var(--radius-lg)}
    .recommend h3{font-size:1.45rem;margin:15px 0 10px}.recommend p{color:#ead3d7;font-size:.92rem}
    .recommend .tag{margin-top:22px;background:#713750;color:#f8d8cb}
    .faq-wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}
    .faq-intro p{color:var(--muted);margin-top:18px}
    .faq-list{border-top:1px solid var(--line)}
    .faq-item{border-bottom:1px solid var(--line)}
    .faq-question{width:100%;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;color:var(--ink);background:transparent;text-align:left;font-weight:800}
    .faq-question span:last-child{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;color:var(--wine);font-size:1.2rem;transition:.2s}
    .faq-answer{max-height:0;overflow:hidden;color:var(--muted);font-size:.93rem;transition:max-height .3s ease,padding .3s ease}
    .faq-item.open .faq-answer{max-height:180px;padding:0 45px 20px 0}
    .faq-item.open .faq-question span:last-child{transform:rotate(45deg);background:var(--wine);color:#fff}
    .feedback{padding:34px;background:var(--plum);color:#fff;border-radius:var(--radius-lg);display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}
    .feedback h2{margin:15px 0}.feedback-copy p{color:#ead3d7}.feedback-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
    .feedback-points span{padding:7px 11px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#f2d9d6;font-size:.78rem}
    .feedback-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.83rem;color:#f1dfe0;font-weight:700}
    .field input,.field select,.field textarea{width:100%;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.1);color:#fff;border-radius:10px;padding:12px 14px;outline:0}
    .field select option{color:var(--ink);background:#fff}
    .field textarea{min-height:105px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#d8bfc5}
    .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--apricot);box-shadow:0 0 0 3px rgba(240,177,143,.2)}
    .form-message{grid-column:1/-1;display:none;padding:10px 12px;border-radius:9px;background:#e6efe8;color:#31563d;font-size:.85rem}
    .form-message.show{display:block}
    .site-footer{padding:55px 0 25px;background:var(--plum-deep);color:#fff}
    .footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:34px;padding-bottom:42px;border-bottom:1px solid rgba(255,255,255,.16)}
    .footer-brand{font-size:1.1rem;font-weight:850}.footer-brand p{max-width:330px;color:#cdb5bd;font-size:.86rem;font-weight:400;margin-top:15px}
    .footer-title{color:var(--apricot);font-size:.82rem;font-weight:800;margin-bottom:14px}
    .footer-links{display:grid;gap:8px;color:#d7c3c8;font-size:.88rem}.footer-links a:hover{color:#fff}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;color:#bfaab2;font-size:.77rem}
    .age-notice{margin-top:25px;padding:14px 16px;border:1px solid rgba(240,177,143,.25);border-radius:12px;color:#dbc6ca;font-size:.78rem}
    @media(max-width:1024px){
      .hero-grid{gap:35px}.nav-wrap{grid-template-columns:1fr auto}
      .brand{grid-column:1/-1;grid-row:1;justify-self:center}.nav-side{display:none}.menu-toggle{display:block;justify-self:end;grid-column:2;grid-row:1}
      .mobile-menu.open{display:block}.metrics{grid-template-columns:repeat(2,1fr)}.matrix{grid-template-columns:1fr 1fr}.entry-card.large{grid-row:span 2}
      .recognition,.updates,.faq-wrap{grid-template-columns:1fr;gap:30px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}
    }
    @media(max-width:768px){
      .container{width:min(calc(100% - 32px),var(--container))}
      .hero{padding-top:68px}.hero-grid,.feature-zone,.feedback{grid-template-columns:1fr}
      .vertical-stage{min-height:420px;margin-top:20px}.stage-main{right:9%;width:59%;height:370px}.stage-number{margin-top:48px}
      .stage-card{bottom:10px}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:14px}
      .matrix{grid-template-columns:1fr}.entry-card.large{grid-row:auto;min-height:300px}
      .flow{grid-template-columns:1fr 1fr}.flow-step:not(:last-child)::after{display:none}
      .feedback{gap:30px}.footer-grid{grid-template-columns:1fr 1fr}
    }
    @media(max-width:520px){
      h1{font-size:2.7rem}.hero-copy{font-size:1rem}.hero-actions .btn{width:100%}
      .vertical-stage{min-height:360px}.stage-main{height:320px;width:65%;right:4%;padding:17px}.stage-number{font-size:3.5rem;margin-top:35px}
      .stage-title{font-size:1.15rem}.stage-card{width:63%;padding:16px}.stage-orb{width:90px;height:90px}
      .metrics{grid-template-columns:1fr 1fr}.metric{padding:16px 13px}.metric strong{font-size:1.55rem}
      .compare-grid{grid-template-columns:1fr}.compare-col:first-child{border-right:0;border-bottom:1px solid #e8cfc7}.compare-col{padding:25px 22px}
      .flow{grid-template-columns:1fr}.quote-wall{grid-template-columns:1fr}.update-item{grid-template-columns:1fr;gap:5px}.update-item .btn{justify-self:start}
      .feedback{padding:25px 20px}.feedback-form{grid-template-columns:1fr}.field.full{grid-column:auto}.form-message{grid-column:auto}
      .footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}
    }
    @media(max-width:375px){.container{width:calc(100% - 26px)}.brand-text{font-size:.88rem}.metrics{grid-template-columns:1fr}.hero h1{font-size:2.35rem}}

/* roulang page: category1 */
:root{
      --plum:#4b203d;
      --plum-deep:#32172b;
      --wine:#762f4a;
      --wine-soft:#a85f72;
      --apricot:#f0b18f;
      --cream:#fbf4ed;
      --paper:#fffaf6;
      --mist:#f4e9e6;
      --ink:#2c1e2b;
      --muted:#776873;
      --line:#ead9d7;
      --success:#54715f;
      --warning:#a06443;
      --danger:#a74c57;
      --shadow:0 18px 45px rgba(75,32,61,.10);
      --shadow-soft:0 8px 24px rgba(75,32,61,.07);
      --radius-lg:28px;
      --radius-md:18px;
      --radius-sm:12px;
      --container:1180px;
      --space:clamp(64px,8vw,112px);
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;color:var(--ink);background:var(--cream);
      font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
      font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;
    }
    h1,h2,h3,h4,p{margin-top:0}
    h1,h2,h3,h4{line-height:1.25;letter-spacing:-.03em}
    h1{font-size:clamp(2.3rem,5vw,4.7rem)}
    h2{font-size:clamp(1.8rem,3vw,2.8rem)}
    h3{font-size:1.2rem}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input,select,textarea{font:inherit}
    button{border:0;cursor:pointer}
    :focus-visible{outline:3px solid var(--apricot);outline-offset:3px}
    .container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
    .narrow{max-width:760px}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;color:var(--wine);
      font-size:.76rem;font-weight:800;letter-spacing:.13em
    }
    .eyebrow::before{content:"";width:24px;height:2px;background:var(--apricot)}
    .section{padding-block:var(--space)}
    .section-head{
      display:flex;justify-content:space-between;align-items:end;gap:28px;
      margin-bottom:38px
    }
    .section-head p{max-width:540px;color:var(--muted);margin-bottom:0}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:9px;
      min-height:48px;padding:0 22px;border-radius:999px;font-weight:750;
      transition:transform .2s,box-shadow .2s,background .2s,border-color .2s
    }
    .btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(75,32,61,.16)}
    .btn-primary{color:#fff;background:var(--plum)}
    .btn-primary:hover{background:var(--plum-deep)}
    .btn-light{color:var(--plum);background:var(--paper);border:1px solid var(--line)}
    .btn-quiet{color:var(--wine);padding-inline:0;min-height:40px}
    .tag,.status{
      display:inline-flex;align-items:center;width:max-content;padding:5px 10px;
      border-radius:999px;font-size:.75rem;font-weight:750;line-height:1.2
    }
    .tag{color:var(--wine);background:#f7dfd8}
    .status{color:var(--success);background:#e3eee5}
    .status.warn{color:var(--warning);background:#f7eadc}
    .site-header{
      position:sticky;top:0;z-index:20;background:rgba(251,244,237,.93);
      border-bottom:1px solid rgba(234,217,215,.85);backdrop-filter:blur(12px)
    }
    .nav-wrap{
      min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;
      align-items:center;gap:24px
    }
    .nav-side{display:flex;align-items:center;gap:8px}
    .nav-side.right{justify-content:flex-end}
    .nav-link{
      padding:9px 13px;color:var(--muted);font-weight:650;border-radius:10px;
      transition:.2s
    }
    .nav-link:hover,.nav-link.active{color:var(--plum);background:var(--mist)}
    .brand{display:flex;align-items:center;gap:10px;color:var(--plum);font-weight:900;white-space:nowrap}
    .brand-mark{
      display:grid;place-items:center;width:34px;height:34px;color:#fff;
      background:var(--wine);border-radius:11px;font-size:.9rem
    }
    .brand-text{font-size:1rem}
    .menu-toggle{
      display:none;background:var(--mist);color:var(--plum);
      border-radius:10px;width:44px;height:44px;font-size:1.3rem
    }
    .mobile-menu{display:none;padding:10px 0 20px;border-top:1px solid var(--line)}
    .mobile-menu a{display:block;padding:13px 8px;border-bottom:1px solid var(--line);font-weight:700}
    .category-hero{padding:76px 0 58px}
    .category-hero-grid{
      display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:stretch
    }
    .category-hero h1{color:var(--plum);margin:18px 0 22px;max-width:760px}
    .category-hero h1 em{font-style:normal;color:var(--wine)}
    .hero-copy{max-width:680px;color:var(--muted);font-size:1.06rem}
    .hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}
    .index-panel{
      position:relative;min-height:290px;padding:28px;color:#fff;
      background:var(--plum);border-radius:var(--radius-lg);overflow:hidden;
      box-shadow:var(--shadow)
    }
    .index-panel::before{
      content:"";position:absolute;width:230px;height:230px;right:-65px;top:-70px;
      border:1px solid rgba(240,177,143,.55);border-radius:50%
    }
    .index-panel::after{
      content:"";position:absolute;width:130px;height:130px;left:-40px;bottom:-55px;
      background:var(--wine);border-radius:50%;opacity:.7
    }
    .panel-top,.panel-row{position:relative;z-index:1;display:flex;justify-content:space-between;gap:18px}
    .panel-top{color:#ead5da;font-size:.8rem}
    .panel-number{position:relative;z-index:1;color:var(--apricot);font-size:4.8rem;font-weight:900;line-height:1;margin:43px 0 12px}
    .panel-title{position:relative;z-index:1;font-size:1.45rem;font-weight:850}
    .panel-row{margin-top:28px;padding-top:17px;border-top:1px solid rgba(255,255,255,.2);color:#ead5da;font-size:.83rem}
    .filter-section{padding:20px 0 58px}
    .filter-console{
      display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:12px;
      padding:16px;background:var(--paper);border:1px solid var(--line);
      border-radius:var(--radius-md);box-shadow:var(--shadow-soft)
    }
    .field{position:relative}
    .field label{display:block;font-size:.76rem;color:var(--muted);font-weight:750;margin:0 0 4px 4px}
    .field input,.field select,.field textarea{
      width:100%;border:1px solid var(--line);border-radius:11px;
      background:#fffdfb;color:var(--ink);padding:11px 13px;min-height:44px
    }
    .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--wine);outline:3px solid rgba(240,177,143,.35)}
    .filter-actions{display:flex;align-items:end}
    .filter-actions .btn{width:100%}
    .filter-note{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
    .filter-note span{padding:6px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.8rem;background:rgba(255,250,246,.6)}
    .featured{padding-block:35px 88px}
    .featured-grid{display:grid;grid-template-columns:1.28fr .72fr;gap:22px}
    .feature-main{
      min-height:330px;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;
      color:#fff;background:linear-gradient(135deg,var(--plum),var(--wine));
      border-radius:var(--radius-lg);position:relative;overflow:hidden
    }
    .feature-main::before{
      content:"";position:absolute;right:-40px;top:-60px;width:280px;height:280px;
      border:1px solid rgba(255,255,255,.22);border-radius:50%
    }
    .feature-main > *{position:relative;z-index:1}
    .feature-main h2{max-width:560px;margin:17px 0 10px}
    .feature-main p{max-width:600px;color:#f3dfe0;margin-bottom:22px}
    .feature-side{display:grid;gap:22px}
    .mini-entry{
      padding:24px;background:var(--paper);border:1px solid var(--line);
      border-radius:var(--radius-md);transition:.25s
    }
    .mini-entry:hover{transform:translateY(-4px);border-color:var(--wine);box-shadow:var(--shadow-soft)}
    .mini-entry h3{margin:15px 0 7px;color:var(--plum)}
    .mini-entry p{color:var(--muted);font-size:.9rem;margin-bottom:13px}
    .mini-entry a{color:var(--wine);font-weight:800}
    .index-section{padding:0 0 var(--space)}
    .index-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:24px;align-items:start}
    .group-list{padding:22px;background:var(--mist);border-radius:var(--radius-lg)}
    .group-list h2{font-size:1.55rem;color:var(--plum);margin-bottom:20px}
    .group-item{
      display:flex;justify-content:space-between;align-items:center;gap:15px;
      padding:16px 0;border-bottom:1px solid rgba(118,47,74,.15);transition:.2s
    }
    .group-item:last-child{border-bottom:0}
    .group-item:hover{padding-left:6px;color:var(--wine)}
    .group-item strong{display:block}
    .group-item small{display:block;color:var(--muted);font-size:.78rem}
    .group-count{color:var(--wine);font-weight:850}
    .result-list{display:grid;gap:13px}
    .result-item{
      display:grid;grid-template-columns:84px 1fr auto;gap:18px;align-items:center;
      padding:15px;background:var(--paper);border:1px solid var(--line);
      border-radius:var(--radius-md);transition:.25s
    }
    .result-item:hover{transform:translateX(4px);border-color:var(--wine);box-shadow:var(--shadow-soft)}
    .thumb{
      aspect-ratio:1.25;border-radius:11px;background:
      radial-gradient(circle at 70% 30%,rgba(240,177,143,.8),transparent 24%),
      linear-gradient(135deg,#6c3b58,#b8797e);position:relative;overflow:hidden
    }
    .thumb::after{content:"索引";position:absolute;bottom:7px;left:8px;color:#fff;font-size:.7rem;font-weight:800}
    .result-item h3{margin:0 0 7px;color:var(--plum);font-size:1.05rem}
    .result-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.78rem}
    .result-arrow{color:var(--wine);font-size:1.3rem;font-weight:900}
    .empty-state{
      display:none;padding:34px;text-align:center;border:1px dashed var(--line);
      border-radius:var(--radius-md);color:var(--muted);background:rgba(255,250,246,.5)
    }
    .faq-section{background:var(--paper);border-block:1px solid var(--line)}
    .faq-list{max-width:920px;margin:auto;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;
      align-items:center;text-align:left;background:transparent;color:var(--plum);
      padding:21px 4px;font-weight:800
    }
    .faq-icon{font-size:1.5rem;color:var(--wine);transition:.2s}
    .faq-answer{display:none;padding:0 42px 21px 4px;color:var(--muted);font-size:.94rem}
    .faq-item.open .faq-answer{display:block}
    .faq-item.open .faq-icon{transform:rotate(45deg)}
    .feedback-section{padding-block:var(--space)}
    .feedback-wrap{
      display:grid;grid-template-columns:.82fr 1.18fr;gap:35px;padding:36px;
      background:var(--mist);border-radius:var(--radius-lg)
    }
    .feedback-wrap h2{color:var(--plum);margin:15px 0}
    .feedback-wrap p{color:var(--muted)}
    .feedback-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
    .feedback-points span{padding:8px 12px;background:var(--paper);border:1px solid var(--line);border-radius:999px;color:var(--wine);font-size:.82rem;font-weight:700}
    .feedback-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px;background:var(--paper);border-radius:var(--radius-md);border:1px solid var(--line)}
    .feedback-form .full{grid-column:1/-1}
    .form-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;grid-column:1/-1}
    .form-tip{font-size:.78rem;color:var(--muted)}
    .site-footer{padding:55px 0 25px;background:var(--plum-deep);color:#f4e5e5}
    .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}
    .footer-brand{font-size:1.2rem;font-weight:900;color:#fff;margin-bottom:12px}
    .site-footer p{color:#d8c2c8;font-size:.88rem;max-width:380px}
    .age-notice{display:inline-block;padding:9px 12px;color:#f5c7b3;background:rgba(240,177,143,.12);border:1px solid rgba(240,177,143,.3);border-radius:10px;font-size:.78rem}
    .footer-title{font-weight:800;color:#fff;margin-bottom:13px}
    .footer-links{display:grid;gap:8px;color:#d8c2c8;font-size:.88rem}
    .footer-links a:hover{color:var(--apricot)}
    .footer-bottom{
      display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:18px;
      border-top:1px solid rgba(255,255,255,.14);color:#c5adb5;font-size:.76rem
    }
    @media(max-width:1024px){
      .hero-grid,.category-hero-grid{grid-template-columns:1fr 1fr;gap:35px}
      .filter-console{grid-template-columns:1fr 1fr}
      .filter-actions{align-items:stretch}
      .featured-grid,.index-layout{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}
    }
    @media(max-width:768px){
      .container{width:min(calc(100% - 34px),var(--container))}
      .nav-wrap{grid-template-columns:1fr auto;min-height:68px}
      .nav-side{display:none}
      .brand{justify-self:start}
      .brand-text{font-size:.9rem}
      .menu-toggle{display:block;justify-self:end}
      .mobile-menu.open{display:block}
      .category-hero{padding:55px 0 35px}
      .category-hero-grid,.feedback-wrap{grid-template-columns:1fr}
      .category-hero h1{font-size:clamp(2.2rem,10vw,3.5rem)}
      .index-panel{min-height:260px}
      .result-item{grid-template-columns:70px 1fr auto;gap:12px}
      .footer-grid{grid-template-columns:1fr 1fr}
      .footer-bottom{display:grid}
    }
    @media(max-width:520px){
      .section{padding-block:68px}
      .filter-console,.feedback-form{grid-template-columns:1fr}
      .feedback-form .full,.form-foot{grid-column:auto}
      .form-foot{display:grid}
      .result-item{grid-template-columns:1fr auto}
      .result-item .thumb{width:100%;grid-column:1/-1}
      .result-item h3{font-size:1rem}
      .footer-grid{grid-template-columns:1fr}
      .hero-actions .btn{width:100%}
      .feature-main{min-height:360px;padding:25px}
    }
