/* roulang page: index */
:root{
            --blue:#2856b8;
            --blue-dark:#1d3f8d;
            --blue-soft:#eaf1ff;
            --ink:#17233d;
            --muted:#6c7890;
            --line:#dfe6f2;
            --bg:#f5f8fc;
            --card:#ffffff;
            --orange:#c7792b;
            --orange-soft:#fff5e8;
            --green:#2e9270;
            --shadow:0 16px 38px rgba(35,62,113,.09);
            --shadow-hover:0 22px 44px rgba(35,62,113,.16);
            --radius:18px;
            --radius-sm:11px;
            --max:1180px;
        }
        *,*::before,*::after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            color:var(--ink);
            background:var(--bg);
            font-family:"思源黑体","HarmonyOS Sans","PingFang SC","Microsoft YaHei",Arial,sans-serif;
            font-size:15px;
            line-height:1.75;
            -webkit-font-smoothing:antialiased;
        }
        a{color:inherit;text-decoration:none}
        button,input,select{font:inherit}
        button{cursor:pointer}
        img{display:block;max-width:100%}
        .container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
        .site-header{
            position:sticky;top:0;z-index:20;
            background:rgba(255,255,255,.95);
            border-bottom:1px solid var(--line);
            box-shadow:0 4px 18px rgba(33,56,101,.05);
            backdrop-filter:blur(12px);
        }
        .nav{
            min-height:72px;
            display:flex;align-items:center;gap:28px;
        }
        .brand{
            display:flex;align-items:center;gap:11px;
            min-width:235px;font-size:16px;font-weight:800;letter-spacing:-.3px;
        }
        .brand-mark{
            width:34px;height:34px;border-radius:10px;
            display:grid;place-items:center;
            color:#fff;background:var(--blue);
            font-size:13px;font-weight:800;
            box-shadow:0 7px 15px rgba(40,86,184,.24);
        }
        .nav-links{display:flex;align-items:center;gap:5px;flex:1}
        .nav-link{
            position:relative;padding:10px 13px;color:var(--muted);
            border-radius:9px;font-size:14px;transition:.2s ease;
        }
        .nav-link:hover,.nav-link:focus-visible{color:var(--blue);background:var(--blue-soft)}
        .nav-link.active{color:var(--blue);font-weight:700;background:#f0f5ff}
        .nav-link.active::after{
            content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;
            background:var(--blue);border-radius:2px;
        }
        .nav-tools{display:flex;align-items:center;gap:14px}
        .status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;white-space:nowrap}
        .status i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #e4f5ef}
        .nav-main,.btn{
            display:inline-flex;align-items:center;justify-content:center;gap:7px;
            min-height:42px;padding:0 17px;border:1px solid transparent;
            border-radius:10px;font-weight:700;transition:.22s ease;
        }
        .nav-main,.btn-primary{color:#fff;background:var(--blue);box-shadow:0 7px 15px rgba(40,86,184,.18)}
        .nav-main:hover,.btn-primary:hover{background:var(--blue-dark);transform:translateY(-2px);box-shadow:var(--shadow-hover)}
        .btn-secondary{color:var(--blue);background:#fff;border-color:#cbd8ef}
        .btn-secondary:hover{border-color:var(--blue);background:var(--blue-soft)}
        .btn-quiet{color:var(--muted);background:#f4f7fb;border-color:var(--line)}
        .btn:disabled{cursor:not-allowed;opacity:.5;transform:none}
        :focus-visible{outline:3px solid rgba(40,86,184,.3);outline-offset:3px}
        .menu-toggle{display:none;border:0;background:transparent;color:var(--ink);font-size:22px}
        main{overflow:hidden}
        .hero{padding:38px 0 28px}
        .crumb{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px;margin-bottom:19px}
        .crumb span{color:#a6b0c1}
        .dashboard{
            display:grid;grid-template-columns:1.12fr .88fr;gap:20px;
            align-items:stretch;
        }
        .hero-panel,.stats-panel,.matrix-card,.compare-card,.faq-wrap,.form-card{
            background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
        }
        .hero-panel{padding:34px 36px;position:relative;overflow:hidden}
        .hero-panel::after{
            content:"";position:absolute;width:210px;height:210px;right:-85px;top:-90px;
            border:25px solid #edf3ff;border-radius:50%;
        }
        .eyebrow{
            display:inline-flex;align-items:center;gap:7px;
            color:var(--blue);background:var(--blue-soft);
            padding:5px 10px;border-radius:7px;font-weight:700;font-size:12px;
        }
        .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(30px,4vw,48px);line-height:1.2;letter-spacing:-1.6px;margin:21px 0 15px;max-width:650px}
        .hero-copy{color:var(--muted);font-size:16px;max-width:650px;margin-bottom:25px}
        .hero-actions{display:flex;gap:11px;flex-wrap:wrap}
        .hero-foot{display:flex;gap:25px;flex-wrap:wrap;margin-top:27px;padding-top:20px;border-top:1px solid var(--line)}
        .hero-foot strong{display:block;font-size:20px;line-height:1.2}
        .hero-foot small{color:var(--muted);font-size:12px}
        .stats-panel{padding:22px}
        .panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}
        .panel-heading h2,.section-head h2{font-size:21px;line-height:1.3;letter-spacing:-.5px;margin:0}
        .panel-note{color:var(--muted);font-size:12px}
        .stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
        .stat{
            padding:17px 15px;border:1px solid var(--line);border-radius:13px;background:#fbfcff;
        }
        .stat strong{display:block;font-size:26px;line-height:1.2;color:var(--blue)}
        .stat span{display:block;color:var(--muted);font-size:12px;margin-top:5px}
        .status-bar{
            display:flex;align-items:center;gap:10px;margin-top:13px;padding:12px 14px;
            color:#53617a;background:#f7f9fd;border-radius:10px;font-size:13px;
        }
        .status-bar b{color:var(--green);font-size:12px}
        .section{padding:54px 0}
        .section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:22px}
        .section-head p{margin:7px 0 0;color:var(--muted);max-width:650px}
        .text-link{color:var(--blue);font-weight:700;white-space:nowrap}
        .text-link:hover{text-decoration:underline}
        .matrix{
            display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:14px;
        }
        .matrix-card{padding:23px;min-height:160px;transition:.22s ease}
        .matrix-card:hover,.compare-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:#b9cbed}
        .matrix-card.large{grid-row:span 2;background:linear-gradient(145deg,#fff 40%,#f0f5ff)}
        .matrix-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:var(--blue-soft);color:var(--blue);font-weight:800;margin-bottom:15px}
        .matrix-card h3{margin-bottom:6px;font-size:17px}
        .matrix-card p{color:var(--muted);font-size:13px;margin-bottom:13px}
        .tag-row{display:flex;gap:7px;flex-wrap:wrap}
        .tag,.badge{
            display:inline-flex;align-items:center;min-height:25px;padding:2px 8px;
            border-radius:6px;font-size:11px;font-weight:700;
        }
        .tag{color:var(--blue);background:#eef4ff}
        .tag.warm{color:#a7641f;background:var(--orange-soft)}
        .tag.green{color:#27755c;background:#e9f7f1}
        .compare-layout{display:grid;grid-template-columns:.83fr 1.17fr;gap:16px}
        .compare-card{padding:24px;transition:.22s ease}
        .compare-card h3{font-size:17px;margin-bottom:6px}
        .compare-card>p{color:var(--muted);font-size:13px;margin-bottom:18px}
        .compare-list{display:grid;gap:10px}
        .compare-item{
            display:flex;align-items:center;justify-content:space-between;gap:12px;
            padding:12px 13px;background:#f8faff;border:1px solid #edf1f8;border-radius:10px;
        }
        .compare-item b{font-size:13px}.compare-item span{color:var(--muted);font-size:12px}
        .content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
        .content-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:15px;transition:.22s ease}
        .content-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
        .cover{
            height:142px;position:relative;display:flex;align-items:end;padding:13px;
            background:
                linear-gradient(125deg,rgba(40,86,184,.92),rgba(101,116,181,.4)),
                repeating-linear-gradient(90deg,transparent 0 22px,rgba(255,255,255,.08) 23px 25px),
                #526998;
        }
        .cover::before{content:"中文字幕";color:rgba(255,255,255,.8);font-size:26px;font-weight:800;letter-spacing:3px}
        .cover .badge{position:absolute;top:12px;right:12px;color:#fff;background:rgba(23,35,61,.62)}
        .content-info{padding:16px}
        .content-info h3{font-size:15px;margin-bottom:7px;line-height:1.45}
        .content-info p{font-size:12px;color:var(--muted);margin:0 0 13px}
        .card-meta{display:flex;align-items:center;justify-content:space-between;color:#8994a8;font-size:11px}
        .card-meta a{color:var(--blue);font-weight:700}
        .timeline{
            display:grid;grid-template-columns:1fr 1.35fr;gap:15px;
        }
        .timeline-side{padding:27px;border-radius:var(--radius);background:var(--blue);color:#fff;box-shadow:var(--shadow)}
        .timeline-side h2{font-size:24px;line-height:1.35;margin-bottom:11px}
        .timeline-side p{color:#dbe6ff;font-size:14px}
        .timeline-side .btn-secondary{margin-top:12px;background:#fff;border-color:#fff}
        .update-list{display:grid;gap:10px}
        .update{
            display:grid;grid-template-columns:84px 1fr auto;align-items:center;gap:14px;
            padding:17px 18px;background:#fff;border:1px solid var(--line);border-radius:13px;
        }
        .update time{color:var(--blue);font-weight:800;font-size:13px}
        .update b{font-size:14px}.update span{color:var(--muted);font-size:12px}
        .faq-wrap{padding:10px 24px}
        details{border-bottom:1px solid var(--line);padding:17px 0}
        details:last-child{border-bottom:0}
        summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:700}
        summary::-webkit-details-marker{display:none}
        summary::after{content:"＋";color:var(--blue);font-size:20px;line-height:1}
        details[open] summary::after{content:"－"}
        details p{color:var(--muted);font-size:14px;margin:11px 31px 0 0}
        .form-card{
            display:grid;grid-template-columns:.9fr 1.1fr;gap:35px;padding:32px;
            background:#fdfefe;
        }
        .form-card h2{font-size:25px;line-height:1.35;margin-bottom:9px}
        .form-card .intro{color:var(--muted);font-size:14px}
        .notice{margin-top:20px;padding:13px 15px;background:var(--orange-soft);color:#86551f;border-radius:10px;font-size:12px}
        form{display:grid;gap:14px}
        .field{display:grid;gap:6px}
        label{font-size:13px;font-weight:700}
        input,select{
            width:100%;height:44px;padding:0 13px;border:1px solid #ccd7e8;border-radius:9px;
            color:var(--ink);background:#fff;transition:.2s ease;
        }
        input::placeholder{color:#aab4c4}
        input:hover,select:hover{border-color:#9db4dc}
        input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 4px #e8efff;outline:0}
        .form-check{display:flex;gap:8px;align-items:flex-start;color:var(--muted);font-size:12px}
        .form-check input{width:16px;height:16px;margin-top:3px}
        .form-message{min-height:22px;color:var(--green);font-size:13px}
        .age-note{
            margin-top:10px;padding:15px 0 0;border-top:1px solid var(--line);
            color:var(--muted);font-size:12px;
        }
        footer{margin-top:42px;padding:38px 0 25px;background:#17233d;color:#dce5f5}
        .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:28px}
        footer .brand{color:#fff;margin-bottom:13px}.footer-copy{color:#aab8d0;font-size:13px;max-width:330px}
        footer h3{font-size:14px;color:#fff;margin:3px 0 12px}
        footer a{display:block;color:#aab8d0;font-size:13px;margin:7px 0;transition:.2s}
        footer a:hover{color:#fff}
        .copyright{
            display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;
            margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);
            color:#91a2bf;font-size:12px;
        }
        .to-top{position:fixed;right:22px;bottom:22px;width:42px;height:42px;border:1px solid #cbd8ef;border-radius:50%;background:#fff;color:var(--blue);box-shadow:var(--shadow);font-weight:800}
        .age-overlay{
            position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;
            padding:20px;background:rgba(23,35,61,.58);backdrop-filter:blur(5px);
        }
        .age-box{width:min(440px,100%);padding:30px;border-radius:20px;background:#fff;box-shadow:0 25px 70px rgba(0,0,0,.22);text-align:center}
        .age-box .brand-mark{margin:0 auto 15px}
        .age-box h2{font-size:25px;margin-bottom:10px}
        .age-box p{color:var(--muted);font-size:14px}
        .age-actions{display:flex;gap:10px;justify-content:center;margin-top:22px}
        .age-box small{display:block;color:#9aa5b6;margin-top:15px;font-size:11px}
        body.age-verified .age-overlay{display:none}
        @media(max-width:1024px){
            .brand{min-width:205px}.nav{gap:12px}.nav-links{gap:0}
            .dashboard,.compare-layout,.form-card{grid-template-columns:1fr}
            .matrix{grid-template-columns:1fr 1fr}.matrix-card.large{grid-row:auto}
            .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
        }
        @media(max-width:768px){
            .container{width:min(100% - 28px,var(--max))}
            .nav{min-height:64px}.brand{min-width:0;flex:1}.brand span{max-width:185px;line-height:1.35}
            .nav-links{display:none;position:absolute;left:14px;right:14px;top:70px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
            .nav-links.open{display:flex}.nav-link{padding:12px 14px}
            .nav-tools .status{display:none}.nav-main{display:none}.menu-toggle{display:block}
            .hero{padding-top:24px}.hero-panel{padding:27px 22px}h1{font-size:34px}
            .matrix,.content-grid{grid-template-columns:1fr 1fr}
            .section{padding:38px 0}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:12px}
            .timeline{grid-template-columns:1fr}.update{grid-template-columns:72px 1fr}.update .tag{display:none}
            .form-card{padding:24px;gap:22px}.footer-grid{grid-template-columns:1fr 1fr}
        }
        @media(max-width:520px){
            .matrix,.content-grid,.stat-grid{grid-template-columns:1fr}
            .hero-foot{gap:17px}.hero-actions .btn{width:100%}
            .cover{height:155px}.faq-wrap{padding:4px 18px}
            .footer-grid{grid-template-columns:1fr;gap:17px}.copyright{display:block}.copyright span{display:block;margin-top:8px}
            .age-actions{flex-direction:column}.age-actions .btn{width:100%}
        }

/* roulang page: category1 */
:root{
 --blue:#2856b8;
 --blue-dark:#1d3f8d;
 --blue-soft:#eaf1ff;
 --ink:#17233d;
 --muted:#6c7890;
 --line:#dfe6f2;
 --bg:#f5f8fc;
 --card:#fff;
 --orange:#c7792b;
 --orange-soft:#fff5e8;
 --green:#2e9270;
 --shadow:0 16px 38px rgba(35,62,113,.09);
 --shadow-hover:0 22px 44px rgba(35,62,113,.16);
 --radius:18px;
 --radius-sm:11px;
 --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;color:var(--ink);background:var(--bg);
 font-family:"思源黑体","HarmonyOS Sans","PingFang SC","Microsoft YaHei",Arial,sans-serif;
 font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased
}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.site-header{
 position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);
 border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(33,56,101,.05);
 backdrop-filter:blur(12px)
}
.nav{min-height:72px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:11px;min-width:235px;font-size:16px;font-weight:800;letter-spacing:-.3px}
.brand-mark{
 width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;
 background:var(--blue);font-size:13px;font-weight:800;box-shadow:0 7px 15px rgba(40,86,184,.24)
}
.nav-links{display:flex;align-items:center;gap:5px;flex:1}
.nav-link{position:relative;padding:10px 13px;color:var(--muted);border-radius:9px;font-size:14px;transition:.2s ease}
.nav-link:hover,.nav-link:focus-visible{color:var(--blue);background:var(--blue-soft)}
.nav-link.active{color:var(--blue);font-weight:700;background:#f0f5ff}
.nav-link.active:after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;background:var(--blue);border-radius:2px}
.nav-tools{display:flex;align-items:center;gap:14px}
.status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}
.status i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #e7f6f0}
.nav-main,.btn{
 display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;
 padding:0 17px;border:1px solid transparent;border-radius:10px;font-weight:700;transition:.22s ease
}
.nav-main,.btn-primary{color:#fff;background:var(--blue);box-shadow:0 7px 15px rgba(40,86,184,.18)}
.nav-main:hover,.btn-primary:hover{background:var(--blue-dark);transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.btn-secondary{color:var(--blue);background:#fff;border-color:#cbd8ef}
.btn-secondary:hover{border-color:var(--blue);background:var(--blue-soft)}
.btn-quiet{color:var(--muted);background:#f4f7fb;border-color:var(--line)}
.btn:focus-visible,.nav-main:focus-visible,.nav-link:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{
 outline:3px solid rgba(40,86,184,.27);outline-offset:3px
}
.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}
.menu-toggle{display:none;border:0;background:transparent;color:var(--ink);font-size:22px}
main{overflow:hidden}
.page-head{padding:36px 0 24px}
.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:20px}
.breadcrumb a:hover{color:var(--blue)}
.breadcrumb span{color:#aab5c8}
.head-layout{display:grid;grid-template-columns:1fr 310px;gap:28px;align-items:end}
.eyebrow{
 display:inline-flex;align-items:center;gap:7px;color:var(--blue);background:var(--blue-soft);
 padding:5px 10px;border-radius:7px;font-weight:700;font-size:12px
}
.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(30px,4vw,47px);line-height:1.2;letter-spacing:-1.6px;margin:15px 0 12px}
.lead{max-width:690px;color:var(--muted);font-size:16px;margin:0}
.summary-card,.filter-panel,.result-panel,.faq-wrap,.form-card,.notice-card{
 background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)
}
.summary-card{padding:20px}
.summary-card strong{display:block;font-size:30px;line-height:1.2;margin:5px 0}
.summary-card small{color:var(--muted)}
.summary-line{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;border-top:1px solid var(--line);padding-top:12px;margin-top:13px}
.toolbar-card{padding:18px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:12px 0 30px}
.search-row{display:grid;grid-template-columns:minmax(220px,1fr) 180px 150px auto;gap:10px}
.field{position:relative}
.field label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:0 0 5px}
.field input,.field select{
 width:100%;height:43px;border:1px solid #cfd9e9;border-radius:10px;background:#fff;color:var(--ink);padding:0 13px
}
.field input::placeholder{color:#a0aabd}
.field input:hover,.field select:hover{border-color:#9fb5db}
.quick-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:16px;padding-top:14px}
.quick-filter b{font-size:12px;color:var(--muted);margin-right:3px}
.filter-chip{
 border:1px solid #d5dfef;background:#f8faff;color:var(--muted);border-radius:8px;
 padding:6px 11px;font-size:12px;transition:.2s
}
.filter-chip:hover,.filter-chip.active{color:var(--blue);background:var(--blue-soft);border-color:#a9bee6}
.layout{display:grid;grid-template-columns:245px 1fr;gap:22px;align-items:start}
.filter-panel{padding:21px;position:sticky;top:92px}
.filter-panel h2{font-size:18px;margin-bottom:3px}
.filter-panel>p{color:var(--muted);font-size:12px;margin-bottom:20px}
.filter-group{padding:17px 0;border-top:1px solid var(--line)}
.filter-group:first-of-type{border-top:0;padding-top:0}
.filter-group h3{font-size:13px;margin-bottom:10px}
.check{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin:8px 0;cursor:pointer}
.check input{accent-color:var(--blue);width:15px;height:15px}
.filter-reset{width:100%;margin-top:8px}
.result-panel{padding:22px}
.result-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}
.result-top h2{font-size:20px;margin:0}
.result-top p{color:var(--muted);font-size:12px;margin:3px 0 0}
.view-actions{display:flex;gap:7px}
.icon-btn{width:36px;height:36px;border:1px solid var(--line);background:#fff;border-radius:9px;color:var(--muted)}
.icon-btn.active,.icon-btn:hover{color:var(--blue);background:var(--blue-soft);border-color:#b4c7e8}
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.content-card{
 overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px;transition:.22s ease
}
.content-card:hover{transform:translateY(-4px);border-color:#b9cbed;box-shadow:var(--shadow-hover)}
.cover{
 height:142px;position:relative;display:flex;align-items:flex-end;padding:12px;
 overflow:hidden;background:linear-gradient(135deg,#d9e7ff,#9fb8e7 48%,#d9d3e7)
}
.cover:before{content:"";position:absolute;width:150px;height:190px;right:18%;bottom:-75px;background:rgba(37,67,133,.23);border-radius:50% 50% 8% 8%;transform:rotate(14deg)}
.cover:after{content:"字幕精选";position:absolute;left:12px;bottom:12px;padding:3px 7px;border-radius:5px;background:rgba(255,255,255,.82);color:var(--blue);font-size:10px;font-weight:800}
.cover.c2{background:linear-gradient(135deg,#ece0d4,#c8d2e8 55%,#d7e9e2)}
.cover.c3{background:linear-gradient(135deg,#dbe5f9,#bbb7d6 55%,#f0e2d2)}
.cover.c4{background:linear-gradient(135deg,#d6e8e7,#aec5e7 55%,#e9d9e2)}
.card-body{padding:15px}
.card-body h3{font-size:15px;line-height:1.45;margin-bottom:8px}
.card-meta{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:11px}
.tag,.badge{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700}
.tag{color:var(--blue);background:#eef4ff}
.tag.warm{color:#a7641f;background:var(--orange-soft)}
.tag.green{color:#27755c;background:#e9f7f1}
.card-foot{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}
.card-foot a{color:var(--blue);font-weight:700}
.feature-strip{margin:25px 0 52px;padding:22px 24px;background:#f0f5ff;border:1px solid #d9e5fa;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:20px}
.feature-strip h2{font-size:18px;margin:0 0 4px}
.feature-strip p{color:var(--muted);font-size:13px;margin:0}
.feature-points{display:flex;gap:22px;flex-wrap:wrap}
.feature-points b{display:block;font-size:18px;color:var(--blue)}
.feature-points span{font-size:11px;color:var(--muted)}
.section{padding:0 0 54px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:20px}
.section-head h2{font-size:23px;line-height:1.3;margin:0}
.section-head p{color:var(--muted);margin:7px 0 0;max-width:650px}
.notice-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.notice-card{padding:24px}
.notice-card h3{font-size:17px;margin-bottom:7px}
.notice-card p{color:var(--muted);font-size:13px;margin-bottom:0}
.notice-card.accent{background:#fffaf3;border-color:#f2dfc4}
.faq-wrap{overflow:hidden}
details{border-bottom:1px solid var(--line);padding:0 21px}
details:last-child{border-bottom:0}
summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:700;position:relative;padding-right:30px}
summary::-webkit-details-marker{display:none}
summary:after{content:"＋";position:absolute;right:0;color:var(--blue);font-size:20px;line-height:1}
details[open] summary:after{content:"−"}
details p{color:var(--muted);font-size:13px;padding:0 35px 18px 0;margin:0}
.cta{padding:42px 0 64px}
.form-card{padding:29px;display:grid;grid-template-columns:1fr 1.1fr;gap:35px;align-items:center}
.form-card h2{font-size:25px;margin-bottom:9px}
.form-card p{color:var(--muted);font-size:13px;margin-bottom:0}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.form-fields .full{grid-column:1/-1}
.form-note{color:var(--muted);font-size:11px;grid-column:1/-1}
.form-message{display:none;color:var(--green);font-size:12px;grid-column:1/-1}
footer{background:#fff;border-top:1px solid var(--line);padding:40px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:28px}
.footer-grid .brand{margin-bottom:12px}
.footer-copy{color:var(--muted);font-size:12px;max-width:300px;margin:0}
.footer-grid h3{font-size:13px;margin:3px 0 11px}
.footer-grid>div>a:not(.brand){display:block;color:var(--muted);font-size:12px;margin:6px 0}
.footer-grid>div>a:not(.brand):hover{color:var(--blue)}
.copyright{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);margin-top:30px;padding-top:17px;color:#8a96aa;font-size:11px}
.age-overlay{position:fixed;inset:0;background:rgba(23,35,61,.46);display:grid;place-items:center;z-index:50;padding:20px}
.age-box{max-width:430px;background:#fff;border-radius:20px;padding:30px;box-shadow:0 24px 70px rgba(23,35,61,.25);text-align:center}
.age-box h2{margin:0 0 9px;font-size:23px}
.age-box p{color:var(--muted);font-size:13px;margin-bottom:22px}
.age-actions{display:flex;gap:10px;justify-content:center}
.hidden{display:none!important}
@media(max-width:1024px){
 .nav{gap:15px}.brand{min-width:205px}.status{display:none}
 .content-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
 .container{width:min(var(--max),calc(100% - 28px))}
 .nav{min-height:64px}.brand{min-width:0;flex:1;font-size:14px}
 .menu-toggle{display:block;order:3}.nav-links{display:none;position:absolute;left:14px;right:14px;top:70px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
 .nav-links.open{display:flex}.nav-link{padding:12px}.nav-main{display:none}
 .head-layout,.notice-grid,.form-card{grid-template-columns:1fr}
 .search-row{grid-template-columns:1fr 1fr}.search-row .field:first-child{grid-column:1/-1}
 .layout{grid-template-columns:1fr}.filter-panel{position:static}
 .feature-strip{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}
 .form-fields{grid-template-columns:1fr}.form-fields .full{grid-column:auto}.form-note,.form-message{grid-column:auto}
}
@media(max-width:520px){
 h1{font-size:31px}.page-head{padding-top:25px}
 .search-row{grid-template-columns:1fr}.search-row .field:first-child{grid-column:auto}
 .result-panel{padding:15px}.result-top{align-items:flex-start}.content-grid{grid-template-columns:1fr 1fr;gap:9px}
 .cover{height:116px;padding:8px}.card-body{padding:11px}.card-body h3{font-size:13px}
 .card-foot{display:block}.card-foot a{display:block;margin-top:4px}
 .footer-grid{grid-template-columns:1fr}.copyright{display:block}.copyright span{display:block;margin-top:5px}
 .age-actions{flex-direction:column}.age-actions .btn{width:100%}
}

/* roulang page: category2 */
:root{
 --blue:#2856b8;
 --blue-dark:#1d3f8d;
 --blue-soft:#eaf1ff;
 --ink:#17233d;
 --muted:#6c7890;
 --line:#dfe6f2;
 --bg:#f5f8fc;
 --card:#fff;
 --orange:#c7792b;
 --orange-soft:#fff5e8;
 --green:#2e9270;
 --shadow:0 16px 38px rgba(35,62,113,.09);
 --shadow-hover:0 22px 44px rgba(35,62,113,.16);
 --radius:18px;
 --radius-sm:11px;
 --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--bg);font-family:"思源黑体","HarmonyOS Sans","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(33,56,101,.05);backdrop-filter:blur(12px)}
.nav{min-height:72px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:11px;min-width:235px;font-size:16px;font-weight:800;letter-spacing:-.3px}
.brand-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;background:var(--blue);font-size:13px;font-weight:800;box-shadow:0 7px 15px rgba(40,86,184,.24)}
.nav-links{display:flex;align-items:center;gap:5px;flex:1}
.nav-link{position:relative;padding:10px 13px;color:var(--muted);border-radius:9px;font-size:14px;transition:.2s ease}
.nav-link:hover,.nav-link:focus-visible{color:var(--blue);background:var(--blue-soft)}
.nav-link.active{color:var(--blue);font-weight:700;background:#f0f5ff}
.nav-link.active:after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;background:var(--blue);border-radius:2px}
.nav-tools{display:flex;align-items:center;gap:14px}
.status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}
.status i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #e8f6f0}
.nav-main,.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 17px;border:1px solid transparent;border-radius:10px;font-weight:700;transition:.22s ease}
.nav-main,.btn-primary{color:#fff;background:var(--blue);box-shadow:0 7px 15px rgba(40,86,184,.18)}
.nav-main:hover,.btn-primary:hover{background:var(--blue-dark);transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.btn-secondary{color:var(--blue);background:#fff;border-color:#cbd8ef}
.btn-secondary:hover{border-color:var(--blue);background:var(--blue-soft)}
.btn-quiet{color:var(--muted);background:#f4f7fb;border-color:var(--line)}
.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}
.menu-toggle{display:none;border:0;background:transparent;color:var(--ink);font-size:22px}
main{overflow:hidden}
.page-intro{padding:40px 0 20px}
.breadcrumb{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px;margin-bottom:18px}
.breadcrumb a:hover{color:var(--blue)}
.intro-grid{display:grid;grid-template-columns:1fr 360px;gap:30px;align-items:end}
.eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--blue);background:var(--blue-soft);padding:5px 10px;border-radius:7px;font-weight:700;font-size:12px}
.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}
h1{font-size:clamp(30px,4vw,46px);line-height:1.2;letter-spacing:-1.5px;margin:15px 0 12px}
.intro-copy{max-width:720px;color:var(--muted);font-size:16px;margin:0}
.summary-card,.toolbar,.feature-card,.timeline-wrap,.faq-wrap,.form-card,.notice-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.summary-card{padding:20px}
.summary-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.summary-card h2{font-size:16px;margin:0}
.summary-card small{color:var(--muted)}
.summary-number{font-size:34px;font-weight:800;color:var(--blue);line-height:1.2}
.mini-bars{display:flex;align-items:end;gap:7px;height:45px;margin-top:12px}
.mini-bars span{flex:1;background:#cbdafa;border-radius:4px 4px 2px 2px}
.mini-bars span:nth-child(1){height:38%}.mini-bars span:nth-child(2){height:60%}.mini-bars span:nth-child(3){height:48%}.mini-bars span:nth-child(4){height:82%}.mini-bars span:nth-child(5){height:68%}.mini-bars span:nth-child(6){height:94%;background:var(--blue)}
.section{padding:28px 0 54px}
.toolbar{padding:17px;display:grid;grid-template-columns:1.4fr 170px 150px auto;gap:10px;align-items:center}
.field{position:relative}
.field label{display:block;font-size:12px;color:var(--muted);margin:0 0 5px 2px}
input,select{width:100%;height:43px;border:1px solid #cbd8eb;border-radius:10px;background:#fff;color:var(--ink);padding:0 12px;outline:none;transition:.2s}
input::placeholder{color:#9aa7ba}
input:hover,select:hover{border-color:#9bb4df}
input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(40,86,184,.13)}
.toolbar .btn{margin-top:19px}
.tag-area{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:23px 0 0}
.tag-label{font-size:13px;color:var(--muted);margin-right:3px}
.tag{display:inline-flex;align-items:center;min-height:28px;padding:2px 10px;border-radius:7px;font-size:12px;font-weight:700;color:var(--blue);background:#eef4ff;border:1px solid transparent;transition:.2s}
.tag:hover,.tag.active{background:var(--blue);color:#fff}
.tag.warm{color:#a7641f;background:var(--orange-soft)}
.tag.green{color:#27755c;background:#e9f7f1}
.status-panel{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:12px;margin-top:28px}
.metric{padding:17px 19px;background:#fff;border:1px solid var(--line);border-radius:14px}
.metric:first-child{background:#f0f5ff;border-color:#d3e0fa}
.metric strong{display:block;font-size:22px;line-height:1.3}
.metric span{font-size:12px;color:var(--muted)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:20px}
.section-head h2{font-size:23px;line-height:1.3;letter-spacing:-.5px;margin:0}
.section-head p{margin:7px 0 0;color:var(--muted);max-width:650px}
.text-link{color:var(--blue);font-weight:700;white-space:nowrap}
.text-link:hover{text-decoration:underline}
.content-layout{display:grid;grid-template-columns:1fr 285px;gap:22px;align-items:start}
.timeline-wrap{padding:24px}
.timeline-item{display:grid;grid-template-columns:85px 20px 1fr;gap:14px;padding:0 0 25px}
.timeline-item:last-child{padding-bottom:0}
.time-label{font-size:12px;color:var(--muted);padding-top:6px;text-align:right}
.timeline-line{position:relative}
.timeline-line:before{content:"";position:absolute;top:8px;left:5px;width:10px;height:10px;border-radius:50%;background:var(--blue);border:3px solid #dce8ff;z-index:1}
.timeline-line:after{content:"";position:absolute;top:18px;bottom:-25px;left:9px;width:1px;background:#d9e3f2}
.timeline-item:last-child .timeline-line:after{display:none}
.result-card{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:14px;transition:.22s}
.result-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);border-color:#b9cbed}
.cover{height:102px;border-radius:10px;overflow:hidden;position:relative;background:linear-gradient(135deg,#dbe8ff,#879bc5 48%,#e8dcd2)}
.cover:before{content:"";position:absolute;inset:0;background:linear-gradient(155deg,transparent 30%,rgba(23,35,61,.5));}
.cover:after{content:"字幕 · 日韩";position:absolute;left:10px;bottom:8px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px}
.result-content h3{font-size:16px;line-height:1.4;margin:3px 0 7px}
.result-content p{font-size:12px;color:var(--muted);margin:0 0 10px}
.meta{display:flex;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:11px}
.badge{display:inline-flex;align-items:center;min-height:25px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;color:var(--blue);background:#eef4ff}
.badge.orange{color:#a7641f;background:var(--orange-soft)}
.badge.green{color:#27755c;background:#e9f7f1}
.side-stack{display:grid;gap:15px}
.feature-card{padding:21px}
.feature-card h3{font-size:17px;margin:0 0 13px}
.hot-list{display:grid;gap:10px}
.hot-list a{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf1f7;font-size:13px}
.hot-list a:last-child{border-bottom:0}
.hot-list a:hover{color:var(--blue)}
.hot-list em{font-style:normal;color:var(--muted);font-size:11px}
.feature-note{padding:13px;background:#f8faff;border-radius:10px;color:var(--muted);font-size:12px}
.notice-card{display:flex;align-items:center;gap:15px;padding:17px 20px;margin-top:20px;background:#fffaf3;border-color:#f1dfc5}
.notice-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:var(--orange);background:#ffedcf;font-weight:800}
.notice-card p{margin:0;color:#745a3f;font-size:13px}
.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:28px}
.page-btn{min-width:38px;height:38px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);transition:.2s}
.page-btn:hover,.page-btn.active{color:#fff;background:var(--blue);border-color:var(--blue)}
.page-btn:focus-visible,.btn:focus-visible,.nav-link:focus-visible,a:focus-visible{outline:3px solid rgba(40,86,184,.28);outline-offset:2px}
.faq-wrap{padding:10px 23px}
details{border-bottom:1px solid var(--line);padding:17px 0}
details:last-child{border-bottom:0}
summary{cursor:pointer;list-style:none;font-weight:700;display:flex;justify-content:space-between;gap:20px}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";color:var(--blue);font-size:20px;line-height:1}
details[open] summary:after{content:"−"}
details p{color:var(--muted);font-size:13px;margin:10px 25px 0 0}
.cta-section{padding:0 0 58px}
.form-card{display:grid;grid-template-columns:1fr 1.1fr;gap:30px;padding:30px 34px;background:#f0f5ff;border-color:#d5e2fa}
.form-card h2{font-size:26px;line-height:1.35;margin:0 0 10px}
.form-card p{color:var(--muted);margin:0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form-submit{display:flex;align-items:center;gap:12px;margin-top:12px}
.form-help{font-size:11px;color:var(--muted)}
footer{background:#fff;border-top:1px solid var(--line);padding:42px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px}
.footer-copy{max-width:330px;color:var(--muted);font-size:13px;margin:15px 0 0}
footer h3{font-size:14px;margin:5px 0 12px}
footer>div a:not(.brand){display:block;color:var(--muted);font-size:13px;margin:7px 0}
footer>div a:not(.brand):hover{color:var(--blue)}
.copyright{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);margin-top:30px;padding-top:17px;color:#8a96a8;font-size:11px}
.age-modal{display:none;position:fixed;inset:0;z-index:50;background:rgba(23,35,61,.48);align-items:center;justify-content:center;padding:20px}
.age-modal.show{display:flex}
.age-box{width:min(430px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 25px 70px rgba(16,34,73,.25);text-align:center}
.age-box h2{margin:0 0 10px;font-size:24px}
.age-box p{color:var(--muted);font-size:13px;margin:0 0 21px}
.age-actions{display:flex;gap:10px;justify-content:center}
@media(max-width:1024px){.nav{gap:15px}.brand{min-width:210px}.content-layout{grid-template-columns:1fr 250px}.status-panel{grid-template-columns:1.2fr repeat(3,1fr)}}
@media(max-width:768px){
 .container{width:min(var(--max),calc(100% - 28px))}
 .nav{min-height:64px}.brand{min-width:0;flex:1;font-size:14px}.brand-mark{width:31px;height:31px}
 .menu-toggle{display:block;order:3}.nav-links{display:none;position:absolute;left:14px;right:14px;top:69px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
 .nav-links.open{display:flex}.nav-link{padding:12px}.nav-tools{gap:8px}.nav-tools .status{display:none}.nav-main{min-height:38px;padding:0 12px;font-size:12px}
 .intro-grid,.content-layout,.form-card{grid-template-columns:1fr}.page-intro{padding-top:28px}.summary-card{max-width:none}
 .toolbar{grid-template-columns:1fr 1fr}.toolbar .field:first-child{grid-column:1/-1}.toolbar .btn{margin-top:19px}
 .status-panel{grid-template-columns:1fr 1fr}.status-panel .metric:first-child{grid-column:1/-1}
 .section{padding:25px 0 42px}.section-head{align-items:start;flex-direction:column;gap:8px}
 .side-stack{grid-template-columns:1fr 1fr}.form-card{padding:25px}
 .footer-grid{grid-template-columns:1fr 1fr}.copyright{flex-direction:column;gap:4px}
}
@media(max-width:520px){
 h1{font-size:31px}.intro-copy{font-size:14px}.toolbar{grid-template-columns:1fr}.toolbar .field:first-child{grid-column:auto}.toolbar .btn{margin-top:0}
 .tag-area{flex-wrap:nowrap;overflow:auto;padding-bottom:5px}.tag-area>*{flex:none}.status-panel{gap:8px}.metric{padding:13px}.metric strong{font-size:19px}
 .timeline-wrap{padding:15px}.timeline-item{grid-template-columns:57px 15px 1fr;gap:7px}.result-card{grid-template-columns:105px 1fr;gap:12px;padding:11px}.cover{height:90px}.result-content h3{font-size:14px}
 .side-stack{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.form-submit{align-items:stretch;flex-direction:column}.form-submit .btn{width:100%}
 .footer-grid{grid-template-columns:1fr}.copyright{font-size:10px}.age-box{padding:25px 20px}
}
