/* roulang page: index */
:root{
            --brand:#702d4f;
            --brand-deep:#451c35;
            --brand-soft:#f1e3e9;
            --accent:#bd7655;
            --accent-soft:#f6e3d8;
            --bg:#f7f3ee;
            --surface:#fffdfa;
            --surface-warm:#eee5dc;
            --ink:#2b2527;
            --muted:#776d6d;
            --line:#dfd4cb;
            --radius:22px;
            --shadow:0 18px 55px rgba(62,37,43,.11);
            --shadow-soft:0 8px 24px rgba(62,37,43,.08);
        }
        *,*::before,*::after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.82;font-size:15px}
        a{color:inherit;text-decoration:none;transition:.25s ease}
        img{display:block;width:100%;object-fit:cover}
        button,input{font:inherit}
        button{cursor:pointer}
        :focus-visible{outline:3px solid rgba(189,118,85,.55);outline-offset:3px}
        .container{width:min(1180px,calc(100% - 40px));margin:auto}
        .dock-wrap{position:fixed;z-index:50;top:20px;left:0;right:0;pointer-events:none}
        .dock{pointer-events:auto;display:flex;align-items:center;gap:18px;width:min(1120px,calc(100% - 40px));margin:auto;padding:11px 14px 11px 20px;border:1px solid rgba(223,212,203,.9);border-radius:28px;background:rgba(255,253,250,.94);box-shadow:var(--shadow-soft)}
        .logo{font-weight:900;letter-spacing:-.04em;color:var(--brand);line-height:1.12;white-space:nowrap}
        .logo small{display:block;font-size:10px;letter-spacing:.08em;color:var(--muted);font-weight:600;margin-top:3px}
        .nav-links{display:flex;align-items:center;gap:5px;margin-left:auto}
        .nav-link{padding:9px 14px;border-radius:14px;color:var(--muted);font-weight:700}
        .nav-link:hover,.nav-link.active{background:var(--brand-soft);color:var(--brand)}
        .nav-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:7px 10px}
        .nav-search input{width:112px;border:0;outline:0;background:transparent;font-size:13px;color:var(--ink)}
        .menu-button{display:none;border:0;background:var(--brand-soft);color:var(--brand);border-radius:12px;width:42px;height:42px}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 20px;border-radius:14px;border:1px solid transparent;font-weight:800;transition:.25s ease}
        .btn-primary{background:var(--brand);color:#fff}
        .btn-primary:hover{background:var(--brand-deep);transform:translateY(-2px);box-shadow:0 10px 22px rgba(112,45,79,.24)}
        .btn-outline{border-color:var(--brand);color:var(--brand);background:transparent}
        .btn-outline:hover{background:var(--brand-soft);transform:translateY(-2px)}
        .btn-light{background:#fff8f1;color:var(--brand)}
        .btn-light:hover{background:#fff;transform:translateY(-2px)}
        .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border-radius:99px;background:var(--accent-soft);color:#8e4c35;font-size:12px;font-weight:800}
        .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}
        .section{padding:104px 0}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:40px}
        .section-head h2{margin:12px 0 0;font-size:clamp(28px,4vw,44px);line-height:1.25;letter-spacing:-.045em}
        .section-head p{max-width:560px;margin:0;color:var(--muted)}
        .hero{padding:164px 0 88px;background:radial-gradient(circle at 85% 20%,#ead7d9 0,transparent 30%),var(--bg)}
        .hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:70px;align-items:center}
        .hero h1{font-size:clamp(42px,6vw,76px);line-height:1.13;letter-spacing:-.075em;margin:20px 0 22px;max-width:680px}
        .hero h1 em{color:var(--brand);font-style:normal}
        .hero-copy{font-size:17px;color:var(--muted);max-width:590px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 25px}
        .hero-note{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:13px}
        .hero-note span{display:inline-flex;align-items:center;gap:6px}
        .hero-note b{color:var(--brand)}
        .visual-stage{position:relative;min-height:440px;padding:25px;border-radius:32px;background:#e9ded5;box-shadow:var(--shadow);overflow:hidden}
        .visual-stage::before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:#d4b6b7;right:-70px;top:-80px}
        .poster-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:14px;height:390px}
        .poster{position:relative;overflow:hidden;border-radius:19px;background:linear-gradient(145deg,#51273f,#b06f61 55%,#e6b995);min-height:170px}
        .poster::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(35,19,28,.72),transparent 60%)}
        .poster.large{grid-row:span 2;background:linear-gradient(155deg,#3b253c,#814964 45%,#d89571)}
        .poster .poster-copy{position:absolute;z-index:2;bottom:15px;left:16px;color:#fff;font-weight:800;font-size:16px}
        .poster .poster-copy small{display:block;color:#f3ded2;font-size:11px;font-weight:500;margin-top:3px}
        .floating-tag{position:absolute;z-index:3;top:22px;right:20px;background:#fffaf5;color:var(--brand);padding:10px 13px;border-radius:13px;box-shadow:var(--shadow-soft);font-weight:800;font-size:12px}
        .stage-status{position:absolute;z-index:3;left:38px;bottom:32px;background:rgba(255,253,250,.94);padding:12px 16px;border-radius:15px;font-size:12px;box-shadow:var(--shadow-soft)}
        .stage-status b{color:var(--brand);font-size:16px}
        .countdown{padding:28px 0;background:var(--brand-deep);color:#fff}
        .countdown-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}
        .countdown h2{font-size:24px;margin:0 0 3px}
        .countdown p{margin:0;color:#d9c4cb;font-size:13px}
        .timer{display:flex;gap:10px}
        .time-box{min-width:65px;padding:8px 10px;text-align:center;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.08)}
        .time-box b{display:block;font-size:24px;line-height:1.2}.time-box span{font-size:11px;color:#d9c4cb}
        .feature-wall{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px}
        .feature-card{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);transition:.25s}
        .feature-card:hover,.content-card:hover,.plan:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
        .feature-card.main{background:var(--brand);color:#fff;min-height:250px}
        .feature-card.main p{color:#e5d4da}.feature-card h3{margin:18px 0 8px;font-size:22px;line-height:1.35}.feature-card p{margin:0;color:var(--muted);font-size:14px}
        .icon-box{width:42px;height:42px;border-radius:13px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:900}
        .main .icon-box{background:rgba(255,255,255,.14);color:#f7d3bd}
        .topic-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.tag{display:inline-flex;padding:5px 10px;border-radius:99px;background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:800}.tag.dark{background:rgba(255,255,255,.13);color:#fff}
        .scenario{background:var(--surface-warm)}
        .scenario-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
        .scenario-list{display:grid;gap:12px}.scenario-item{display:flex;gap:15px;padding:18px;border-bottom:1px solid var(--line)}.scenario-item b{color:var(--brand);font-size:13px}.scenario-item h3{margin:0;font-size:18px}.scenario-item p{margin:3px 0 0;color:var(--muted);font-size:13px}
        .scenario-panel{min-height:300px;padding:28px;border-radius:26px;background:var(--brand-deep);color:#fff;position:relative;overflow:hidden}.scenario-panel::after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:-60px;bottom:-100px}.filter-line{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.filter-line span{padding:9px 13px;border-radius:11px;background:rgba(255,255,255,.1);font-size:12px;color:#ead9de}
        .selection{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.content-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface);transition:.25s;display:flex;flex-direction:column}.cover{height:210px;position:relative;background:linear-gradient(135deg,#412337,#965d6a 60%,#d69773)}.cover.alt{background:linear-gradient(135deg,#312c3e,#6d5870 55%,#c48c72)}.cover::after{content:"精选";position:absolute;top:15px;left:15px;padding:5px 9px;border-radius:8px;background:#fff8ef;color:var(--brand);font-size:11px;font-weight:900}.card-body{padding:20px}.card-body h3{margin:0 0 7px;font-size:20px}.card-body p{margin:0;color:var(--muted);font-size:13px}.meta{display:flex;justify-content:space-between;margin-top:16px;color:var(--muted);font-size:12px}.side-stack{display:grid;gap:18px}.side-stack .content-card{flex-direction:row}.side-stack .cover{width:38%;height:auto;min-height:130px}.side-stack .card-body{flex:1;padding:16px}.side-stack h3{font-size:16px}
        .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.plan{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:.25s;display:flex;flex-direction:column}.plan.featured{border:2px solid var(--brand);position:relative}.plan.featured::before{content:"更适合持续浏览";position:absolute;right:18px;top:-14px;padding:5px 10px;background:var(--accent);color:#fff;border-radius:99px;font-size:11px;font-weight:800}.plan h3{margin:0;font-size:21px}.price{font-size:32px;color:var(--brand);font-weight:900;margin:18px 0 4px}.price small{font-size:12px;color:var(--muted);font-weight:500}.plan p{color:var(--muted);font-size:13px;margin:0 0 20px}.benefits{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:10px;color:#5f5555;font-size:13px}.benefits li::before{content:"✓";color:var(--accent);font-weight:900;margin-right:8px}.plan .btn{margin-top:auto}
        .news-layout{display:grid;grid-template-columns:1fr .85fr;gap:40px}.news-list{border-top:1px solid var(--line)}.news-item{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.news-item h3{margin:0;font-size:16px}.news-item p{margin:4px 0 0;color:var(--muted);font-size:13px}.news-item time{font-size:12px;color:var(--muted);white-space:nowrap}.news-feature{padding:28px;border-radius:var(--radius);background:var(--accent-soft)}.news-feature h3{font-size:24px;line-height:1.4;margin:12px 0}.news-feature p{color:#705d58;font-size:14px}
        .cta{background:var(--brand);color:#fff;border-radius:30px;padding:54px 60px;display:flex;justify-content:space-between;align-items:center;gap:30px;overflow:hidden;position:relative}.cta::after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.16);border-radius:50%;right:-80px;top:-140px}.cta h2{font-size:clamp(28px,4vw,43px);line-height:1.25;margin:0 0 10px}.cta p{margin:0;color:#e5d4da;max-width:610px}
        .faq-list{max-width:850px;margin:auto;display:grid;gap:10px}.faq-item{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;border:0;background:transparent;padding:19px 22px;color:var(--ink);font-weight:800}.faq-q span:last-child{color:var(--brand);font-size:22px;transition:.2s}.faq-a{display:none;padding:0 22px 20px;color:var(--muted);font-size:14px}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
        footer{background:#2e2529;color:#e9dfe0;padding:58px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px}.footer-logo{font-size:22px;font-weight:900;color:#fff}.footer p{color:#bcaeb1;font-size:13px}.footer h3{font-size:14px;color:#fff;margin:0 0 13px}.footer a{display:block;color:#bcaeb1;font-size:13px;margin:8px 0}.footer a:hover{color:#f0bfa9}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#a99b9f;font-size:12px}
        @media(max-width:1024px){.hero-grid{gap:35px}.dock{width:calc(100% - 28px)}.feature-wall{grid-template-columns:1fr 1fr}.feature-card.main{grid-column:span 2}.selection,.news-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}}
        @media(max-width:768px){.container{width:min(100% - 28px,620px)}.section{padding:70px 0}.dock-wrap{top:10px}.dock{padding:9px 10px 9px 14px}.logo{font-size:13px}.logo small{display:none}.nav-links{display:none;position:absolute;top:64px;left:0;right:0;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.show{display:flex}.nav-link{text-align:center}.nav-search{display:none}.menu-button{display:block;margin-left:auto}.hero{padding-top:125px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(39px,11vw,60px)}.visual-stage{min-height:350px}.poster-grid{height:300px}.poster .poster-copy{font-size:14px}.countdown-inner{align-items:flex-start;flex-direction:column}.timer{width:100%}.time-box{flex:1}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:12px}.scenario-grid{grid-template-columns:1fr;gap:25px}.feature-wall{grid-template-columns:1fr}.feature-card.main{grid-column:auto}.plans{grid-template-columns:1fr}.cta{display:block;padding:38px 25px}.cta .btn{margin-top:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-bottom{display:block}.footer-bottom div+div{margin-top:8px}}
        @media(max-width:520px){body{font-size:14px}.hero-actions .btn{width:100%}.visual-stage{padding:15px;min-height:300px}.poster-grid{gap:9px;height:270px}.stage-status{left:23px;bottom:22px}.side-stack .cover{width:34%}.news-item{display:block}.news-item time{display:block;margin-top:6px}.footer-grid{grid-template-columns:1fr}.section-head h2{font-size:31px}}

/* roulang page: category1 */
:root{
      --brand:#702d4f;
      --brand-deep:#451c35;
      --brand-soft:#f1e3e9;
      --accent:#bd7655;
      --accent-soft:#f6e3d8;
      --bg:#f7f3ee;
      --surface:#fffdfa;
      --surface-warm:#eee5dc;
      --ink:#2b2527;
      --muted:#776d6d;
      --line:#dfd4cb;
      --radius:22px;
      --shadow:0 18px 55px rgba(62,37,43,.11);
      --shadow-soft:0 8px 24px rgba(62,37,43,.08);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.82;font-size:15px}
    a{color:inherit;text-decoration:none;transition:.25s ease}
    button,input{font:inherit}
    button{cursor:pointer}
    input::placeholder{color:#a09592}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}
    .dock-wrap{position:fixed;z-index:30;top:20px;left:0;right:0;padding:0 20px}
    .dock{width:min(1140px,100%);min-height:70px;margin:auto;padding:12px 16px 12px 22px;display:flex;align-items:center;gap:20px;background:rgba(255,253,250,.96);border:1px solid rgba(223,212,203,.9);border-radius:26px;box-shadow:var(--shadow-soft)}
    .logo{font-weight:900;letter-spacing:-.04em;color:var(--brand);line-height:1.12;white-space:nowrap}
    .logo small{display:block;font-size:10px;letter-spacing:.08em;color:var(--muted);font-weight:600;margin-top:3px}
    .nav-links{display:flex;align-items:center;gap:5px;margin-left:auto}
    .nav-link{padding:9px 14px;border-radius:14px;color:var(--muted);font-weight:700;white-space:nowrap}
    .nav-link:hover,.nav-link.active{background:var(--brand-soft);color:var(--brand)}
    .nav-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:7px 10px}
    .nav-search input{width:112px;border:0;outline:0;background:transparent;font-size:13px;color:var(--ink)}
    .menu-button{display:none;border:0;background:var(--brand-soft);color:var(--brand);border-radius:12px;width:42px;height:42px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 20px;border-radius:14px;border:1px solid transparent;font-weight:800;transition:.25s ease}
    .btn:focus-visible,.nav-link:focus-visible,.filter-btn:focus-visible,.faq-question:focus-visible{outline:3px solid rgba(189,118,85,.42);outline-offset:3px}
    .btn-primary{background:var(--brand);color:#fff}
    .btn-primary:hover{background:var(--brand-deep);transform:translateY(-2px);box-shadow:0 10px 22px rgba(112,45,79,.24)}
    .btn-primary:active{transform:translateY(0)}
    .btn-outline{border-color:var(--brand);color:var(--brand);background:transparent}
    .btn-outline:hover{background:var(--brand-soft);transform:translateY(-2px)}
    .btn-light{background:#fff8f1;color:var(--brand)}
    .btn-light:hover{background:#fff;transform:translateY(-2px)}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border-radius:99px;background:var(--accent-soft);color:#8e4c35;font-size:12px;font-weight:800}
    .eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}
    .hero{padding:162px 0 76px;background:radial-gradient(circle at 90% 15%,#ead7d9 0,transparent 30%),var(--bg)}
    .hero-grid{display:grid;grid-template-columns:1fr .92fr;gap:64px;align-items:center}
    .hero h1{font-size:clamp(40px,5.6vw,70px);line-height:1.16;letter-spacing:-.075em;margin:20px 0 20px;max-width:680px}
    .hero h1 em{font-style:normal;color:var(--brand)}
    .hero-copy{max-width:610px;color:var(--muted);font-size:17px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 24px}
    .hero-note{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:13px}
    .hero-note b{color:var(--brand)}
    .hero-panel{position:relative;min-height:400px;padding:25px;border-radius:30px;background:var(--brand-deep);color:#fff;box-shadow:var(--shadow);overflow:hidden}
    .hero-panel:after{content:"";position:absolute;width:260px;height:260px;right:-95px;top:-90px;border-radius:50%;background:#8b4967;opacity:.55}
    .panel-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
    .panel-title{font-size:18px;font-weight:800}
    .panel-caption{font-size:12px;color:#dfcbd3}
    .rank-list{position:relative;z-index:1;display:grid;gap:10px}
    .rank-item{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.08)}
    .rank-no{width:28px;height:28px;display:grid;place-items:center;border-radius:10px;background:rgba(246,227,216,.16);color:#f6cdbb;font-weight:900}
    .rank-name{font-weight:700}
    .rank-name small{display:block;margin-top:2px;color:#d4bdc6;font-size:11px;font-weight:500}
    .rank-state{font-size:11px;color:#f4c9b8}
    .panel-foot{position:absolute;z-index:1;left:25px;right:25px;bottom:22px;display:flex;justify-content:space-between;color:#ddcbd1;font-size:12px}
    .section{padding:100px 0}
    .section-warm{background:var(--surface-warm)}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:38px}
    .section-head h2{margin:12px 0 0;font-size:clamp(28px,4vw,44px);line-height:1.25;letter-spacing:-.045em}
    .section-head p{max-width:560px;margin:0;color:var(--muted)}
    .crumbs{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:24px}
    .crumbs a:hover{color:var(--brand)}
    .directory-shell{display:grid;grid-template-columns:245px 1fr;gap:34px;align-items:start}
    .filter-side{position:sticky;top:110px;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-soft)}
    .filter-side h3{margin:0 0 18px;font-size:18px}
    .filter-label{display:block;margin:18px 0 8px;color:var(--muted);font-size:12px;font-weight:800}
    .filter-group{display:flex;flex-wrap:wrap;gap:7px}
    .filter-btn{padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);font-size:12px;transition:.2s}
    .filter-btn:hover,.filter-btn.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}
    .filter-reset{margin-top:20px;border:0;background:transparent;color:var(--brand);font-size:12px;font-weight:800}
    .directory-main{min-width:0}
    .directory-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;padding:13px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
    .result-note{color:var(--muted);font-size:13px}
    .sort-select{border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 10px;color:var(--ink);font-size:13px}
    .feature-banner{display:grid;grid-template-columns:1.15fr .85fr;min-height:230px;margin-bottom:24px;border-radius:24px;overflow:hidden;background:var(--brand);color:#fff}
    .banner-copy{padding:30px}
    .banner-copy h3{margin:18px 0 8px;font-size:27px;line-height:1.3}
    .banner-copy p{margin:0;color:#ead9df;font-size:14px;max-width:470px}
    .banner-art{position:relative;background:linear-gradient(135deg,#9e657b,#532542 65%,#301629)}
    .banner-art:before,.banner-art:after{content:"";position:absolute;border-radius:50%;filter:blur(1px)}
    .banner-art:before{width:190px;height:190px;right:20px;top:20px;background:rgba(246,227,216,.2)}
    .banner-art:after{width:110px;height:110px;left:30px;bottom:18px;background:rgba(189,118,85,.55)}
    .content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
    .content-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface);transition:.25s;display:flex;flex-direction:column}
    .content-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
    .poster{position:relative;aspect-ratio:16/9;overflow:hidden;background:#6d3e56}
    .poster:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(35,17,28,.62))}
    .poster-a{background:radial-gradient(circle at 70% 25%,#e4b49e 0 9%,transparent 10%),linear-gradient(135deg,#4b243e,#a66a68 58%,#e6b79c)}
    .poster-b{background:radial-gradient(circle at 30% 35%,#d9b3b5 0 11%,transparent 12%),linear-gradient(135deg,#25202a,#735268 56%,#bd7655)}
    .poster-c{background:radial-gradient(circle at 65% 60%,#f0d6ba 0 8%,transparent 9%),linear-gradient(135deg,#382333,#7f4c58 55%,#c98b6f)}
    .poster-d{background:radial-gradient(circle at 28% 60%,#d8a4a3 0 10%,transparent 11%),linear-gradient(135deg,#291d2b,#5e3857 58%,#d5a084)}
    .poster-label{position:absolute;z-index:1;left:15px;bottom:13px;color:#fff;font-size:12px;font-weight:800}
    .card-body{padding:19px}
    .card-body h3{margin:12px 0 7px;font-size:19px;line-height:1.4}
    .card-body p{margin:0;color:var(--muted);font-size:13px}
    .card-tags{display:flex;flex-wrap:wrap;gap:6px}
    .tag{display:inline-flex;padding:5px 9px;border-radius:99px;background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:800}
    .tag.accent{background:var(--accent-soft);color:#8e4c35}
    .meta{display:flex;justify-content:space-between;gap:10px;margin-top:16px;color:var(--muted);font-size:12px}
    .meta a{color:var(--brand);font-weight:800}
    .load-more{display:flex;justify-content:center;margin-top:30px}
    .empty-state{display:none;margin-top:20px;padding:28px;text-align:center;border:1px dashed var(--line);border-radius:18px;color:var(--muted);background:rgba(255,253,250,.6)}
    .faq-list{max-width:860px;margin:auto;border-top:1px solid var(--line)}
    .faq-item{border-bottom:1px solid var(--line)}
    .faq-question{width:100%;padding:21px 4px;border:0;background:transparent;display:flex;justify-content:space-between;gap:20px;text-align:left;color:var(--ink);font-weight:800}
    .faq-question span:last-child{color:var(--brand);font-size:22px;line-height:1;transition:.25s}
    .faq-answer{display:none;padding:0 40px 20px 4px;color:var(--muted);font-size:14px}
    .faq-item.open .faq-answer{display:block}
    .faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
    .cta{padding:76px 0;background:var(--brand-deep);color:#fff}
    .cta-box{display:flex;justify-content:space-between;align-items:center;gap:30px}
    .cta h2{margin:0 0 9px;font-size:clamp(28px,4vw,45px);line-height:1.25;letter-spacing:-.05em}
    .cta p{margin:0;color:#e4d2d8;max-width:620px}
    footer{padding:64px 0 24px;background:#2d2428;color:#eee1e2}
    .footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:36px;padding-bottom:48px}
    .footer-logo{font-size:22px;font-weight:900;color:#fff;margin-bottom:13px}
    footer p{margin:8px 0;color:#cbbbc0;font-size:13px;max-width:330px}
    footer h3{margin:0 0 14px;color:#fff;font-size:14px}
    footer a{display:block;margin:8px 0;color:#cbbbc0;font-size:13px}
    footer a:hover{color:#f4c9b8}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.13);color:#ac999f;font-size:12px}
    @media(max-width:1024px){
      .dock{gap:12px}.nav-search input{width:86px}
      .hero-grid{gap:38px}.directory-shell{grid-template-columns:210px 1fr}
    }
    @media(max-width:768px){
      .container{width:min(100% - 28px,600px)}
      .dock-wrap{top:12px;padding:0 12px}.dock{padding:10px 12px 10px 16px;border-radius:20px}
      .logo{font-size:14px}.logo small{font-size:8px}.nav-links{display:none;position:absolute;top:76px;left:0;right:0;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft);flex-direction:column;align-items:stretch}
      .nav-links.show{display:flex}.nav-link{padding:12px 14px}.nav-search{margin-left:auto}.menu-button{display:block}.dock>.btn{display:none}
      .hero{padding:135px 0 60px}.hero-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(39px,12vw,62px)}
      .hero-panel{min-height:360px}.section{padding:68px 0}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:14px}
      .directory-shell{grid-template-columns:1fr}.filter-side{position:static}.feature-banner{grid-template-columns:1fr}.banner-art{min-height:130px}
      .content-grid{grid-template-columns:1fr}.directory-toolbar{align-items:flex-start;flex-direction:column}.sort-select{width:100%}
      .cta-box{display:block}.cta .btn{margin-top:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom div+div{margin-top:8px}
    }
    @media(max-width:520px){
      body{font-size:14px}.container{width:calc(100% - 24px)}.nav-search{display:none}
      .rank-item{grid-template-columns:28px 1fr}.rank-state{display:none}.hero-note{display:block}.hero-note span{margin:4px 12px 4px 0}
      .poster{aspect-ratio:15/9}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}
      .faq-question{padding:18px 0;font-size:14px}.faq-answer{padding-right:10px}
    }
