/* roulang page: index */
:root{
            --ink:#20252b;
            --muted:#727982;
            --paper:#f7f5f1;
            --surface:#fffdf9;
            --line:#e6e1d8;
            --brand:#e46c45;
            --brand-dark:#b9482b;
            --sage:#718b78;
            --gold:#d6a84f;
            --deep:#242c2d;
            --radius:18px;
            --shadow:0 16px 40px rgba(42,38,31,.08);
            --max:1180px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
        a{color:inherit;text-decoration:none}
        img{display:block;max-width:100%}
        button,input,textarea{font:inherit}
        button{cursor:pointer}
        :focus-visible{outline:3px solid rgba(228,108,69,.42);outline-offset:3px}
        .container{width:min(var(--max),calc(100% - 44px));margin:0 auto}
        .topline{height:4px;background:linear-gradient(90deg,var(--brand),var(--gold),var(--sage))}
        header{position:sticky;top:0;z-index:20;background:rgba(247,245,241,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(230,225,216,.9)}
        .nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
        .brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
        .brand-mark{width:40px;height:40px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:19px;box-shadow:5px 5px 0 #f0c86c}
        .brand small{display:block;color:var(--muted);font-weight:500;font-size:11px;letter-spacing:.08em;line-height:1.2}
        .nav{display:flex;align-items:center;gap:24px}
        .nav a{color:#525a5c;font-size:14px;font-weight:700;position:relative;padding:8px 0}
        .nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--brand);transition:.2s}
        .nav a:hover,.nav a.active{color:var(--brand-dark)}
        .nav a:hover:after,.nav a.active:after{right:0}
        .nav-cta{padding:10px 16px!important;border:1px solid var(--line);border-radius:999px;background:#fff}
        .nav-cta:after{display:none}
        .menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;color:var(--ink)}
        .hero{padding:68px 0 54px;background:#eee9df;border-bottom:1px solid var(--line)}
        .hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:center}
        .eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--brand-dark);text-transform:uppercase}
        h1,h2,h3,p{margin-top:0}
        h1{font-size:clamp(38px,5vw,68px);line-height:1.12;letter-spacing:-.045em;margin:15px 0 20px;max-width:650px}
        h1 em{font-style:normal;color:var(--brand)}
        .hero-copy{font-size:18px;color:#59615f;max-width:650px;line-height:1.9;margin-bottom:28px}
        .actions{display:flex;gap:12px;flex-wrap:wrap}
        .btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:10px 21px;border-radius:10px;border:1px solid transparent;font-weight:800;font-size:14px;transition:.2s}
        .btn-primary{background:var(--brand);color:#fff;box-shadow:0 8px 18px rgba(228,108,69,.2)}
        .btn-primary:hover{background:var(--brand-dark);transform:translateY(-2px)}
        .btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}
        .btn-secondary:hover{border-color:var(--brand);color:var(--brand-dark);transform:translateY(-2px)}
        .hero-console{background:var(--deep);color:#edf0e9;border-radius:22px;padding:24px;box-shadow:var(--shadow);position:relative;overflow:hidden}
        .hero-console:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(214,168,79,.2);right:-70px;top:-70px}
        .console-bar{display:flex;gap:7px;margin-bottom:22px}
        .console-bar i{width:9px;height:9px;border-radius:50%;background:#e46c45}
        .console-bar i:nth-child(2){background:#d6a84f}.console-bar i:nth-child(3){background:#718b78}
        .code-line{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#cbd7c9;font-size:13px;line-height:2.1}
        .code-line .orange{color:#efa476}.code-line .yellow{color:#e5c67d}.code-line .green{color:#9bb69e}
        .console-note{border-top:1px solid rgba(255,255,255,.12);margin-top:18px;padding-top:15px;color:#aeb6af;font-size:13px}
        section{padding:76px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}
        .section-head h2{font-size:30px;line-height:1.25;letter-spacing:-.03em;margin:7px 0 0}
        .section-head p{max-width:570px;color:var(--muted);margin-bottom:0}
        .stats{padding:26px 0;background:var(--surface);border-bottom:1px solid var(--line)}
        .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
        .stat{padding:8px 28px;border-right:1px solid var(--line)}
        .stat:first-child{padding-left:0}.stat:last-child{border:0}
        .stat strong{font-size:31px;color:var(--brand-dark);display:block;line-height:1.2}
        .stat span{font-size:13px;color:var(--muted)}
        .matrix{background:var(--surface)}
        .matrix-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
        .matrix-item{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff;transition:.2s}
        .matrix-item:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#e9b29d}
        .matrix-icon{font-size:24px;color:var(--brand);margin-bottom:12px}
        .matrix-item h3{font-size:17px;margin:0 0 7px}.matrix-item p{font-size:13px;color:var(--muted);margin:0}
        .dark-section{background:var(--deep);color:#f7f5ef}
        .dark-section .section-head p{color:#b7c0ba}.dark-section .section-kicker{color:#e8b66b}
        .compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}
        .compare-box{padding:25px;border:1px solid rgba(255,255,255,.14);border-radius:16px}
        .compare-box.highlight{background:#34413e;border-color:#61776b}
        .compare-box h3{font-size:19px;margin-bottom:15px}
        .compare-list{padding:0;margin:0;list-style:none}
        .compare-list li{padding:11px 0;border-top:1px solid rgba(255,255,255,.12);color:#c8d0c9;font-size:14px}
        .compare-list li:before{content:"✓";color:#e8b66b;font-weight:800;margin-right:10px}
        .timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}
        .timeline:before{content:"";position:absolute;top:17px;left:8%;right:8%;height:1px;background:var(--line)}
        .milestone{position:relative;padding-top:40px}
        .milestone:before{content:"";position:absolute;top:10px;left:0;width:15px;height:15px;border-radius:50%;background:var(--brand);border:4px solid var(--paper);box-shadow:0 0 0 1px var(--brand)}
        .milestone h3{font-size:17px;margin-bottom:7px}.milestone p{font-size:14px;color:var(--muted);margin:0}
        .latest{background:#fbfaf7}
        .drama-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
        .drama-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.2s}
        .drama-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
        .poster{aspect-ratio:3/4;overflow:hidden;background:#ddd}
        .poster img{width:100%;height:100%;object-fit:cover;transition:.35s}
        .drama-card:hover .poster img{transform:scale(1.04)}
        .drama-info{padding:14px}
        .drama-title{font-size:16px;font-weight:800;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .meta-row{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
        .badge{display:inline-block;border-radius:5px;background:#f7e6df;color:var(--brand-dark);padding:2px 7px;font-size:11px;font-weight:800;white-space:nowrap}
        .score{color:#b47b22;font-weight:800;white-space:nowrap}
        .service-note{font-size:14px;color:var(--muted);max-width:720px;margin-bottom:28px}
        .feature-band{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:stretch}
        .feature-story{min-height:315px;border-radius:20px;overflow:hidden;position:relative;background:url('https://images.unsplash.com/photo-1516589178581-6cd7833ae3b2?auto=format&fit=crop&w=1100&q=82') center/cover}
        .feature-story:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(15,20,20,.85))}
        .feature-copy{position:absolute;z-index:1;bottom:24px;left:25px;right:25px;color:#fff}
        .feature-copy h3{font-size:25px;margin:7px 0}.feature-copy p{font-size:14px;color:#e6e8e3;margin:0}
        .mini-list{display:flex;flex-direction:column;gap:11px}
        .mini-item{display:flex;gap:14px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:13px;align-items:center}
        .mini-item img{width:72px;height:72px;object-fit:cover;border-radius:9px}
        .mini-item h3{font-size:15px;margin:0 0 3px}.mini-item p{font-size:12px;color:var(--muted);margin:0}
        .result-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}
        .result-table th,.result-table td{text-align:left;padding:15px 17px;border-bottom:1px solid var(--line);font-size:14px}
        .result-table th{background:#f0ece4;color:#59615f;font-size:12px}.result-table tr:last-child td{border-bottom:0}
        .result-table td:first-child{font-weight:800}
        .category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
        .category-card{padding:24px;border-radius:15px;background:var(--surface);border:1px solid var(--line);min-height:166px;position:relative}
        .category-card:hover{border-color:var(--brand);box-shadow:var(--shadow)}
        .category-card h3{font-size:18px;margin:0 0 9px}.category-card p{font-size:13px;color:var(--muted);margin:0 0 13px}.category-card span{color:var(--brand-dark);font-size:13px;font-weight:800}
        .rank-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:32px}
        .rank-list{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
        .rank-item{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}
        .rank-no{font-size:18px;font-weight:900;color:#afb3ab}.rank-item:nth-child(-n+3) .rank-no{color:var(--brand)}
        .rank-name{font-weight:800;font-size:14px}.rank-name small{display:block;color:var(--muted);font-weight:500;font-size:11px}
        .rank-score{text-align:right;font-size:12px;color:#ae7927;font-weight:800}
        .rank-aside{background:var(--sage);border-radius:18px;padding:28px;color:#fff;min-height:270px}
        .rank-aside h3{font-size:24px;line-height:1.3;margin-bottom:15px}.rank-aside p{color:#e5ece5;font-size:14px}
        .news-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
        .news-item{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}
        .news-item img{width:110px;height:78px;object-fit:cover;border-radius:9px}
        .news-item h3{font-size:15px;line-height:1.45;margin:0 0 7px}.news-item time{font-size:12px;color:var(--muted)}
        .assurance{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
        .assurance-item{padding:24px 0;border-top:3px solid var(--sage)}
        .assurance-item:nth-child(2){border-color:var(--gold)}.assurance-item:nth-child(3){border-color:var(--brand)}
        .assurance-item h3{font-size:18px;margin:0 0 8px}.assurance-item p{font-size:14px;color:var(--muted);margin:0}
        .topic-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
        .topic{padding:25px;border-radius:15px;background:#e9dfd2}.topic:nth-child(2){background:#dfe8df}.topic:nth-child(3){background:#f3e4c6}
        .topic h3{font-size:19px;margin:0 0 9px}.topic p{font-size:13px;color:#5d635e;margin:0}
        .quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
        .quick{background:var(--surface);padding:21px;border-left:4px solid var(--brand);border-radius:10px;box-shadow:0 5px 20px rgba(42,38,31,.04)}
        .quick h3{font-size:16px;margin:0 0 7px}.quick p{font-size:13px;color:var(--muted);margin:0}
        .faq-list{max-width:850px;margin:0 auto}
        details{border-bottom:1px solid var(--line);padding:19px 0}
        summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between;gap:20px}
        summary::-webkit-details-marker{display:none}summary:after{content:"＋";color:var(--brand);font-size:20px}details[open] summary:after{content:"－"}
        details p{color:var(--muted);font-size:14px;margin:13px 35px 0 0}
        .feedback{background:#efe6db}
        .feedback-box{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
        .feedback h2{font-size:32px;line-height:1.3;margin:8px 0 13px}.feedback-copy{color:var(--muted);font-size:15px}
        .form{background:var(--surface);padding:25px;border:1px solid var(--line);border-radius:16px}
        .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
        label{display:block;color:#4f5755;font-size:13px;font-weight:800;margin-bottom:5px}
        input,textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);margin-bottom:15px}
        input:focus,textarea:focus{border-color:var(--brand);outline:0;box-shadow:0 0 0 3px rgba(228,108,69,.12)}
        textarea{resize:vertical;min-height:92px}.form-hint{font-size:12px;color:var(--muted);margin:12px 0 0}
        footer{background:#202827;color:#dce2db;padding:52px 0 20px}
        .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px;padding-bottom:38px}
        footer .brand{color:#fff;margin-bottom:15px}footer .brand small{color:#9eaaa1}
        footer p,footer a{font-size:13px;color:#aeb8b0}footer p{max-width:270px}
        footer h3{font-size:14px;color:#fff;margin:0 0 15px}footer ul{padding:0;margin:0;list-style:none}footer li{margin:7px 0}footer a:hover{color:#f0b18e}
        .copyright{border-top:1px solid rgba(255,255,255,.13);padding-top:18px;color:#8f9a92;font-size:12px;display:flex;justify-content:space-between;gap:15px}
        @media(max-width:1024px){
            .hero-grid,.feature-band,.rank-layout,.feedback-box{grid-template-columns:1fr 1fr;gap:28px}
            .drama-grid{grid-template-columns:repeat(3,1fr)}.matrix-grid,.category-grid{grid-template-columns:repeat(2,1fr)}
            .hero-grid{grid-template-columns:1fr}.hero-console{max-width:650px}
        }
        @media(max-width:768px){
            .container{width:min(100% - 32px,var(--max))}.nav-wrap{height:68px}.menu-toggle{display:block}
            .nav{display:none;position:absolute;top:68px;left:0;right:0;padding:13px 16px 18px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(30,30,20,.08);flex-direction:column;align-items:stretch;gap:3px}
            .nav.open{display:flex}.nav a{padding:11px 4px}.nav-cta{text-align:center}
            section{padding:55px 0}.section-head{display:block}.section-head p{margin-top:12px}
            .stats-grid{grid-template-columns:repeat(2,1fr);gap:18px}.stat{padding:0 15px;border-right:0}.stat:nth-child(odd){padding-left:0}
            .drama-grid{grid-template-columns:repeat(2,1fr);gap:13px}.drama-info{padding:11px}.drama-title{font-size:14px}
            .timeline{grid-template-columns:1fr 1fr}.timeline:before{display:none}.topic-strip,.quick-grid,.assurance{grid-template-columns:1fr}
            .news-grid,.compare,.feedback-box,.rank-layout{grid-template-columns:1fr}.rank-list{grid-template-columns:1fr}
            .footer-grid{grid-template-columns:1fr 1fr;gap:25px}
        }
        @media(max-width:520px){
            h1{font-size:39px}.hero{padding:48px 0 42px}.hero-copy{font-size:16px}
            .matrix-grid,.category-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}
            .timeline{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.copyright{display:block}.copyright span{display:block;margin-top:7px}
            .feature-story{min-height:270px}.mini-item img{width:62px;height:62px}
        }

/* roulang page: category1 */
:root{
 --ink:#20252b;--muted:#727982;--paper:#f7f5f1;--surface:#fffdf9;--line:#e6e1d8;
 --brand:#e46c45;--brand-dark:#b9482b;--sage:#718b78;--gold:#d6a84f;--deep:#242c2d;
 --radius:18px;--shadow:0 16px 40px rgba(42,38,31,.08);--max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select{font:inherit}
button{cursor:pointer}
.container{width:min(var(--max),calc(100% - 44px));margin:0 auto}
:focus-visible{outline:3px solid #d6a84f;outline-offset:3px}
header{position:sticky;top:0;z-index:20;background:rgba(247,245,241,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(230,225,216,.9)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;white-space:nowrap}
.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:19px;box-shadow:5px 5px 0 #f0c86c}
.brand small{display:block;color:var(--muted);font-weight:500;font-size:11px;line-height:1.2}
.nav{display:flex;align-items:center;gap:24px}
.nav a{color:#525a5c;font-size:14px;font-weight:700;position:relative;padding:8px 0}
.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--brand);transition:right .2s}
.nav a:hover,.nav a.active{color:var(--brand-dark)}
.nav a:hover:after,.nav a.active:after{right:0}
.nav .nav-cta{padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:#fff}
.nav .nav-cta:after{display:none}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;color:var(--ink)}
.hero{position:relative;min-height:440px;padding:64px 0;background:#242c2d;color:#fff;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,22,22,.94) 0%,rgba(17,22,22,.78) 46%,rgba(17,22,22,.15) 100%),url("https://images.unsplash.com/photo-1516589178581-6cd7833ae3b2?auto=format&fit=crop&w=1800&q=85") center 42%/cover}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.crumb{font-size:13px;color:#d8d8d1;margin-bottom:20px}
.crumb a{color:#f0c86c}
.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--gold)}
h1{font-size:42px;line-height:1.22;margin:10px 0 14px;max-width:600px}
.hero p{color:#e2e3dd;max-width:610px;margin:0 0 24px;font-size:17px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:10px 21px;border-radius:10px;border:1px solid transparent;font-weight:800;font-size:14px;transition:background .2s,color .2s,border-color .2s,transform .2s}
.btn-primary{background:var(--brand);color:#fff;box-shadow:0 8px 18px rgba(228,108,69,.2)}
.btn-primary:hover{background:var(--brand-dark);transform:translateY(-2px)}
.btn-secondary{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.35);color:#fff}
.btn-secondary:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}
.hero-feature{justify-self:end;width:min(100%,330px);aspect-ratio:4/3;border:1px solid rgba(255,255,255,.25);border-radius:14px;overflow:hidden;position:relative;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.hero-feature img{width:100%;height:100%;object-fit:cover}
.hero-feature-label{position:absolute;left:14px;top:14px;background:var(--gold);color:#20252b;border-radius:5px;padding:4px 9px;font-size:12px;font-weight:800}
.hero-feature-caption{position:absolute;inset:auto 0 0;padding:34px 18px 16px;background:linear-gradient(transparent,rgba(0,0,0,.82));font-weight:800}
main{min-height:50vh}
section{padding:54px 0}
section+section{border-top:1px solid rgba(230,225,216,.72)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}
.section-head h2{font-size:27px;line-height:1.3;margin:5px 0 0}
.section-head p{max-width:570px;color:var(--muted);margin:0}
.breadcrumb-band{padding:14px 0;background:#fffdf9;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.breadcrumb-band a{color:var(--brand-dark);font-weight:700}
.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:22px}
.filter-tags{display:flex;gap:8px;flex-wrap:wrap}
.filter-tag{border:1px solid var(--line);background:var(--surface);color:#545b5d;padding:7px 12px;border-radius:7px;font-size:13px;font-weight:700;transition:.2s}
.filter-tag:hover,.filter-tag[aria-pressed="true"]{border-color:var(--brand);color:var(--brand-dark);background:#fff5ef}
.sort-select{border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);padding:8px 30px 8px 11px}
.drama-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.drama-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}
.drama-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#e9b29d}
.poster{height:auto;aspect-ratio:4/3;overflow:hidden;background:#e9e5dc;position:relative}
.poster img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.drama-card:hover .poster img{transform:scale(1.04)}
.poster .badge{position:absolute;left:10px;top:10px}
.drama-info{padding:13px 14px 15px}
.drama-title{font-size:15px;font-weight:800;margin:0 0 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.meta-row{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.badge{display:inline-block;border-radius:5px;background:#f7e6df;color:var(--brand-dark);padding:2px 7px;font-size:11px;font-weight:800;white-space:nowrap}
.rating{color:#916a1e;font-weight:800;white-space:nowrap}
.center-action{text-align:center;margin-top:28px}
.note-band{background:#eee9df}
.note-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.note-grid h2{font-size:25px;line-height:1.35;margin:5px 0 12px}
.note-grid p{color:#59615f;margin:0}
.status-list{list-style:none;padding:0;margin:0;border-top:1px solid #d9d3c8}
.status-list li{display:grid;grid-template-columns:115px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid #d9d3c8}
.status-list strong{font-size:14px}
.status-list span{font-size:14px;color:var(--muted)}
.article-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.article-item{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:.2s}
.article-item:hover{border-color:#e9b29d;box-shadow:var(--shadow)}
.article-item img{width:100%;aspect-ratio:16/9;object-fit:cover}
.article-copy{padding:14px}
.article-item h3{font-size:15px;line-height:1.5;margin:0 0 7px}
.article-item time{font-size:12px;color:var(--muted)}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:17px 2px}
.faq-list summary{font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"＋";color:var(--brand-dark);font-size:19px;line-height:1}
.faq-list details[open] summary:after{content:"－"}
.faq-list details p{margin:11px 34px 0 0;color:var(--muted);font-size:14px}
.feedback-section{background:var(--deep);color:#f7f5ef}
.feedback-section .section-kicker{color:#e8b66b}
.feedback-section .section-head p{color:#c5cbc5}
.feedback-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:800px}
.feedback-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}
.feedback-form .wide{grid-column:1/-1}
.feedback-form input,.feedback-form select,.feedback-form textarea{width:100%;border:1px solid rgba(255,255,255,.23);border-radius:8px;background:#30393a;color:#fff;padding:11px 12px}
.feedback-form input::placeholder,.feedback-form textarea::placeholder{color:#aeb7b2}
.feedback-form textarea{min-height:104px;resize:vertical}
.feedback-form button{justify-self:start}
.feedback-note{font-size:12px;color:#b7c0ba;margin:10px 0 0}
footer{background:#1c2324;color:#e9ece6;padding:48px 0 18px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px;padding-bottom:30px}
footer .brand{color:#fff}
footer .brand small{color:#abb4ad}
footer p{color:#b7c0ba;font-size:13px;max-width:310px;margin:16px 0 0}
footer h3{font-size:14px;margin:0 0 13px;color:#fff}
footer ul{padding:0;margin:0;list-style:none}
footer li{margin:7px 0}
footer li a{font-size:13px;color:#b7c0ba;transition:color .2s}
footer li a:hover{color:#f0c86c}
.copyright{border-top:1px solid rgba(255,255,255,.13);padding-top:15px;display:flex;justify-content:space-between;gap:14px;color:#aab2ad;font-size:12px}
@media(max-width:1024px){
 .nav{gap:14px}
 .nav a{font-size:13px}
 .hero-inner{gap:28px}
 .drama-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
 .footer-grid>div:last-child{display:none}
}
@media(max-width:768px){
 .container{width:min(var(--max),calc(100% - 32px))}
 .nav-wrap{height:70px}
 .menu-toggle{display:block}
 .nav{display:none;position:absolute;top:70px;left:0;right:0;padding:12px 20px 18px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(42,38,31,.08);align-items:stretch;gap:2px}
 .nav.is-open{display:flex;flex-direction:column}
 .nav a{padding:10px 4px}
 .nav a:after{display:none}
 .nav .nav-cta{align-self:flex-start;margin-top:5px;padding:8px 13px}
 .hero{padding:45px 0}
 .hero-inner{grid-template-columns:1fr;gap:25px}
 .hero-feature{justify-self:start;width:min(100%,430px);aspect-ratio:16/9}
 h1{font-size:36px}
 section{padding:43px 0}
 .section-head{align-items:flex-start;flex-direction:column;gap:8px}
 .section-head h2{font-size:24px}
 .drama-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .article-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .note-grid{grid-template-columns:1fr;gap:20px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:24px}
 .footer-grid>div:last-child{display:block}
}
@media(max-width:520px){
 .container{width:calc(100% - 28px)}
 .brand{gap:9px;font-size:14px}
 .brand-mark{width:36px;height:36px}
 .hero{padding:36px 0}
 h1{font-size:31px}
 .hero p{font-size:15px}
 .hero-actions .btn{flex:1;padding:9px 12px}
 .hero-feature{aspect-ratio:4/3}
 .filter-bar{align-items:flex-start;flex-direction:column}
 .filter-tags{gap:6px}
 .filter-tag{padding:6px 9px;font-size:12px}
 .sort-select{width:100%}
 .drama-grid{gap:9px}
 .drama-info{padding:10px}
 .drama-title{font-size:14px}
 .meta-row{align-items:flex-start;flex-direction:column;gap:4px}
 .article-list{grid-template-columns:1fr}
 .status-list li{grid-template-columns:92px 1fr;gap:10px}
 .feedback-form{grid-template-columns:1fr}
 .feedback-form .wide{grid-column:auto}
 .footer-grid{grid-template-columns:1fr}
 .copyright{flex-direction:column;gap:5px}
}

/* roulang page: category2 */
:root{
      --ink:#20252b;
      --muted:#727982;
      --paper:#f7f5f1;
      --surface:#fffdf9;
      --line:#e6e1d8;
      --brand:#e46c45;
      --brand-dark:#b9482b;
      --sage:#718b78;
      --gold:#d6a84f;
      --deep:#242c2d;
      --radius:18px;
      --shadow:0 16px 40px rgba(42,38,31,.08);
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
    h1,h2,h3,p{margin-top:0}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer}
    .container{width:min(var(--max),calc(100% - 44px));margin:0 auto}
    header{position:sticky;top:0;z-index:20;background:rgba(247,245,241,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(230,225,216,.9)}
    .nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
    .brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
    .brand-mark{width:40px;height:40px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:19px;box-shadow:5px 5px 0 #f0c86c}
    .brand small{display:block;color:var(--muted);font-weight:500;font-size:11px;letter-spacing:.08em;line-height:1.2}
    .nav{display:flex;align-items:center;gap:24px}
    .nav a{color:#525a5c;font-size:14px;font-weight:700;position:relative;padding:8px 0}
    .nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--brand);transition:.2s}
    .nav a:hover,.nav a.active{color:var(--brand-dark)}
    .nav a:hover:after,.nav a.active:after{right:0}
    .nav-cta{padding:10px 16px!important;border:1px solid var(--line);border-radius:999px;background:#fff}
    .nav-cta:after{display:none}
    .menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;color:var(--ink)}
    .page-hero{padding:62px 0 54px;background:#eee9df;border-bottom:1px solid var(--line)}
    .crumbs{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:18px}
    .crumbs a:hover{color:var(--brand-dark)}
    .hero-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:42px;align-items:center}
    .eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--brand-dark)}
    h1{font-size:clamp(34px,5vw,58px);line-height:1.18;letter-spacing:-.04em;margin:10px 0 18px}
    .hero-text{font-size:17px;color:#59615f;max-width:650px;margin-bottom:24px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
    .btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:10px 21px;border-radius:10px;border:1px solid transparent;font-weight:800;font-size:14px;transition:.2s}
    .btn-primary{background:var(--brand);color:#fff;box-shadow:0 8px 18px rgba(228,108,69,.2)}
    .btn-primary:hover{background:var(--brand-dark);transform:translateY(-2px)}
    .btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}
    .btn-secondary:hover{border-color:var(--brand);color:var(--brand-dark);transform:translateY(-2px)}
    .hero-stack{position:relative;min-height:280px}
    .stack-card{position:absolute;border-radius:18px;overflow:hidden;border:6px solid #fff;box-shadow:var(--shadow)}
    .stack-card img{width:100%;height:100%;object-fit:cover}
    .stack-main{width:62%;height:260px;left:8%;top:8px;transform:rotate(-3deg)}
    .stack-side{width:42%;height:190px;right:0;bottom:0;transform:rotate(5deg)}
    .stack-label{position:absolute;left:18px;bottom:16px;color:#fff;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.45)}
    section{padding:68px 0}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:27px}
    .section-head h2{font-size:30px;line-height:1.25;letter-spacing:-.03em;margin:7px 0 0}
    .section-head p{max-width:580px;color:var(--muted);margin-bottom:0}
    .filter-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:25px}
    .filter-group{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
    .filter-label{font-size:13px;font-weight:800;color:var(--muted)}
    .filter-chip{border:1px solid var(--line);background:var(--surface);color:#626a6b;padding:7px 13px;border-radius:999px;font-size:13px;transition:.2s}
    .filter-chip:hover,.filter-chip.active{background:#f8e4dc;border-color:#e9b29d;color:var(--brand-dark)}
    .filter-select{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 12px;color:var(--ink);outline:none}
    .filter-select:focus,.filter-chip:focus,.btn:focus,.nav a:focus,.faq summary:focus{outline:3px solid rgba(228,108,69,.25);outline-offset:3px}
    .drama-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
    .drama-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.2s}
    .drama-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
    .poster{height:218px;overflow:hidden;background:#ddd}
    .poster img{width:100%;height:100%;object-fit:cover;transition:.35s}
    .drama-card:hover .poster img{transform:scale(1.04)}
    .drama-info{padding:14px}
    .drama-title{font-size:16px;font-weight:800;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .meta-row{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
    .badge{display:inline-block;border-radius:5px;background:#f7e6df;color:var(--brand-dark);padding:2px 7px;font-size:11px;font-weight:800;white-space:nowrap}
    .rating{color:#9b6c20;font-weight:800}
    .more-row{text-align:center;margin-top:30px}
    .wide-note{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .note-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0}
    .note-item{padding:22px 28px;border-right:1px solid var(--line)}
    .note-item:last-child{border-right:0}
    .note-item strong{display:block;font-size:22px;color:var(--brand-dark);margin-bottom:4px}
    .note-item span{font-size:13px;color:var(--muted)}
    .insight-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:stretch}
    .insight-panel{background:var(--deep);border-radius:18px;padding:29px;color:#f7f5ef}
    .insight-panel h2{font-size:27px;line-height:1.35;margin:7px 0 15px}
    .insight-panel p{color:#c7d0c9;font-size:14px}
    .insight-list{list-style:none;padding:0;margin:20px 0 0}
    .insight-list li{padding:12px 0;border-top:1px solid rgba(255,255,255,.13);font-size:14px;color:#dfe4df}
    .insight-list li:before{content:"◆";color:#e8b66b;font-size:9px;margin-right:10px}
    .article-list{display:flex;flex-direction:column;gap:12px}
    .article-item{display:flex;align-items:center;gap:15px;padding:15px;background:var(--surface);border:1px solid var(--line);border-radius:13px;transition:.2s}
    .article-item:hover{border-color:#e9b29d;box-shadow:var(--shadow)}
    .article-item img{width:86px;height:68px;border-radius:9px;object-fit:cover}
    .article-item h3{font-size:15px;line-height:1.45;margin:0 0 4px}
    .article-item p{font-size:12px;color:var(--muted);margin:0}
    .faq-section{background:#eee9df}
    .faq-list{max-width:850px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
    .faq{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 20px}
    .faq summary{cursor:pointer;list-style:none;font-weight:800;padding:17px 28px 17px 0;position:relative}
    .faq summary::-webkit-details-marker{display:none}
    .faq summary:after{content:"+";position:absolute;right:0;color:var(--brand);font-size:22px;font-weight:400;top:12px}
    .faq[open] summary:after{content:"−"}
    .faq p{color:var(--muted);font-size:14px;padding:0 0 17px;margin:0}
    .feedback{padding:54px 0;background:var(--brand)}
    .feedback-wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;color:#fff}
    .feedback h2{font-size:28px;line-height:1.3;margin:0 0 8px}
    .feedback p{margin:0;color:#fff2ed;font-size:14px}
    .feedback .btn{background:#fff;color:var(--brand-dark)}
    .feedback .btn:hover{background:#fff6ec}
    footer{background:var(--deep);color:#e9eee8;padding:54px 0 0}
    .footer-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr .8fr;gap:38px}
    footer .brand{color:#fff}
    footer .brand small{color:#aeb9b1}
    footer p{max-width:300px;color:#b7c0ba;font-size:14px;margin:18px 0 0}
    footer h3{font-size:14px;margin:0 0 15px;color:#fff}
    footer ul{list-style:none;padding:0;margin:0}
    footer li{margin:7px 0}
    footer li a{font-size:13px;color:#b7c0ba;transition:.2s}
    footer li a:hover{color:#f0bd83}
    .copyright{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding:20px 0;color:#93a098;font-size:12px}
    @media (max-width:1024px){
      .drama-grid{grid-template-columns:repeat(3,1fr)}
      .hero-layout,.insight-layout{gap:28px}
      .nav{gap:15px}
      .nav a{font-size:13px}
    }
    @media (max-width:768px){
      .container{width:min(var(--max),calc(100% - 32px))}
      .nav-wrap{height:70px}
      .menu-toggle{display:block}
      .nav{display:none;position:absolute;left:16px;right:16px;top:78px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:5px}
      .nav.open{display:flex}
      .nav a{padding:10px 5px}
      .nav-cta{padding:10px!important}
      .hero-layout,.insight-layout{grid-template-columns:1fr}
      .page-hero{padding:45px 0 38px}
      .hero-stack{min-height:250px;max-width:500px}
      section{padding:52px 0}
      .section-head{display:block}
      .section-head p{margin-top:12px}
      .drama-grid{grid-template-columns:repeat(2,1fr);gap:14px}
      .poster{height:205px}
      .note-grid{grid-template-columns:1fr}
      .note-item{border-right:0;border-bottom:1px solid var(--line);padding:16px 20px}
      .note-item:last-child{border-bottom:0}
      .filter-bar{align-items:flex-start;flex-direction:column}
      .feedback-wrap{align-items:flex-start;flex-direction:column}
      .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
      .copyright{align-items:flex-start;flex-direction:column;gap:5px}
    }
    @media (max-width:520px){
      h1{font-size:35px}
      .hero-text{font-size:15px}
      .hero-actions{display:grid;grid-template-columns:1fr}
      .hero-actions .btn{width:100%}
      .drama-grid{gap:10px}
      .poster{height:180px}
      .drama-info{padding:11px}
      .drama-title{font-size:14px}
      .meta-row{font-size:11px}
      .stack-main{width:67%;height:225px;left:2%}
      .stack-side{width:45%;height:165px}
      .footer-grid{grid-template-columns:1fr}
    }

/* roulang page: category3 */
:root{
 --ink:#20252b;--muted:#727982;--paper:#f7f5f1;--surface:#fffdf9;
 --line:#e6e1d8;--brand:#e46c45;--brand-dark:#b9482b;--sage:#718b78;
 --gold:#d6a84f;--deep:#242c2d;--radius:18px;
 --shadow:0 16px 40px rgba(42,38,31,.08);--max:1180px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.container{width:min(var(--max),calc(100% - 44px));margin:0 auto}
header{position:sticky;top:0;z-index:20;background:rgba(247,245,241,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(230,225,216,.9)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:19px;box-shadow:5px 5px 0 #f0c86c}
.brand small{display:block;color:var(--muted);font-weight:500;font-size:11px;letter-spacing:.08em;line-height:1.2}
.nav{display:flex;align-items:center;gap:24px}
.nav a{color:#525a5c;font-size:14px;font-weight:700;position:relative;padding:8px 0}
.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--brand);transition:.2s}
.nav a:hover,.nav a.active{color:var(--brand-dark)}
.nav a:hover:after,.nav a.active:after{right:0}
.nav .nav-cta{padding:10px 16px!important;border:1px solid var(--line);border-radius:999px;background:#fff}
.nav .nav-cta:after{display:none}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;color:var(--ink)}
.hero{padding:62px 0 54px;background:#eee9df;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--brand-dark)}
h1{font-size:clamp(36px,5vw,58px);line-height:1.18;letter-spacing:-.04em;margin:12px 0 18px}
h1 em{font-style:normal;color:var(--brand-dark)}
.hero-copy{font-size:17px;color:#59615f;max-width:650px;line-height:1.9;margin:0 0 26px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:10px 21px;border-radius:10px;border:1px solid transparent;font-weight:800;font-size:14px;transition:.2s}
.btn-primary{background:var(--brand);color:#fff;box-shadow:0 8px 18px rgba(228,108,69,.2)}
.btn-primary:hover{background:var(--brand-dark);transform:translateY(-2px)}
.btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}
.btn-secondary:hover{border-color:var(--brand);color:var(--brand-dark);transform:translateY(-2px)}
.btn:focus,.nav a:focus,input:focus,select:focus,textarea:focus,summary:focus,.menu-toggle:focus{outline:3px solid rgba(228,108,69,.3);outline-offset:3px}
.hero-panel{background:var(--deep);color:#f7f5ef;border-radius:22px;padding:26px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.hero-panel:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-65px;top:-70px;background:rgba(214,168,79,.2)}
.panel-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:16px;margin-bottom:16px}
.panel-title{font-size:19px;font-weight:800}
.panel-label{color:#e8b66b;font-size:12px}
.panel-list{list-style:none;padding:0;margin:0}
.panel-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:14px;color:#d4dbd5}
.panel-list li:last-child{border-bottom:0}
.panel-list b{color:#f0c878}
section{padding:72px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}
.section-head h2{font-size:30px;line-height:1.25;letter-spacing:-.03em;margin:7px 0 0}
.section-head p{max-width:590px;color:var(--muted);margin:0}
.breadcrumb{padding:20px 0 0;color:var(--muted);font-size:13px}
.breadcrumb a:hover{color:var(--brand-dark)}
.filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:28px}
.filter-bar label{font-size:13px;font-weight:800;color:#51595a}
.filter-bar select{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 30px 8px 11px;color:var(--ink)}
.filter-note{margin-left:auto;color:var(--muted);font-size:13px}
.drama-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.drama-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.2s}
.drama-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.poster{height:245px;overflow:hidden;background:#ddd}
.poster img{width:100%;height:100%;object-fit:cover;transition:.35s}
.drama-card:hover .poster img{transform:scale(1.04)}
.drama-info{padding:14px}
.drama-title{font-size:16px;font-weight:800;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.meta-row{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.badge{display:inline-block;border-radius:5px;background:#f7e6df;color:var(--brand-dark);padding:2px 7px;font-size:11px;font-weight:800;white-space:nowrap}
.more-row{text-align:center;margin-top:30px}
.reading-section{background:var(--deep);color:#f7f5ef}
.reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
.reading-grid h2{font-size:30px;line-height:1.3;margin:8px 0 15px}
.reading-grid p{color:#c4ccc5;margin:0}
.reading-list{list-style:none;margin:0;padding:0}
.reading-list li{border-top:1px solid rgba(255,255,255,.14);padding:14px 0;color:#d8ded8}
.reading-list strong{display:block;color:#f0c878;font-size:14px;margin-bottom:3px}
.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.article{background:var(--surface);border:1px solid var(--line);border-radius:15px;overflow:hidden;transition:.2s}
.article:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.article img{width:100%;height:145px;object-fit:cover}
.article-body{padding:16px}
.article-body time{font-size:12px;color:var(--brand-dark);font-weight:700}
.article-body h3{font-size:17px;line-height:1.45;margin:7px 0}
.article-body p{font-size:13px;color:var(--muted);margin:0}
.faq-list{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line);padding:18px 0}
summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between;gap:20px}
summary::-webkit-details-marker{display:none}
summary:after{content:"＋";color:var(--brand);font-size:20px;line-height:1}
details[open] summary:after{content:"－"}
details p{color:var(--muted);max-width:800px;margin:12px 0 0}
.feedback{background:#eee9df}
.form-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:42px;align-items:start}
.form-wrap h2{font-size:30px;line-height:1.3;margin:8px 0 12px}
.form-wrap p{color:var(--muted);margin:0}
.feedback-form{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.field{display:flex;flex-direction:column;gap:6px}
.field.full{grid-column:1/-1}
.field label{font-size:13px;font-weight:800}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px 12px;color:var(--ink)}
.field textarea{min-height:105px;resize:vertical}
.form-tip{font-size:12px;color:var(--muted);margin:14px 0}
footer{background:var(--deep);color:#e9eee8;padding:54px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:35px}
footer .brand{color:#fff}
footer .brand small{color:#aeb8b0}
footer .brand-mark{box-shadow:5px 5px 0 #c69443}
footer p{color:#b7c0ba;font-size:14px;max-width:300px;margin:20px 0 0}
footer h3{font-size:14px;margin:3px 0 13px;color:#f0c878}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin:7px 0;color:#b7c0ba;font-size:13px}
footer li a:hover{color:#fff}
.copyright{border-top:1px solid rgba(255,255,255,.14);margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;color:#9da8a0;font-size:12px}
@media(max-width:1024px){
 .hero-grid{gap:30px}.drama-grid{grid-template-columns:repeat(3,1fr)}
 .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
 .footer-grid>div:last-child{display:none}
}
@media(max-width:768px){
 .container{width:min(var(--max),calc(100% - 32px))}
 .nav-wrap{height:70px}.menu-toggle{display:block}
 .nav{display:none;position:absolute;left:16px;right:16px;top:78px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px}
 .nav.open{display:flex}.nav a{padding:10px 12px}.nav a:after{display:none}
 .hero{padding:45px 0}.hero-grid,.reading-grid,.form-wrap{grid-template-columns:1fr}
 .hero-panel{order:-1}.section-head{display:block}.section-head p{margin-top:12px}
 .drama-grid{grid-template-columns:repeat(2,1fr);gap:14px}.poster{height:220px}
 .article-list{grid-template-columns:1fr 1fr}.filter-note{width:100%;margin-left:0}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
 h1{font-size:35px}.hero-copy{font-size:16px}
 section{padding:52px 0}.drama-grid{gap:11px}.poster{height:190px}
 .drama-info{padding:11px}.drama-title{font-size:14px}
 .article-list,.form-grid,.footer-grid{grid-template-columns:1fr}
 .footer-grid>div:last-child{display:block}.copyright{display:block}.copyright span{display:block;margin:4px 0}
 .filter-bar{align-items:flex-start;flex-direction:column}
}
