/* roulang page: index */
:root {
            --berry: #70234f;
            --berry-dark: #401832;
            --coral: #e76b61;
            --orange: #f09a68;
            --cream: #fffaf5;
            --sand: #f5eee8;
            --paper: #ffffff;
            --ink: #302631;
            --muted: #766b75;
            --line: #eadde0;
            --success: #397361;
            --radius-xl: 30px;
            --radius-lg: 22px;
            --radius-md: 16px;
            --shadow: 0 18px 55px rgba(77, 35, 55, .10);
            --shadow-hover: 0 24px 65px rgba(77, 35, 55, .17);
            --gradient: linear-gradient(135deg, #68204c 0%, #b44163 52%, #ef8669 100%);
        }
        *, *::before, *::after { box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body {
            margin: 0;
            color: var(--ink);
            background: var(--cream);
            font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
            font-size: 16px;
            line-height: 1.75;
        }
        a { color: inherit; text-decoration: none; transition: .2s ease; }
        img { display: block; max-width: 100%; }
        button, input, select, textarea { font: inherit; }
        button, .button { cursor: pointer; }
        :focus-visible { outline: 3px solid rgba(231,107,97,.55); outline-offset: 3px; }
        .container { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
        .site-header {
            position: sticky; top: 0; z-index: 20;
            background: rgba(255,250,245,.95);
            border-bottom: 1px solid var(--line);
            backdrop-filter: blur(14px);
        }
        .masthead {
            min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 28px;
        }
        .brand { display: flex; align-items: center; gap: 15px; min-width: 280px; }
        .brand-mark {
            width: 45px; height: 45px; border-radius: 14px; background: var(--gradient);
            color: white; display: grid; place-items: center; font-size: 20px; font-weight: 800;
            box-shadow: 0 8px 20px rgba(112,35,79,.2);
        }
        .brand-name { font-size: 22px; font-weight: 800; letter-spacing: -.04em; line-height: 1.2; }
        .brand-sub { display: block; color: var(--muted); font-size: 11px; letter-spacing: .12em; margin-top: 3px; }
        .desktop-nav { display: flex; align-items: center; gap: 6px; }
        .nav-link { position: relative; padding: 10px 15px; color: var(--muted); font-size: 14px; font-weight: 600; border-radius: 999px; }
        .nav-link:hover, .nav-link.active { color: var(--berry); background: #f7e9eb; }
        .nav-link.active::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: 3px; height: 2px; background: var(--coral); border-radius: 4px; }
        .menu-toggle { display: none; border: 1px solid var(--line); background: white; border-radius: 12px; padding: 8px 12px; color: var(--berry); }
        .hero { padding: 70px 0 42px; }
        .hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 48px; align-items: center; }
        .eyebrow, .section-kicker {
            display: inline-flex; align-items: center; gap: 8px; color: var(--berry);
            font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
        }
        .eyebrow::before, .section-kicker::before { content: ""; width: 26px; height: 2px; background: var(--coral); }
        h1, h2, h3 { margin: 0; color: var(--ink); line-height: 1.18; letter-spacing: -.045em; }
        h1 { font-size: clamp(42px, 6vw, 68px); max-width: 680px; margin: 18px 0; }
        h2 { font-size: clamp(29px, 4vw, 42px); margin-top: 10px; }
        h3 { font-size: 21px; }
        .hero-copy p { max-width: 650px; color: var(--muted); font-size: 17px; margin: 0 0 25px; }
        .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; }
        .button {
            min-height: 46px; padding: 11px 20px; border-radius: 14px; border: 1px solid transparent;
            font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
        }
        .button.primary { color: #fff; background: var(--gradient); box-shadow: 0 10px 22px rgba(150,53,88,.2); }
        .button.primary:hover { transform: translateY(-2px); box-shadow: 0 15px 28px rgba(150,53,88,.28); }
        .button.secondary { color: var(--berry); background: #fff; border-color: #dcbcc8; }
        .button.secondary:hover { background: #f9edf0; transform: translateY(-2px); }
        .age-note { color: var(--muted); font-size: 13px; }
        .hero-panel {
            min-height: 370px; padding: 25px; border-radius: var(--radius-xl); color: white;
            background: var(--gradient); position: relative; overflow: hidden; box-shadow: var(--shadow);
        }
        .hero-panel::before, .hero-panel::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; }
        .hero-panel::before { width: 330px; height: 330px; right: -100px; top: -90px; }
        .hero-panel::after { width: 210px; height: 210px; left: -95px; bottom: -80px; }
        .panel-top, .panel-bottom { position: relative; z-index: 1; display: flex; justify-content: space-between; align-items: center; }
        .panel-label { font-size: 12px; opacity: .78; letter-spacing: .12em; }
        .panel-badge { background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.32); padding: 6px 10px; border-radius: 999px; font-size: 12px; }
        .cover-art { position: relative; z-index: 1; height: 220px; margin: 26px 0 20px; border-radius: 20px; overflow: hidden; background: linear-gradient(145deg, rgba(255,255,255,.22), rgba(59,14,46,.3)), url('/assets/images/abstract-cover.jpg') center/cover; }
        .cover-art span { position: absolute; left: 18px; bottom: 16px; font-size: 25px; font-weight: 800; max-width: 260px; }
        .panel-bottom { font-size: 13px; opacity: .88; }
        .section { padding: 74px 0; }
        .section-head { display: flex; justify-content: space-between; gap: 24px; align-items: end; margin-bottom: 28px; }
        .section-head p { max-width: 590px; margin: 0; color: var(--muted); }
        .metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
        .metric { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 23px; box-shadow: 0 8px 25px rgba(77,35,55,.04); }
        .metric-top { display: flex; justify-content: space-between; align-items: start; }
        .metric strong { font-size: 36px; line-height: 1; color: var(--berry); }
        .metric small { display: block; color: var(--muted); font-size: 13px; margin-top: 10px; }
        .trend { width: 34px; height: 25px; border-bottom: 3px solid var(--coral); border-right: 3px solid var(--coral); transform: skewY(-22deg); opacity: .8; }
        .matrix { display: grid; grid-template-columns: 1.15fr .85fr; gap: 18px; }
        .wide-card, .small-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 25px; transition: .22s ease; }
        .wide-card:hover, .small-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-hover); }
        .wide-card { min-height: 245px; background: linear-gradient(135deg, #fff 40%, #fae9e9); }
        .small-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
        .card-meta { display: flex; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 12px; margin-bottom: 22px; }
        .tag { display: inline-flex; padding: 5px 10px; border-radius: 999px; background: #f8e8eb; color: var(--berry); font-size: 12px; font-weight: 700; }
        .card-number { color: var(--coral); font-weight: 800; font-size: 28px; }
        .card-text { color: var(--muted); font-size: 14px; margin: 10px 0 18px; }
        .text-link { color: var(--berry); font-weight: 800; font-size: 14px; }
        .text-link:hover { color: var(--coral); }
        .comparison { background: var(--berry-dark); color: #fff; border-radius: var(--radius-xl); padding: 38px; }
        .comparison h2, .comparison h3 { color: #fff; }
        .comparison .section-kicker { color: #ffbd9c; }
        .comparison-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 28px; }
        .compare-box { padding: 24px; border-radius: 18px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15); }
        .compare-box.highlight { background: linear-gradient(135deg, rgba(231,107,97,.48), rgba(255,255,255,.09)); }
        .compare-title { color: #ffc0a5; font-size: 13px; font-weight: 800; margin-bottom: 12px; }
        .compare-box p { color: rgba(255,255,255,.78); font-size: 14px; margin: 0; }
        .update-track { display: flex; gap: 12px; overflow-x: auto; margin-top: 24px; padding-bottom: 5px; }
        .update-item { min-width: 190px; padding: 15px; border-radius: 15px; background: rgba(255,255,255,.08); }
        .update-item b { display: block; font-size: 14px; margin-bottom: 5px; }
        .update-item span { color: #d7bdc9; font-size: 12px; }
        .faq-wrap { display: grid; grid-template-columns: .75fr 1.25fr; gap: 45px; align-items: start; }
        .faq-intro p { color: var(--muted); }
        .accordion { background: transparent; margin: 0; }
        .accordion-item { border: 1px solid var(--line); border-radius: 15px; margin-bottom: 10px; overflow: hidden; background: #fff; }
        .accordion-title { color: var(--ink); font-weight: 700; padding: 18px 22px 18px 55px; border: 0; }
        .accordion-title::before { left: 22px; color: var(--coral); }
        .accordion-content { border: 0; color: var(--muted); font-size: 14px; padding: 0 22px 20px 55px; }
        .feedback { background: linear-gradient(135deg, #fff0e7, #f9e9f0); border: 1px solid #efd7d4; border-radius: var(--radius-xl); padding: 38px; }
        .feedback-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 42px; }
        .feedback p { color: var(--muted); }
        label { color: var(--ink); font-size: 13px; font-weight: 700; margin-bottom: 6px; }
        input, select, textarea { border: 1px solid #dfcfd4 !important; border-radius: 12px !important; box-shadow: none !important; background: rgba(255,255,255,.8) !important; min-height: 46px; }
        textarea { min-height: 110px; resize: vertical; }
        .checkline { display: flex; align-items: flex-start; gap: 9px; color: var(--muted); font-size: 12px; }
        .checkline input { min-height: auto; margin-top: 5px; }
        .form-tip { color: var(--success); font-size: 12px; margin-top: 10px; }
        .site-footer { padding: 42px 0 28px; background: #321b2b; color: #eadbe0; }
        .footer-grid { display: grid; grid-template-columns: 1.2fr .8fr .8fr; gap: 35px; padding-bottom: 30px; }
        .site-footer h3 { color: #fff; font-size: 18px; margin-bottom: 10px; }
        .site-footer p, .site-footer a { color: #cdbac3; font-size: 13px; }
        .site-footer a:hover { color: #ffb092; }
        .footer-links { display: grid; gap: 5px; }
        .copyright { border-top: 1px solid rgba(255,255,255,.12); padding-top: 20px; color: #aa929f; font-size: 12px; display: flex; justify-content: space-between; gap: 20px; }
        .floating-bar { position: fixed; right: 22px; bottom: 22px; z-index: 15; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 8px 8px 8px 17px; box-shadow: var(--shadow); display: flex; align-items: center; gap: 12px; font-size: 13px; }
        .floating-bar .button { min-height: 38px; padding: 8px 15px; border-radius: 999px; }
        @media (max-width: 900px) {
            .hero-grid, .faq-wrap, .feedback-grid { grid-template-columns: 1fr; }
            .metrics { grid-template-columns: repeat(2, 1fr); }
            .matrix { grid-template-columns: 1fr; }
            .footer-grid { grid-template-columns: 1fr 1fr; }
        }
        @media (max-width: 680px) {
            .container { width: min(100% - 32px, 560px); }
            .masthead { min-height: 72px; }
            .brand { min-width: 0; gap: 9px; }
            .brand-name { font-size: 17px; }
            .brand-sub { display: none; }
            .brand-mark { width: 38px; height: 38px; border-radius: 11px; font-size: 17px; }
            .menu-toggle { display: block; }
            .desktop-nav { display: none; position: absolute; left: 16px; right: 16px; top: 65px; padding: 10px; background: #fffaf5; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
            .desktop-nav.open { display: grid; }
            .nav-link { padding: 12px 14px; }
            .hero { padding: 42px 0 25px; }
            h1 { font-size: 39px; }
            .hero-copy p { font-size: 15px; }
            .hero-panel { min-height: 325px; padding: 19px; }
            .cover-art { height: 185px; }
            .section { padding: 52px 0; }
            .section-head { display: block; }
            .section-head p { margin-top: 14px; }
            .metrics, .small-grid, .comparison-grid, .footer-grid { grid-template-columns: 1fr; }
            .comparison, .feedback { padding: 24px; }
            .floating-bar { left: 12px; right: 12px; bottom: 12px; justify-content: space-between; }
            .copyright { display: block; }
            .copyright span { display: block; margin-top: 8px; }
        }

/* roulang page: category1 */
:root{
 --berry:#70234f;--berry-dark:#401832;--coral:#e76b61;--orange:#f09a68;
 --cream:#fffaf5;--sand:#f5eee8;--paper:#fff;--ink:#302631;--muted:#766b75;
 --line:#eadde0;--success:#397361;--radius-xl:30px;--radius-lg:22px;--radius-md:16px;
 --shadow:0 18px 55px rgba(77,35,55,.10);--shadow-hover:0 24px 65px rgba(77,35,55,.17);
 --gradient:linear-gradient(135deg,#68204c 0%,#b44163 52%,#ef8669 100%);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75}
a{color:inherit;text-decoration:none;transition:.22s ease}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button,.button{cursor:pointer}
.container{width:min(1200px,calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,250,245,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.masthead{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:15px;min-width:280px}
.brand-mark{width:45px;height:45px;border-radius:14px;background:var(--gradient);color:white;display:grid;place-items:center;font-size:20px;font-weight:800;box-shadow:0 8px 20px rgba(112,35,79,.2)}
.brand-name{font-size:22px;font-weight:800;letter-spacing:-.04em;line-height:1.2}
.brand-sub{display:block;color:var(--muted);font-size:11px;letter-spacing:.12em;margin-top:3px}
.desktop-nav{display:flex;align-items:center;gap:6px}
.nav-link{position:relative;padding:10px 15px;color:var(--muted);font-size:14px;font-weight:600;border-radius:999px}
.nav-link:hover,.nav-link.active{color:var(--berry);background:#f7e9eb}
.nav-link.active:after{content:"";position:absolute;left:16px;right:16px;bottom:3px;height:2px;background:var(--coral);border-radius:4px}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 12px;color:var(--berry)}
.page-hero{padding:48px 0 30px}
.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:22px}
.breadcrumb a{color:var(--berry);font-weight:700}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:end}
.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--berry);font-size:12px;font-weight:800;letter-spacing:.12em}
.eyebrow:before,.section-kicker:before{content:"";width:26px;height:2px;background:var(--coral)}
h1,h2,h3{margin-top:0;line-height:1.22;letter-spacing:-.04em}
h1{font-size:clamp(36px,5vw,60px);margin:15px 0 18px;font-weight:800}
h2{font-size:clamp(28px,3.4vw,38px);margin-bottom:12px}
h3{font-size:21px;margin-bottom:9px}
.hero-copy p{max-width:690px;color:var(--muted);font-size:17px;margin:0 0 22px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{min-height:46px;padding:11px 20px;border-radius:14px;border:1px solid transparent;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.button.primary{color:#fff;background:var(--gradient);box-shadow:0 10px 22px rgba(150,53,88,.2)}
.button.primary:hover{transform:translateY(-2px);box-shadow:0 15px 28px rgba(150,53,88,.28)}
.button.secondary{color:var(--berry);background:#fff;border-color:#dcbcc8}
.button.secondary:hover{background:#f9edf0;transform:translateY(-2px)}
.button:focus,.nav-link:focus,input:focus,select:focus,textarea:focus,summary:focus{outline:3px solid rgba(231,107,97,.38);outline-offset:3px}
.age-note{color:var(--muted);font-size:13px;margin-top:18px}
.feature-panel{min-height:250px;padding:25px;border-radius:var(--radius-xl);color:#fff;background:var(--gradient);position:relative;overflow:hidden;box-shadow:var(--shadow)}
.feature-panel:before,.feature-panel:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.22);border-radius:50%}
.feature-panel:before{width:290px;height:290px;right:-100px;top:-100px}.feature-panel:after{width:170px;height:170px;left:-90px;bottom:-80px}
.panel-content{position:relative;z-index:1}
.panel-badge,.tag{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700}
.panel-badge{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32)}
.panel-title{font-size:28px;font-weight:800;margin:34px 0 13px}
.panel-meta{display:flex;justify-content:space-between;gap:12px;color:#ffe4dd;font-size:13px}
.flash-line{margin-top:23px;padding-top:15px;border-top:1px solid rgba(255,255,255,.25);display:flex;justify-content:space-between;align-items:center}
.countdown{font-weight:800;letter-spacing:.08em;color:#fff2de}
.section{padding:62px 0}
.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:25px}
.section-head p{max-width:580px;margin:0;color:var(--muted)}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px;box-shadow:0 8px 25px rgba(77,35,55,.04)}
.stat-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}
.stat-number{font-size:34px;font-weight:800;color:var(--berry);line-height:1.1;margin:17px 0 8px}
.trend{height:5px;border-radius:99px;background:#f3dfe1;overflow:hidden}.trend i{display:block;height:100%;border-radius:inherit;background:var(--gradient)}
.stat-card p{font-size:12px;color:var(--muted);margin:10px 0 0}
.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:25px}
.filter-label{font-weight:800;color:var(--berry);font-size:14px;margin-right:3px}
select{height:44px;border:1px solid #dfcbd1;border-radius:12px;color:var(--ink);background:#fff;padding:0 36px 0 13px;min-width:145px}
.content-layout{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start}
.index-card{background:var(--berry-dark);color:#fff;border-radius:var(--radius-xl);padding:24px;position:sticky;top:105px}
.index-card h3{font-size:22px}.index-card p{color:#d9bbc8;font-size:13px}
.index-list{list-style:none;margin:22px 0 0;padding:0}.index-list li{border-top:1px solid rgba(255,255,255,.16)}
.index-list a{display:flex;justify-content:space-between;padding:13px 0;color:#f8e9e9;font-size:14px}
.index-list a:hover,.index-list a.active{color:#ffbd9c}
.content-list{display:grid;gap:14px}
.content-item{display:grid;grid-template-columns:170px 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px;transition:.22s ease}
.content-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}
.cover{height:112px;border-radius:15px;background:linear-gradient(135deg,#542044,#c85b6d 55%,#f2a174);position:relative;overflow:hidden}
.cover:after{content:"";position:absolute;width:100px;height:160px;right:15px;top:-25px;border-radius:50%;background:rgba(255,220,202,.2);transform:rotate(24deg)}
.item-info h3{margin:10px 0 5px;font-size:20px}.item-info p{color:var(--muted);font-size:13px;margin:0;max-width:470px}
.tag{background:#f8e8eb;color:var(--berry);margin-right:6px}
.item-meta{text-align:right;color:var(--muted);font-size:12px;white-space:nowrap}
.item-meta strong{display:block;color:var(--coral);font-size:15px;margin-bottom:12px}
.comparison{background:var(--berry-dark);color:#fff;border-radius:var(--radius-xl);padding:34px}
.comparison .section-kicker{color:#ffbd9c}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}
.compare-box{border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:22px;background:rgba(255,255,255,.06)}
.compare-title{color:#ffc0a5;font-size:13px;font-weight:800;margin-bottom:13px}
.compare-box ul{margin:0;padding-left:20px;color:#ddc5cd;font-size:14px}
.compare-box li{margin:5px 0}
.faq-wrap{display:grid;grid-template-columns:.72fr 1.28fr;gap:44px;align-items:start}
.faq-intro p{color:var(--muted)}
.accordion{margin:0;background:transparent}
.accordion-item{border:1px solid var(--line);border-radius:16px;margin-bottom:10px;background:#fff;overflow:hidden}
.accordion-title{font-size:16px;font-weight:800;color:var(--ink);padding:17px 20px 17px 58px;position:relative}
.accordion-title:before{content:attr(data-no);position:absolute;left:20px;color:var(--coral);font-weight:800}
.accordion-content{border-top:1px solid var(--line);padding:15px 20px;color:var(--muted);font-size:14px;background:#fffafc}
.cta-section{padding:0 0 72px}.cta-box{background:linear-gradient(120deg,#f6e3e3,#fff);border:1px solid var(--line);border-radius:var(--radius-xl);padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:35px}
.cta-box p{color:var(--muted);margin-bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-field{display:flex;flex-direction:column;gap:6px}.form-field.full{grid-column:1/-1}.form-field label{font-size:13px;font-weight:800;color:var(--berry)}
input,textarea{width:100%;border:1px solid #dfcbd1;border-radius:12px;background:#fff;color:var(--ink);padding:11px 13px;min-height:46px}
textarea{min-height:92px;resize:vertical}.check{display:flex;gap:9px;align-items:flex-start;color:var(--muted);font-size:12px;line-height:1.5}.check input{width:18px;min-height:18px;margin-top:2px}
.site-footer{background:#2d1b29;color:#f8e9ed;padding:48px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:40px}.site-footer h3{font-size:18px;color:#fff}.site-footer p{color:#cdb7c2;font-size:13px;margin:0}.footer-links{display:grid;gap:8px;color:#ddc5cd;font-size:13px}.footer-links a:hover{color:#ffb29b}.copyright{border-top:1px solid rgba(255,255,255,.14);margin-top:35px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#bda9b4;font-size:12px}
@media(max-width:900px){.hero-grid,.faq-wrap,.cta-box{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.content-layout{grid-template-columns:1fr}.index-card{position:static}.index-list{display:flex;gap:18px;overflow:auto;margin-top:15px}.index-list li{border:0;white-space:nowrap}.index-list a{padding:8px 0}}
@media(max-width:700px){.container{width:min(100% - 32px,1200px)}.masthead{min-height:70px}.brand{min-width:0}.brand-name{font-size:17px}.brand-sub{font-size:9px}.brand-mark{width:39px;height:39px;font-size:17px}.menu-toggle{display:block}.desktop-nav{display:none;position:absolute;left:16px;right:16px;top:76px;padding:12px;flex-direction:column;align-items:stretch;background:#fffaf5;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.desktop-nav.open{display:flex}.nav-link{padding:12px 14px}.page-hero{padding-top:30px}.hero-copy p{font-size:15px}h1{font-size:38px}.section{padding:45px 0}.section-head{display:block}.section-head p{margin-top:10px}.content-item{grid-template-columns:100px 1fr;gap:14px}.cover{height:92px}.item-meta{grid-column:2;text-align:left;display:flex;gap:15px;align-items:center}.item-meta strong{margin:0}.comparison{padding:24px 18px}.comparison-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:25px}.copyright{display:block}.copyright span{display:block;margin-top:7px}}
@media(max-width:480px){.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:15px}.stat-number{font-size:27px}.filter-bar{align-items:stretch}.filter-label{width:100%}select{flex:1;min-width:0}.content-item{grid-template-columns:82px 1fr;padding:10px}.cover{height:82px}.item-info h3{font-size:16px}.item-info p{font-size:12px}.item-meta{font-size:11px}.feature-panel{min-height:225px;padding:21px}.panel-title{font-size:24px}}

/* roulang page: category2 */
:root{
 --berry:#70234f;--berry-dark:#401832;--coral:#e76b61;--orange:#f09a68;
 --cream:#fffaf5;--sand:#f5eee8;--paper:#fff;--ink:#302631;--muted:#766b75;
 --line:#eadde0;--success:#397361;--radius-xl:30px;--radius-lg:22px;--radius-md:16px;
 --shadow:0 18px 55px rgba(77,35,55,.10);--shadow-hover:0 24px 65px rgba(77,35,55,.17);
 --gradient:linear-gradient(135deg,#68204c 0%,#b44163 52%,#ef8669 100%);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75}
a{color:inherit;text-decoration:none;transition:.22s ease}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button,.button{cursor:pointer}
.container{width:min(1200px,calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,250,245,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.masthead{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:15px;min-width:280px}
.brand-mark{width:45px;height:45px;border-radius:14px;background:var(--gradient);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:800;box-shadow:0 8px 20px rgba(112,35,79,.2)}
.brand-name{font-size:22px;font-weight:800;letter-spacing:-.04em;line-height:1.2}
.brand-sub{display:block;color:var(--muted);font-size:11px;letter-spacing:.12em;margin-top:3px}
.desktop-nav{display:flex;align-items:center;gap:6px}
.nav-link{position:relative;padding:10px 15px;color:var(--muted);font-size:14px;font-weight:600;border-radius:999px}
.nav-link:hover,.nav-link.active{color:var(--berry);background:#f7e9eb}
.nav-link.active::after{content:"";position:absolute;left:16px;right:16px;bottom:3px;height:2px;background:var(--coral);border-radius:4px}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 12px;color:var(--berry)}
.page-hero{padding:58px 0 38px}
.breadcrumb{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px;margin-bottom:25px}
.breadcrumb a:hover{color:var(--berry)}
.breadcrumb .current{color:var(--berry);font-weight:700}
.hero-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center}
.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--berry);font-size:12px;font-weight:800;letter-spacing:.12em}
.eyebrow:before,.section-kicker:before{content:"";width:26px;height:2px;background:var(--coral)}
h1,h2,h3{margin:0;color:var(--ink);line-height:1.2;letter-spacing:-.04em}
h1{font-size:clamp(38px,5vw,62px);font-weight:800;margin:16px 0 20px}
h2{font-size:clamp(28px,3.2vw,40px);font-weight:800}
h3{font-size:20px}
.hero-copy p{max-width:650px;color:var(--muted);font-size:17px;margin:0 0 25px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:19px}
.button{min-height:46px;padding:11px 20px;border-radius:14px;border:1px solid transparent;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.button.primary{color:#fff;background:var(--gradient);box-shadow:0 10px 22px rgba(150,53,88,.2)}
.button.primary:hover{transform:translateY(-2px);box-shadow:0 15px 28px rgba(150,53,88,.28)}
.button.secondary{color:var(--berry);background:#fff;border-color:#dcbcc8}
.button.secondary:hover{background:#f9edf0;transform:translateY(-2px)}
.age-note{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px}
.age-note strong{color:var(--berry)}
.cover-card{position:relative;min-height:390px;padding:26px;border-radius:var(--radius-xl);overflow:hidden;color:#fff;background:var(--gradient);box-shadow:var(--shadow)}
.cover-card:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.28);border-radius:22px;pointer-events:none}
.cover-art{height:195px;border-radius:18px;background:linear-gradient(145deg,rgba(255,220,204,.75),rgba(83,24,72,.4) 45%,rgba(33,18,42,.7)),repeating-linear-gradient(125deg,rgba(255,255,255,.12) 0 2px,transparent 2px 16px);position:relative;overflow:hidden}
.cover-art:after{content:"专题 02";position:absolute;right:18px;bottom:16px;font-size:42px;font-weight:800;opacity:.22;letter-spacing:-.08em}
.cover-info{position:relative;z-index:1;padding-top:20px}
.cover-info h2{color:#fff;font-size:27px;margin:10px 0}
.cover-info p{color:#f9dce0;font-size:14px;margin:0;max-width:390px}
.cover-meta{display:flex;justify-content:space-between;gap:15px;margin-top:20px;padding-top:15px;border-top:1px solid rgba(255,255,255,.24);font-size:12px;color:#f6d2d4}
.floating-badge{position:absolute;right:20px;top:22px;z-index:2;padding:8px 12px;border-radius:999px;background:#fff;color:var(--berry);font-size:12px;font-weight:800;box-shadow:0 10px 25px rgba(50,15,35,.18)}
.section{padding:70px 0}
.section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:28px}
.section-head p{max-width:600px;margin:0;color:var(--muted)}
.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:12px}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px;position:relative;overflow:hidden}
.stat-card:after{content:"";position:absolute;right:-25px;bottom:-30px;width:90px;height:90px;border:12px solid #f8e6e8;border-radius:50%}
.stat-number{font-size:32px;font-weight:800;color:var(--berry);line-height:1}
.stat-label{display:block;margin-top:9px;font-size:14px;font-weight:700}
.stat-note{display:block;margin-top:5px;color:var(--muted);font-size:12px}
.progress{height:5px;margin-top:16px;background:#f2e4e5;border-radius:8px;overflow:hidden}
.progress span{display:block;height:100%;background:var(--gradient);border-radius:8px}
.index-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:22px}
.index-panel,.summary-panel,.timeline-card,.feedback-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 10px 34px rgba(77,35,55,.05)}
.index-panel{padding:25px;align-self:start}
.index-panel h3{margin-bottom:17px}
.index-list{list-style:none;margin:0;padding:0}
.index-list li{border-top:1px solid var(--line)}
.index-list a{display:flex;justify-content:space-between;gap:12px;padding:14px 0;color:var(--muted);font-size:14px}
.index-list a:hover,.index-list a.active{color:var(--berry);font-weight:700}
.index-list a span{color:var(--coral);font-size:12px}
.timeline{display:grid;gap:15px}
.timeline-card{display:grid;grid-template-columns:100px 1fr auto;gap:20px;align-items:center;padding:20px 22px;transition:.22s ease}
.timeline-card:hover{transform:translateX(4px);box-shadow:var(--shadow-hover)}
.date-block{color:var(--berry);font-size:13px;font-weight:800}
.date-block strong{display:block;font-size:25px;line-height:1.1}
.timeline-card h3{font-size:19px;margin-bottom:5px}
.timeline-card p{color:var(--muted);font-size:13px;margin:0}
.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.tag{display:inline-flex;padding:4px 10px;border-radius:999px;background:#f8e8eb;color:var(--berry);font-size:12px;font-weight:700}
.view-link{color:var(--berry);font-size:13px;font-weight:800;white-space:nowrap}
.view-link:hover{color:var(--coral)}
.summary-band{background:var(--berry-dark);color:#fff;border-radius:var(--radius-xl);padding:32px}
.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.summary-band h2{color:#fff;font-size:30px;margin:10px 0 13px}
.summary-band p{color:#dcc2cd;margin:0}
.summary-points{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.point{padding:16px;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:rgba(255,255,255,.06)}
.point b{display:block;color:#ffc0a5;font-size:21px}
.point span{font-size:13px;color:#e3cad2}
.topic-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.topic-cloud a{padding:9px 15px;border:1px solid #e1c5cc;border-radius:999px;color:var(--berry);background:#fff;font-size:13px}
.topic-cloud a:hover{background:#f8e5e8;transform:translateY(-2px)}
.faq-wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:start}
.faq-intro p{color:var(--muted)}
.accordion{margin:0;background:transparent}
.accordion-item{border:1px solid var(--line);border-radius:15px;margin-bottom:10px;overflow:hidden;background:#fff}
.accordion-title{padding:17px 20px;color:var(--ink);font-size:15px;font-weight:700;border:0;background:#fff}
.accordion-title:hover,.accordion-item.is-active .accordion-title{color:var(--berry);background:#fff8f6}
.accordion-content{padding:0 20px 18px;color:var(--muted);font-size:14px;border:0;background:#fff}
.cta-section{padding:15px 0 78px}
.feedback-card{padding:34px;background:linear-gradient(135deg,#fff 0%,#f9e7e6 100%)}
.feedback-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:38px}
.feedback-intro p{color:var(--muted);font-size:15px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field.full{grid-column:1/-1}
.form-field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:var(--berry)}
input,select,textarea{width:100%;border:1px solid #decbd0;border-radius:12px;background:#fff;padding:11px 13px;color:var(--ink);outline:none}
textarea{min-height:108px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px rgba(231,107,97,.16)}
.checkline{display:flex;align-items:flex-start;gap:9px;margin-top:14px;color:var(--muted);font-size:12px}
.checkline input{width:17px;height:17px;margin-top:3px;accent-color:var(--berry)}
.form-foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}
.form-hint{color:var(--success);font-size:12px}
.site-footer{background:#2d1d2a;color:#fff;padding:52px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:40px;padding-bottom:36px}
.site-footer h3{color:#fff;font-size:18px;margin-bottom:12px}
.site-footer p{color:#cdbbc5;font-size:13px;margin:0;max-width:390px}
.footer-links{display:grid;gap:7px}
.footer-links a{color:#d9c7cf;font-size:13px}
.footer-links a:hover{color:#ffb39d}
.copyright{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#ae9ba7;font-size:12px}
@media(max-width:1024px){
 .hero-layout{gap:30px}.index-layout{grid-template-columns:1fr}.index-panel{order:2}.stats-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
 .container{width:min(100% - 32px,600px)}.masthead{min-height:72px}.brand{min-width:0}.brand-name{font-size:18px}.brand-sub{font-size:9px}.brand-mark{width:40px;height:40px}
 .menu-toggle{display:block}.desktop-nav{display:none;position:absolute;left:16px;right:16px;top:72px;padding:10px;background:#fffaf5;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.desktop-nav.open{display:flex}.nav-link{display:block}
 .page-hero{padding-top:35px}.hero-layout,.summary-grid,.feedback-layout,.faq-wrap{grid-template-columns:1fr}.cover-card{min-height:340px}.section{padding:52px 0}.section-head{display:block}.section-head p{margin-top:12px}
 .timeline-card{grid-template-columns:75px 1fr}.view-link{grid-column:2}.summary-points{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.copyright{display:block}.copyright span{display:block;margin-top:6px}
}
@media(max-width:520px){
 h1{font-size:38px}.hero-copy p{font-size:15px}.stats-strip{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px}.stat-number{font-size:27px}
 .cover-card{padding:20px}.cover-art{height:155px}.timeline-card{gap:12px;padding:16px}.timeline-card h3{font-size:16px}.date-block strong{font-size:21px}
 .form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.summary-band{padding:25px 20px}.summary-points{gap:8px}.point{padding:12px}.footer-grid{grid-template-columns:1fr}
}
