/* roulang page: index */
:root{
            --bg:#171416;
            --bg-soft:#211b1f;
            --panel:#251e23;
            --panel-2:#2c2329;
            --text:#f5efe8;
            --muted:#b8aeb4;
            --faint:#867a82;
            --line:#40353d;
            --berry:#9b315f;
            --berry-light:#bd4e7c;
            --amber:#d39a62;
            --green:#7bb3a0;
            --error:#d98268;
            --radius:14px;
            --shadow:0 18px 45px rgba(0,0,0,.24);
            --max:1240px;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{background:var(--bg);color:var(--text);font-family:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75;font-size:15px}
        a{color:inherit;text-decoration:none}
        button,input,select,textarea{font:inherit}
        button{cursor:pointer}
        img{display:block;max-width:100%}
        .container{width:min(var(--max),calc(100% - 48px));margin:auto}
        .eyebrow{display:flex;align-items:center;gap:10px;color:var(--amber);font-size:12px;letter-spacing:.14em;font-weight:700}
        .eyebrow:before{content:"";width:25px;height:1px;background:var(--amber)}
        .section{padding:106px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}
        .section-head h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(30px,4vw,52px);line-height:1.15;letter-spacing:-.04em}
        .section-head p{max-width:470px;color:var(--muted);font-size:14px}
        .topbar{border-bottom:1px solid var(--line);background:rgba(23,20,22,.95)}
        .brand-row{height:76px;display:flex;align-items:center;justify-content:space-between}
        .logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;letter-spacing:-.03em}
        .logo-mark{width:34px;height:34px;border-radius:9px;background:var(--berry);display:grid;place-items:center;color:#fff;font-weight:900;box-shadow:7px 7px 0 rgba(211,154,98,.18)}
        .utility{display:flex;align-items:center;gap:12px}
        .utility a,.age-pill{border:1px solid var(--line);color:var(--muted);padding:7px 13px;border-radius:8px;font-size:12px;transition:.2s}
        .utility a:hover{border-color:var(--berry-light);color:var(--text)}
        .age-pill{color:var(--amber);border-color:rgba(211,154,98,.45)}
        .channel-row{border-top:1px solid rgba(64,53,61,.6);overflow:auto}
        .channels{display:flex;gap:8px;min-height:52px;align-items:center;white-space:nowrap}
        .channels a{padding:7px 15px;border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}
        .channels a:hover,.channels a:focus-visible{color:var(--text);background:var(--panel-2);outline:none}
        .channels a.active{color:#fff;background:var(--berry);box-shadow:0 5px 18px rgba(155,49,95,.25)}
        .hero{position:relative;overflow:hidden;padding:92px 0 110px;border-bottom:1px solid var(--line)}
        .hero:after{content:"";position:absolute;inset:auto -10% -180px 35%;height:390px;background:radial-gradient(ellipse,rgba(155,49,95,.2),transparent 65%);pointer-events:none}
        .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;position:relative;z-index:1}
        .hero h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(46px,7vw,88px);line-height:1.04;letter-spacing:-.07em;margin:20px 0 25px;max-width:760px}
        .hero h1 span{color:var(--berry-light)}
        .hero-copy{max-width:630px;color:var(--muted);font-size:17px;line-height:1.9}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0 28px}
        .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:9px;border:1px solid transparent;font-weight:700;font-size:13px;transition:.22s}
        .btn-primary{background:var(--berry);color:#fff}
        .btn-primary:hover{background:var(--berry-light);transform:translateY(-2px)}
        .btn-secondary{border-color:var(--line);color:var(--text);background:transparent}
        .btn-secondary:hover{border-color:var(--amber);color:var(--amber);transform:translateY(-2px)}
        .btn:focus-visible,.input:focus-visible,.faq-q:focus-visible{outline:3px solid rgba(211,154,98,.45);outline-offset:3px}
        .hero-note{display:flex;gap:25px;color:var(--faint);font-size:12px}
        .hero-note strong{display:block;color:var(--text);font-size:14px}
        .hero-panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow);transform:rotate(1.5deg)}
        .panel-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:22px}
        .panel-title{font-weight:800}.live{color:var(--green);font-size:12px}.live:before{content:"";display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;margin-right:7px}
        .panel-feature{height:190px;border-radius:11px;position:relative;overflow:hidden;background:linear-gradient(135deg,#523442,#1d2226 52%,#bf8058)}
        .panel-feature:before{content:"";position:absolute;width:130px;height:240px;right:19%;top:-25px;background:linear-gradient(90deg,transparent,rgba(245,239,232,.22),transparent);transform:rotate(18deg)}
        .feature-caption{position:absolute;bottom:0;left:0;right:0;padding:30px 18px 15px;background:linear-gradient(transparent,rgba(0,0,0,.8))}
        .feature-caption small{color:#e7c6a9}.feature-caption strong{display:block;font-size:21px}
        .panel-rows{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin-top:22px}
        .panel-cell{background:var(--panel);padding:14px}.panel-cell small{display:block;color:var(--faint);font-size:11px}.panel-cell b{font-size:20px}
        .channel-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:14px}
        .channel-card{min-height:190px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:25px;display:flex;flex-direction:column;justify-content:space-between;transition:.25s}
        .channel-card:hover{border-color:var(--berry-light);transform:translateY(-4px);box-shadow:var(--shadow)}
        .channel-card.tall{min-height:258px;background:linear-gradient(145deg,#2d2027,#21191e)}
        .index{color:var(--amber);font-size:12px;letter-spacing:.1em}
        .channel-card h3{font-size:24px;margin:16px 0 5px}.channel-card p{color:var(--muted);font-size:13px}
        .card-foot{display:flex;justify-content:space-between;align-items:center;color:var(--faint);font-size:12px;margin-top:20px}.arrow{color:var(--amber);font-size:20px}
        .metrics{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
        .metric-line{display:grid;grid-template-columns:1.3fr repeat(4,1fr);align-items:center;min-height:166px}
        .metric-intro{padding-right:30px}.metric-intro h2{font-family:Georgia,serif;font-size:30px;line-height:1.2}.metric-intro p{color:var(--muted);font-size:13px;margin-top:8px}
        .metric{border-left:1px solid var(--line);padding:0 24px}.metric b{display:block;font-family:Georgia,serif;font-size:42px;color:var(--text);line-height:1}.metric span{display:block;color:var(--muted);font-size:12px;margin-top:13px}.status{color:var(--green)!important}
        .spotlight{display:grid;grid-template-columns:1fr .75fr;gap:18px}
        .big-pick{min-height:430px;border-radius:18px;overflow:hidden;position:relative;background:linear-gradient(145deg,#6a3b47 0%,#281e26 45%,#c1875e 120%);border:1px solid var(--line)}
        .big-pick:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(15,12,14,.94))}
        .pick-content{position:absolute;z-index:1;bottom:28px;left:30px;right:30px}.pick-content h3{font-family:Georgia,serif;font-size:34px}.pick-content p{color:#d2c4c9;max-width:520px;font-size:13px}
        .pick-list{display:flex;flex-direction:column;gap:10px}
        .pick-item{display:grid;grid-template-columns:92px 1fr auto;gap:16px;align-items:center;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;transition:.2s}
        .pick-item:hover{border-color:var(--berry-light);background:var(--panel-2)}
        .thumb{height:76px;border-radius:8px;background:linear-gradient(135deg,#583443,#1b2423 65%,#bf865c)}
        .pick-item h4{font-size:15px}.pick-item p{color:var(--faint);font-size:12px}.tag{display:inline-flex;border:1px solid var(--line);border-radius:5px;padding:2px 7px;color:var(--muted);font-size:11px;margin-right:4px}.tag.new{color:var(--amber);border-color:rgba(211,154,98,.4)}
        .paths{background:#201a1e;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
        .path-grid{display:grid;grid-template-columns:250px 1fr;gap:50px}.path-tabs{display:flex;flex-direction:column;gap:8px}.path-tabs button{text-align:left;background:none;border:0;border-left:2px solid var(--line);color:var(--muted);padding:13px 16px;min-height:44px}.path-tabs button:hover,.path-tabs button.active{color:#fff;border-left-color:var(--berry-light);background:rgba(155,49,95,.12)}
        .path-content{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:30px;min-height:240px}.path-content h3{font-family:Georgia,serif;font-size:29px;margin-bottom:10px}.path-content>p{color:var(--muted);max-width:640px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.chip{padding:8px 13px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:12px}.chip.selected{background:var(--berry);border-color:var(--berry);color:#fff}
        .faq-wrap{display:grid;grid-template-columns:.35fr 1fr;gap:70px}.faq-index h2{font-family:Georgia,serif;font-size:38px;line-height:1.2}.faq-index p{color:var(--muted);font-size:13px;margin-top:15px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;padding:20px 0;background:none;border:0;color:var(--text);display:flex;justify-content:space-between;text-align:left;font-weight:700}.faq-q span{color:var(--amber);font-size:22px;transition:.2s}.faq-a{display:none;color:var(--muted);font-size:13px;padding:0 35px 20px 0}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span{transform:rotate(45deg)}
        .feedback{background:var(--berry);position:relative;overflow:hidden}.feedback:after{content:"18+";position:absolute;right:8%;top:-35px;font:italic 190px Georgia;color:rgba(255,255,255,.07)}.feedback-grid{display:grid;grid-template-columns:.75fr 1fr;gap:80px;position:relative;z-index:1}.feedback h2{font-family:Georgia,serif;font-size:46px;line-height:1.15}.feedback p{color:#f0d9e1;margin-top:16px}.notice{margin-top:26px;padding:15px;border:1px solid rgba(255,255,255,.25);border-radius:9px;color:#f4dfe6;font-size:12px}.form{background:#241820;border-radius:14px;padding:27px;border:1px solid rgba(255,255,255,.16)}.field{margin-bottom:16px}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.field label i{color:var(--amber);font-style:normal}.input{width:100%;background:#1b1619;border:1px solid var(--line);border-radius:8px;color:var(--text);padding:11px 13px;min-height:44px}.input::placeholder{color:#6f646b}.input:focus{border-color:var(--amber);outline:none}.form .btn{width:100%;background:var(--amber);color:#241820}.form .btn:hover{background:#e2ad78}.form-status{display:none;color:var(--green);font-size:12px;margin-top:12px}
        footer{padding:48px 0 30px;border-top:1px solid var(--line)}.footer-main{display:flex;justify-content:space-between;gap:30px;padding-bottom:35px}.footer-brand p{color:var(--muted);font-size:13px;max-width:360px;margin-top:12px}.footer-links{display:flex;gap:28px;align-items:start}.footer-links a{color:var(--muted);font-size:13px}.footer-links a:hover{color:var(--amber)}.copyright{padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--faint);font-size:11px}
        @media(max-width:1024px){.hero-grid{gap:35px}.metric-line{grid-template-columns:1.2fr repeat(2,1fr);padding:25px 0;gap:25px}.metric{border-left:0;border-top:1px solid var(--line);padding:20px 0}.channel-grid{grid-template-columns:1fr 1fr}.channel-card:first-child{grid-column:span 2}.spotlight{grid-template-columns:1fr}.feedback-grid{gap:35px}}
        @media(max-width:768px){.container{width:min(100% - 34px,var(--max))}.section{padding:72px 0}.brand-row{height:68px}.utility a{display:none}.hero{padding:68px 0 78px}.hero-grid,.path-grid,.faq-wrap,.feedback-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(43px,13vw,68px)}.hero-copy{font-size:15px}.hero-panel{transform:none}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:15px}.metric-line{grid-template-columns:1fr 1fr}.metric-intro{grid-column:span 2;padding-bottom:15px}.metric-intro h2{font-size:26px}.path-tabs{flex-direction:row;overflow:auto}.path-tabs button{white-space:nowrap;border-left:0;border-bottom:2px solid var(--line)}.path-tabs button.active{border-bottom-color:var(--berry-light)}.faq-index h2{font-size:34px}.footer-main,.copyright{display:block}.footer-links{margin-top:24px;flex-wrap:wrap}.copyright span{display:block;margin-top:7px}}
        @media(max-width:480px){.hero-actions .btn{width:100%}.hero-note{gap:15px}.channel-grid{grid-template-columns:1fr}.channel-card:first-child{grid-column:auto}.metric b{font-size:34px}.metric{padding-right:10px}.big-pick{min-height:350px}.pick-content{left:20px;right:20px}.pick-content h3{font-size:27px}.pick-item{grid-template-columns:70px 1fr}.pick-item .btn{display:none}.thumb{height:68px}.feedback h2{font-size:38px}.logo{font-size:15px}.logo-mark{width:30px;height:30px}}
        @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category2 */
:root{
 --bg:#171416;--bg-soft:#211b1f;--panel:#251e23;--panel-2:#2c2329;
 --text:#f5efe8;--muted:#b8aeb4;--faint:#867a82;--line:#40353d;
 --berry:#9b315f;--berry-light:#bd4e7c;--amber:#d39a62;--green:#7bb3a0;
 --error:#d98268;--radius:14px;--shadow:0 18px 45px rgba(0,0,0,.24);--max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75;font-size:15px}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.15;background-image:radial-gradient(#fff 0.45px,transparent .45px);background-size:5px 5px;mix-blend-mode:soft-light}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.topbar{position:relative;z-index:10;border-bottom:1px solid var(--line);background:rgba(23,20,22,.96)}
.brand-row{height:76px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;letter-spacing:-.03em}
.logo-mark{width:34px;height:34px;border-radius:9px;background:var(--berry);display:grid;place-items:center;color:#fff;font-weight:900;box-shadow:7px 7px 0 rgba(211,154,98,.18)}
.utility{display:flex;gap:12px;align-items:center}
.utility a,.age-pill{border:1px solid var(--line);color:var(--muted);padding:7px 13px;border-radius:8px;font-size:12px;transition:.2s}
.utility a:hover,.utility a:focus-visible{border-color:var(--berry-light);color:var(--text)}
.age-pill{color:var(--amber);border-color:rgba(211,154,98,.45)}
.channel-row{border-top:1px solid rgba(64,53,61,.6);overflow:auto}
.channels{display:flex;gap:5px;min-width:max-content;padding:9px 0}
.channels a{padding:7px 15px;border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}
.channels a:hover,.channels a:focus-visible{color:var(--text);background:var(--panel-2);outline:none}
.channels a.active{color:#fff;background:var(--berry);box-shadow:0 5px 18px rgba(155,49,95,.25)}
.hero{padding:84px 0 82px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-8%;top:5%;width:500px;height:500px;background:radial-gradient(circle,rgba(155,49,95,.24),transparent 68%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;position:relative;z-index:1}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--amber);font-size:12px;letter-spacing:.14em;font-weight:700}
.eyebrow:before{content:"";width:25px;height:1px;background:var(--amber)}
h1,h2,h3,h4,p{margin-top:0}
.hero h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(43px,6.4vw,78px);line-height:1.08;letter-spacing:-.07em;margin:20px 0 25px;max-width:760px}
.hero h1 span{color:var(--berry-light)}
.hero-copy{max-width:650px;color:var(--muted);font-size:17px;line-height:1.9}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 26px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:9px;border:1px solid transparent;font-weight:700;font-size:13px;transition:.22s}
.btn-primary{background:var(--berry);color:#fff}
.btn-primary:hover{background:var(--berry-light);transform:translateY(-2px)}
.btn-secondary{border-color:var(--line);color:var(--text);background:transparent}
.btn-secondary:hover{border-color:var(--amber);color:var(--amber);transform:translateY(-2px)}
.btn:focus-visible,.filter:focus-visible,.faq-q:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(211,154,98,.5);outline-offset:3px}
.hero-note{display:flex;gap:30px;color:var(--faint);font-size:12px}
.hero-note strong{display:block;color:var(--text);font-size:14px}
.channel-panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow);transform:rotate(1deg)}
.panel-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.panel-title{font-weight:800}
.status{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-size:12px}
.status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(123,179,160,.12)}
.poster-large{height:250px;border-radius:12px;position:relative;overflow:hidden;background:linear-gradient(135deg,#332832 2%,#a25c70 40%,#27242d 68%,#d39a62)}
.poster-large:before{content:"";position:absolute;left:24%;top:-20%;width:45%;height:150%;background:linear-gradient(90deg,transparent,rgba(245,239,232,.22),transparent);transform:rotate:21deg}
.poster-caption{position:absolute;left:0;right:0;bottom:0;padding:55px 19px 17px;background:linear-gradient(transparent,rgba(0,0,0,.85))}
.poster-caption small{color:#e8c5a5}.poster-caption strong{display:block;font-size:22px}
.panel-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:20px}
.panel-meta div{background:var(--panel-2);padding:13px}.panel-meta small{color:var(--faint);display:block;font-size:11px}.panel-meta b{font-size:17px}
.section{padding:96px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
.section-head h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(30px,4vw,52px);line-height:1.15;letter-spacing:-.04em;margin:10px 0 0}
.section-head p{max-width:470px;color:var(--muted);font-size:14px;margin-bottom:4px}
.notice{padding:18px 21px;border:1px solid rgba(211,154,98,.35);background:rgba(211,154,98,.07);border-radius:11px;color:var(--muted);margin-bottom:30px}
.notice strong{color:var(--amber)}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:16px 18px;border:1px solid var(--line);background:var(--panel);border-radius:12px;margin-bottom:30px}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filter{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:7px;padding:7px 12px;font-size:12px;transition:.2s}
.filter:hover,.filter.active{background:var(--berry);border-color:var(--berry);color:#fff}
.sort{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:8px 12px}
.movie-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.movie-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.25s}
.movie-card:hover{transform:translateY(-5px);border-color:var(--berry-light);box-shadow:var(--shadow)}
.poster{height:245px;position:relative;overflow:hidden;background:linear-gradient(145deg,#523442,#24242c 55%,#9b6b57)}
.poster:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(0,0,0,.76))}
.poster.a{background:linear-gradient(145deg,#795268,#28212b 60%,#d39a62)}
.poster.b{background:linear-gradient(145deg,#3e5661,#1c2228 54%,#a65d55)}
.poster.c{background:linear-gradient(145deg,#6d443f,#211a22 56%,#b47d61)}
.poster.d{background:linear-gradient(145deg,#4a566b,#26202a 55%,#9b315f)}
.poster.e{background:linear-gradient(145deg,#816348,#292126 57%,#bd4e7c)}
.poster.f{background:linear-gradient(145deg,#51405e,#1e2228 56%,#c18e63)}
.poster-label{position:absolute;z-index:1;left:14px;top:14px;background:rgba(23,20,22,.72);border:1px solid rgba(245,239,232,.2);border-radius:5px;padding:3px 7px;color:#fff;font-size:11px}
.movie-info{padding:17px}
.movie-info h3{font-size:17px;margin-bottom:8px}
.movie-info p{color:var(--muted);font-size:12px;margin-bottom:13px}
.meta-line{display:flex;justify-content:space-between;align-items:center;color:var(--faint);font-size:11px}
.tag{display:inline-flex;border:1px solid var(--line);border-radius:5px;padding:2px 7px;color:var(--muted);font-size:11px;margin-right:4px}
.tag.new{color:var(--amber);border-color:rgba(211,154,98,.4)}
.tag.ready{color:var(--green);border-color:rgba(123,179,160,.4)}
.empty-state{display:none;text-align:center;padding:56px 20px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}
.load-row{text-align:center;padding-top:36px}
.related{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.related-card{display:flex;justify-content:space-between;align-items:center;padding:23px;background:var(--panel);border:1px solid var(--line);border-radius:12px;transition:.2s}
.related-card:hover{border-color:var(--berry-light);transform:translateX(3px)}
.related-card h3{margin:0 0 4px;font-size:19px}.related-card p{margin:0;color:var(--muted);font-size:13px}
.faq-layout{display:grid;grid-template-columns:.35fr .65fr;gap:70px}
.faq-index{color:var(--muted);font-size:14px}.faq-index b{display:block;color:var(--amber);font-size:13px;margin-bottom:13px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;display:flex;justify-content:space-between;gap:20px;text-align:left;background:none;border:0;color:var(--text);padding:21px 0;font-weight:700}
.faq-q span:last-child{color:var(--amber);font-size:20px}
.faq-a{display:none;color:var(--muted);font-size:14px;padding:0 35px 21px 0}
.faq-item.open .faq-a{display:block}
.feedback{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:40px}
.feedback-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:start}
.feedback h2{font-family:Georgia,"Songti SC",serif;font-size:42px;line-height:1.15;margin:12px 0 16px}
.feedback p{color:var(--muted);font-size:14px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}
label{font-size:13px;color:var(--text)}label em{color:var(--amber);font-style:normal}
input,select,textarea{width:100%;border:1px solid var(--line);background:var(--bg-soft);color:var(--text);border-radius:8px;padding:11px 13px;transition:.2s}
textarea{min-height:125px;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--faint)}
.form-status{display:none;margin-top:14px;color:var(--green);font-size:13px}
footer{border-top:1px solid var(--line);padding:42px 0 25px;background:#141113}
.footer-main{display:flex;justify-content:space-between;gap:40px}.footer-brand{max-width:440px}.footer-brand p{color:var(--faint);font-size:12px;margin:18px 0 0}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:13px;align-content:start}.footer-links a:hover{color:var(--amber)}
.copyright{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:34px;padding-top:18px;color:var(--faint);font-size:11px}
.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:8px 12px}
@media(max-width:1024px){.hero-grid{gap:38px}.movie-grid{grid-template-columns:repeat(3,1fr)}.faq-layout{gap:35px}}
@media(max-width:768px){.container{width:min(var(--max),calc(100% - 34px))}.brand-row{height:68px}.utility a{display:none}.menu-toggle{display:block}.channels{overflow:auto}.hero{padding:64px 0}.hero-grid,.feedback-grid,.faq-layout{grid-template-columns:1fr}.hero h1{font-size:clamp(42px,12vw,64px)}.channel-panel{transform:none}.section{padding:72px 0}.section-head{display:block}.section-head p{margin-top:18px}.movie-grid{grid-template-columns:repeat(2,1fr);gap:12px}.poster{height:220px}.related-grid{grid-template-columns:1fr}.feedback{padding:26px 20px}.feedback h2{font-size:35px}.footer-main,.copyright{display:block}.copyright span{display:block;margin-top:8px}}
@media(max-width:520px){body{font-size:14px}.logo{font-size:15px}.logo-mark{width:31px;height:31px}.hero-copy{font-size:15px}.hero-note{gap:16px}.panel-meta{font-size:12px}.movie-info{padding:13px}.movie-info h3{font-size:15px}.poster{height:190px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.toolbar{align-items:stretch}.sort{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category1 */
:root{
 --bg:#171416;--bg-soft:#211b1f;--panel:#251e23;--panel-2:#2c2329;
 --text:#f5efe8;--muted:#b8aeb4;--faint:#867a82;--line:#40353d;
 --berry:#9b315f;--berry-light:#bd4e7c;--amber:#d39a62;--green:#7bb3a0;
 --error:#d98268;--radius:14px;--shadow:0 18px 45px rgba(0,0,0,.24);--max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75;font-size:15px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.topbar{border-bottom:1px solid var(--line);background:rgba(23,20,22,.96);position:relative;z-index:10}
.brand-row{height:76px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;letter-spacing:-.03em}
.logo-mark{width:34px;height:34px;border-radius:9px;background:var(--berry);display:grid;place-items:center;color:#fff;font-weight:900;box-shadow:7px 7px 0 rgba(211,154,98,.18)}
.utility{display:flex;align-items:center;gap:12px}
.utility a,.age-pill{border:1px solid var(--line);color:var(--muted);padding:7px 13px;border-radius:8px;font-size:12px;transition:.2s}
.utility a:hover,.utility a:focus-visible{border-color:var(--berry-light);color:var(--text);outline:none}
.age-pill{color:var(--amber);border-color:rgba(211,154,98,.45)}
.channel-row{border-top:1px solid rgba(64,53,61,.6);overflow:auto}
.channels{display:flex;align-items:center;gap:7px;padding:9px 0;white-space:nowrap}
.channels a{padding:7px 15px;border-radius:7px;color:var(--muted);font-size:13px;transition:.2s}
.channels a:hover,.channels a:focus-visible{color:var(--text);background:var(--panel-2);outline:none}
.channels a.active{color:#fff;background:var(--berry);box-shadow:0 5px 18px rgba(155,49,95,.25)}
.hero{padding:82px 0 88px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-10%;bottom:-180px;width:580px;height:430px;background:radial-gradient(ellipse,rgba(155,49,95,.22),transparent 67%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:78px;align-items:center;position:relative;z-index:1}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--amber);font-size:12px;letter-spacing:.14em;font-weight:700}
.eyebrow:before{content:"";width:25px;height:1px;background:var(--amber)}
.hero h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(42px,6vw,76px);line-height:1.08;letter-spacing:-.07em;margin:20px 0 24px;max-width:720px}
.hero h1 span{color:var(--berry-light)}
.hero-copy{max-width:640px;color:var(--muted);font-size:17px;line-height:1.9}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:31px 0 28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:9px;border:1px solid transparent;font-weight:700;font-size:13px;transition:.22s}
.btn-primary{background:var(--berry);color:#fff}
.btn-primary:hover{background:var(--berry-light);transform:translateY(-2px)}
.btn-secondary{border-color:var(--line);color:var(--text);background:transparent}
.btn-secondary:hover{border-color:var(--amber);color:var(--amber);transform:translateY(-2px)}
.btn:focus-visible,.filter-chip:focus-visible,.faq-q:focus-visible,.input:focus-visible{outline:3px solid rgba(211,154,98,.45);outline-offset:3px}
.hero-note{display:flex;gap:28px;color:var(--faint);font-size:12px}
.hero-note strong{display:block;color:var(--text);font-size:14px}
.channel-panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:var(--shadow);transform:rotate(1deg)}
.panel-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:20px}
.panel-title{font-weight:800;font-size:17px}
.status{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:11px}
.status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(123,179,160,.12)}
.panel-art{height:190px;border-radius:11px;overflow:hidden;position:relative;background:linear-gradient(135deg,#553543 0%,#292127 42%,#be7c58 100%)}
.panel-art:before{content:"";position:absolute;right:18%;top:-28px;width:125px;height:250px;background:linear-gradient(90deg,transparent,rgba(245,239,232,.2),transparent);transform:rotate(18deg)}
.panel-art:after{content:"";position:absolute;left:-10%;bottom:-80px;width:270px;height:180px;border-radius:50%;background:rgba(0,0,0,.25)}
.panel-caption{position:absolute;left:0;right:0;bottom:0;padding:42px 18px 14px;background:linear-gradient(transparent,rgba(0,0,0,.82))}
.panel-caption small{color:#e8c7aa}.panel-caption strong{display:block;font-family:Georgia,serif;font-size:23px}
.panel-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:20px}
.panel-stat{background:var(--panel);padding:14px 10px}.panel-stat b{display:block;font-size:20px}.panel-stat span{font-size:11px;color:var(--faint)}
.section{padding:94px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
.section-head h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(30px,4vw,50px);line-height:1.15;letter-spacing:-.05em;margin:0}
.section-head p{max-width:490px;color:var(--muted);font-size:14px;margin:0}
.filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:30px}
.filter-label{font-size:12px;color:var(--faint);margin-right:4px}
.filter-chip{min-height:36px;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:7px;padding:0 13px;font-size:12px;transition:.2s}
.filter-chip:hover{border-color:var(--berry-light);color:var(--text)}
.filter-chip.active{background:rgba(155,49,95,.22);border-color:var(--berry);color:#fff}
.poster-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.poster-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.25s}
.poster-card:hover{border-color:var(--berry-light);transform:translateY(-5px);box-shadow:var(--shadow)}
.poster{height:245px;position:relative;overflow:hidden;background:var(--poster,#493039)}
.poster:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(211,154,98,.15),transparent 45%,rgba(0,0,0,.5))}
.poster:after{content:"";position:absolute;width:80px;height:220px;right:15%;top:-28px;background:linear-gradient(90deg,transparent,rgba(245,239,232,.18),transparent);transform:rotate(19deg)}
.poster-name{position:absolute;left:17px;bottom:15px;font-family:Georgia,"Songti SC",serif;font-size:25px;line-height:1.1;color:#fff;max-width:85%;z-index:1}
.poster-index{position:absolute;right:14px;top:13px;color:rgba(255,255,255,.7);font-size:12px;z-index:1}
.poster-info{padding:16px}
.poster-info h3{font-size:15px;margin:0 0 8px}
.meta{color:var(--faint);font-size:11px;display:flex;gap:8px;flex-wrap:wrap}
.meta span+span:before{content:"·";margin-right:8px;color:var(--line)}
.card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px}
.tag{display:inline-flex;border:1px solid var(--line);border-radius:5px;padding:2px 7px;color:var(--muted);font-size:11px}
.tag.new{color:var(--amber);border-color:rgba(211,154,98,.45)}
.detail-link{font-size:12px;color:var(--amber);transition:.2s}
.detail-link:hover{color:var(--berry-light)}
.info-band{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats-line{display:grid;grid-template-columns:1.5fr repeat(3,1fr);align-items:stretch}
.stat-major{padding:34px 26px 34px 0}.stat-major strong{font-family:Georgia,serif;font-size:55px;line-height:1;color:var(--amber)}
.stat-major p{margin:8px 0 0;color:var(--muted);font-size:13px}
.stat-cell{border-left:1px solid var(--line);padding:35px 25px}
.stat-cell strong{display:block;font-size:29px}.stat-cell span{color:var(--faint);font-size:12px}
.split-section{display:grid;grid-template-columns:280px 1fr;gap:60px}
.aside-title{font-size:13px;color:var(--amber);letter-spacing:.1em;font-weight:700}
.aside-copy{color:var(--muted);font-size:13px;margin-top:15px}
.notice-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.notice{padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:12px}
.notice h3{font-size:17px;margin:0 0 8px}.notice p{color:var(--muted);font-size:13px;margin:0}
.faq-wrap{display:grid;grid-template-columns:240px 1fr;gap:68px}
.faq-index{color:var(--muted);font-size:13px;border-left:2px solid var(--line);padding-left:18px}
.faq-index strong{display:block;color:var(--text);font-size:22px;margin-bottom:10px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;min-height:62px;background:none;border:0;color:var(--text);display:flex;align-items:center;justify-content:space-between;text-align:left;padding:0;font-weight:700}
.faq-q span:last-child{color:var(--amber);font-size:22px;font-weight:400}
.faq-a{display:none;color:var(--muted);font-size:13px;line-height:1.8;padding:0 34px 20px 0}
.faq-item.open .faq-a{display:block}
.feedback{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:38px;display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}
.feedback h2{font-family:Georgia,"Songti SC",serif;font-size:38px;line-height:1.2;margin:12px 0}
.feedback p{color:var(--muted);font-size:13px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}
.field label{font-size:12px;color:var(--muted)}
.input{width:100%;background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:11px 12px;min-height:44px}
textarea.input{min-height:112px;resize:vertical}
.input:focus{border-color:var(--amber);outline:none}
.form-note{color:var(--faint);font-size:11px;margin-top:12px}
footer{border-top:1px solid var(--line);padding:48px 0 25px;background:#141214}
.footer-main{display:flex;justify-content:space-between;gap:40px}
.footer-brand{max-width:430px}.footer-brand p{color:var(--muted);font-size:12px;margin:17px 0 0}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:12px;align-content:flex-start}
.footer-links a:hover{color:var(--amber)}
.copyright{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:35px;padding-top:18px;color:var(--faint);font-size:11px}
.empty-state{display:none;padding:50px 20px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}
@media(max-width:1024px){
 .hero-grid{gap:40px}.poster-grid{grid-template-columns:repeat(3,1fr)}
 .stats-line{grid-template-columns:repeat(3,1fr)}.stat-major{grid-column:1/-1;border-bottom:1px solid var(--line);padding:30px 0}
 .stat-cell:nth-child(2){border-left:0}.split-section,.faq-wrap{gap:35px}
}
@media(max-width:768px){
 .container{width:min(var(--max),calc(100% - 36px))}
 .brand-row{height:68px}.logo{font-size:15px}.logo-mark{width:31px;height:31px}
 .utility a{display:none}.hero{padding:62px 0 70px}.hero-grid{grid-template-columns:1fr}
 .hero h1{font-size:clamp(40px,12vw,64px)}.hero-panel{max-width:560px}
 .section{padding:70px 0}.section-head{display:block}.section-head p{margin-top:16px}
 .poster-grid{grid-template-columns:repeat(2,1fr);gap:12px}.poster{height:220px}
 .stats-line{grid-template-columns:repeat(2,1fr)}.stat-cell{padding:25px 18px}.stat-cell:nth-child(3){border-left:0}
 .split-section,.faq-wrap,.feedback{grid-template-columns:1fr}
 .notice-list{grid-template-columns:1fr}.feedback{padding:25px;gap:28px}
 .footer-main,.copyright{display:block}.footer-links{margin-top:25px}.copyright span{display:block;margin-top:8px}
}
@media(max-width:480px){
 .container{width:calc(100% - 32px)}.brand-row{height:62px}.logo{font-size:13px;gap:8px}
 .channels a{padding:7px 12px}.hero h1{font-size:39px}.hero-copy{font-size:15px}
 .hero-note{gap:16px}.poster{height:190px}.poster-name{font-size:20px;left:12px;bottom:12px}
 .poster-info{padding:12px}.poster-info h3{font-size:13px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
 .feedback h2{font-size:31px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
