/* 成人短剧 / Midnight cinema design system */
:root {
 color-scheme:dark;
 --ink:#15141d;
 --base:#191821;
 --panel:#25232f;
 --panel-light:#302d3c;
 --edge:rgba(226,216,241,.12);
 --edge-strong:rgba(226,216,241,.24);
 --berry:#a54568;
 --berry-soft:#c66a8b;
 --violet:#8994c6;
 --gold:#e7b877;
 --text:#f2eff5;
 --muted:#b3aebd;
 --dim:#87818f;
 --shell:1400px;
 --gutter:clamp(18px,3.8vw,60px);
 --radius:5px;
 font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
 font-synthesis:none;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--base);scroll-padding-top:92px}
body{margin:0;background:var(--base);color:var(--text);font-size:16px;line-height:1.72;-webkit-font-smoothing:antialiased}
::selection{color:#fff;background:#8e3c5b}
a{color:inherit;text-decoration:none}
a:hover{color:var(--gold)}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
img{display:block;max-width:100%;height:auto}
button,input,textarea{font:inherit}
h1,h2,h3,p,dl,dd{margin:0}
h1,h2,h3{line-height:1.28;letter-spacing:-.027em;text-wrap:balance}
p{overflow-wrap:anywhere}
h1{font-size:clamp(2.15rem,4.7vw,4.65rem);font-weight:780}
h2{font-size:clamp(1.65rem,2.7vw,2.7rem);font-weight:760}
h3{font-size:clamp(1.14rem,1.45vw,1.53rem);font-weight:730}
.shell{width:min(var(--shell),100% - (var(--gutter) * 2));margin-inline:auto}
.skip-link{position:fixed;top:0;left:20px;z-index:1000;background:var(--gold);color:#17131d;padding:10px 20px;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.site-header{position:relative;background:rgba(21,20,29,.97);border-bottom:1px solid var(--edge);z-index:5}
.topbar{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand-lockup{display:flex;align-items:center;gap:14px;min-width:0;color:var(--text)}
.brand-lockup img{width:42px;height:42px;object-fit:contain;border-radius:3px;background:var(--panel)}
.brand-lines{display:flex;flex-direction:column;line-height:1.17}
.brand-lines strong{font-size:1.22rem;letter-spacing:.06em;font-weight:810}
.brand-lines small{font-size:.61rem;letter-spacing:.19em;color:var(--dim);margin-top:6px;white-space:nowrap}
.primary-nav{display:flex;gap:clamp(15px,2.5vw,38px);align-items:center}
.primary-nav a{position:relative;font-weight:650;font-size:.9rem;color:var(--muted);padding:32px 0 29px;white-space:nowrap}
.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--text)}
.primary-nav a[aria-current=page]::after{content:"";height:2px;position:absolute;bottom:0;left:0;right:0;background:var(--berry-soft)}
.site-footer{margin-top:90px;border-top:1px solid var(--edge);background:var(--ink)}
.footer-inner{padding:46px 0 32px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:44px;row-gap:24px}
.footer-inner strong{font-size:1.12rem}
.footer-inner p{font-size:.87rem;color:var(--muted);margin-top:8px;max-width:560px}
.footer-inner nav{display:flex;gap:22px;align-items:start;justify-content:flex-end;flex-wrap:wrap;font-size:.85rem;color:var(--muted)}
.footer-inner small{grid-column:1/-1;border-top:1px solid var(--edge);padding-top:22px;color:var(--dim);font-size:.76rem;line-height:1.8}
.overline{font-size:.73rem;line-height:1.5;font-weight:730;letter-spacing:.19em;color:var(--gold);text-transform:uppercase}
.signal{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--berry-soft);margin-right:8px;box-shadow:0 0 0 4px rgba(165,69,104,.15)}
.opening{padding:clamp(32px,4vw,64px) 0 44px;display:grid;grid-template-columns:.82fr 1.18fr;align-items:stretch;gap:clamp(25px,3.8vw,58px)}
.opening-copy{padding:clamp(13px,2vw,36px) 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.opening h1{max-width:610px;margin-top:24px}
.opening h1::first-line{color:var(--text)}
.intro{font-size:clamp(.97rem,1.2vw,1.12rem);line-height:1.95;color:var(--muted);max-width:560px;margin-top:27px}
.opening-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.opening-meta span{font-size:.77rem;border:1px solid var(--edge-strong);padding:5px 12px;border-radius:2px;color:var(--muted);background:rgba(255,255,255,.015)}
.feature-frame{display:block;position:relative;overflow:hidden;min-height:510px;background:linear-gradient(140deg,#463048,#1e2030)}
.feature-frame::before{position:absolute;z-index:1;inset:20% 0 0;content:"";pointer-events:none;background:linear-gradient(0deg,rgba(9,8,14,.94),rgba(11,10,18,.17) 68%,transparent)}
.feature-frame img{height:100%;width:100%;max-height:600px;min-height:510px;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.feature-frame:hover img{transform:scale(1.045)}
.feature-overlay{position:absolute;z-index:2;bottom:clamp(22px,3vw,40px);left:clamp(22px,3vw,40px);right:clamp(22px,3vw,40px);color:var(--text);display:flex;flex-direction:column;gap:11px}
.feature-overlay small{font-size:.71rem;letter-spacing:.17em;color:var(--gold);font-weight:700}
.feature-overlay strong{font-size:clamp(1.8rem,3vw,3.15rem);font-weight:800;line-height:1.2}
.feature-overlay span{font-size:.95rem;line-height:1.7;max-width:430px;color:#e7e2ec}
.editorial-section{padding-top:clamp(35px,5vw,78px);padding-bottom:clamp(24px,4vw,60px);border-top:1px solid var(--edge)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}
.section-heading h2{margin-top:11px}
.section-heading>p{color:var(--muted);font-size:.89rem;max-width:370px;line-height:1.9;text-align:right}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(15px,2.2vw,32px)}
.work-card{background:var(--panel);min-width:0;display:flex;flex-direction:column;border:1px solid var(--edge);border-radius:var(--radius);overflow:hidden;transition:border-color .25s,transform .25s,background .25s}
.work-card:hover{border-color:rgba(165,69,104,.55);background:#2a2635;transform:translateY(-3px)}
.card-cover{display:block;position:relative;overflow:hidden;background:linear-gradient(145deg,#3e2a3c,#222536);aspect-ratio:1.32}
.card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.card-cover:hover img{transform:scale(1.06)}
.cover-tag{position:absolute;left:16px;bottom:15px;font-size:.72rem;line-height:1.2;font-weight:690;color:#fff;padding:7px 10px;background:rgba(19,17,28,.77);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18)}
.card-text{padding:23px 25px 25px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.card-text .eyebrow{font-size:.72rem;font-weight:690;color:var(--violet);letter-spacing:.05em;margin-bottom:10px}
.card-text h3{margin-bottom:10px}
.card-text p{font-size:.85rem;color:var(--muted);line-height:1.85;flex-grow:1}
.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--gold);font-size:.84rem;font-weight:710;letter-spacing:.01em}
.card-text .text-link{margin-top:20px}
.text-link:hover{color:#ffdaa4}
.line-feature{margin:26px 0 clamp(45px,7vw,98px);display:grid;grid-template-columns:1fr 1fr;min-height:350px;background:var(--panel);border:1px solid var(--edge)}
.line-feature-copy{padding:clamp(25px,4vw,60px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.line-feature-copy h2{max-width:500px;margin:13px 0 20px}
.line-feature-copy>p:not(.overline){color:var(--muted);font-size:.94rem;line-height:2;max-width:520px}
.pill-link{display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:10px 20px;margin-top:25px;border:1px solid var(--berry-soft);color:#fff;background:rgba(165,69,104,.19);font-size:.87rem;font-weight:700;border-radius:3px;transition:background .25s,border-color .25s}
.pill-link:hover{background:var(--berry);color:#fff}
.line-feature-image{min-height:350px;position:relative;overflow:hidden;background:linear-gradient(115deg,#3b263a,#181925)}
.line-feature-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(37,35,47,.25),transparent 50%);pointer-events:none}
.line-feature-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.ai-zone{border-color:rgba(137,148,198,.28)}
.ai-zone .overline,.ai-zone .eyebrow{color:var(--violet)}
.section-tail{display:flex;justify-content:flex-end;margin-top:23px}
.section-tail a{font-size:.9rem;color:var(--gold);font-weight:720;border-bottom:1px solid rgba(231,184,119,.5);padding-bottom:7px}
.section-tail a:hover{color:#ffe0ad;border-color:#ffe0ad}
.short-entries{border-top:1px solid var(--edge);padding:clamp(34px,5vw,78px) 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,6vw,90px)}
.short-entries h2{margin-top:13px;max-width:500px}
.short-entries>div:first-child>p:not(.overline){margin:19px 0 22px;color:var(--muted);max-width:450px;line-height:1.9}
.short-entry-list{border-top:1px solid var(--edge)}
.short-entry{display:flex;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid var(--edge)}
.short-entry img{width:97px;height:106px;object-fit:cover;flex:0 0 auto;background:var(--panel)}
.short-entry>span:nth-child(2){display:flex;flex-direction:column;gap:8px;flex-grow:1}
.short-entry strong{font-size:1.1rem;color:var(--text)}
.short-entry small{font-size:.82rem;color:var(--muted);line-height:1.65}
.short-entry>span:last-child{font-size:1.2rem;color:var(--gold);margin-left:10px}
.short-entry:hover strong{color:var(--gold)}
.inner-page{padding-top:29px}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:.77rem;color:var(--dim);min-height:30px}
.breadcrumbs a{color:var(--muted)}
.breadcrumbs a:hover{color:var(--gold)}
.topic-hero{position:relative;padding:clamp(40px,7vw,100px) 0 clamp(36px,5.5vw,75px);max-width:950px}
.topic-hero::before{content:"";position:absolute;top:55px;right:10%;width:180px;height:180px;border-radius:50%;background:rgba(137,148,198,.10);filter:blur(72px);pointer-events:none}
.topic-hero h1{max-width:870px;margin:22px 0}
.topic-hero>p:last-child{font-size:1.05rem;max-width:750px;line-height:2;color:var(--muted)}
.topic-hero--comic::before{background:rgba(165,69,104,.15)}
.inner-page .editorial-section{padding-top:43px}
.inner-page .work-card--feature .card-cover{aspect-ratio:1.32}
.article-band{margin:clamp(40px,6vw,85px) 0 0;padding:clamp(30px,5vw,72px);background:linear-gradient(130deg,#302735 0%,#25232f 48%,#232534 100%);border:1px solid var(--edge)}
.article-band h2{margin-bottom:24px}
.article-band-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,70px)}
.article-band-columns p{color:var(--muted);font-size:.94rem;line-height:2.15}
.article-band .text-link{margin-top:27px}
.work-detail{max-width:var(--shell)}
.detail-header{display:grid;grid-template-columns:1.13fr .87fr;gap:clamp(30px,5vw,78px);padding:clamp(30px,5vw,76px) 0 clamp(45px,6vw,84px);align-items:center}
.detail-copy{display:flex;flex-direction:column;align-items:flex-start}
.detail-genre{margin-top:24px;font-size:.83rem;color:var(--violet);border:1px solid rgba(137,148,198,.35);padding:4px 13px;background:rgba(137,148,198,.07)}
.detail-copy h1{margin-top:20px}
.detail-lead{font-size:clamp(1.06rem,1.5vw,1.35rem);color:var(--muted);line-height:1.95;margin-top:26px;max-width:630px}
.detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:15px;margin-top:48px;padding-top:23px;border-top:1px solid var(--edge)}
.detail-facts div{min-width:0}
.detail-facts dt{font-size:.75rem;color:var(--dim);margin-bottom:8px}
.detail-facts dd{font-size:.85rem;line-height:1.6;color:var(--text)}
.detail-art{position:relative;max-height:650px;overflow:hidden;background:linear-gradient(120deg,#443045,#242231);border:1px solid var(--edge)}
.detail-art img{width:100%;height:100%;object-fit:cover;max-height:650px;aspect-ratio:4/5}
.narrative{display:grid;grid-template-columns:.34fr .66fr;gap:clamp(32px,6vw,100px);border-top:1px solid var(--edge);padding:clamp(32px,4.4vw,68px) 0}
.narrative-side span{font-size:.73rem;color:var(--gold);font-weight:720;letter-spacing:.17em}
.narrative-side h2{font-size:clamp(1.5rem,2.35vw,2.4rem);margin-top:13px}
.narrative>p{font-size:clamp(.98rem,1.15vw,1.08rem);color:#d4cfdb;line-height:2.25;max-width:800px}
.related-section{margin-top:20px}
.error-block{padding:clamp(95px,14vw,190px) 0;min-height:65vh}
.error-block h1{margin:19px 0;max-width:850px}
.error-block>p:not(.overline){color:var(--muted);max-width:620px;line-height:1.95}
.error-block .text-link{margin-left:25px}
.media-unavailable{opacity:0}
.no-media{background:radial-gradient(ellipse at 70% 30%,rgba(165,69,104,.19),transparent 60%),linear-gradient(140deg,#393042,#1f202c)!important}
@media (max-width:1100px){
 .opening{grid-template-columns:.95fr 1.05fr;gap:26px}
 .feature-frame,.feature-frame img{min-height:445px}
 .card-text{padding:21px}
 .card-cover{aspect-ratio:1.18}
 .line-feature-copy{padding:35px}
 .work-grid{gap:16px}
}
@media (max-width:820px){
 .topbar{min-height:80px}
 .brand-lines small{font-size:.54rem}
 .primary-nav{gap:18px}
 .opening{display:flex;flex-direction:column;padding-top:34px;gap:23px}
 .opening-copy{padding:0}
 .opening h1{max-width:740px;font-size:clamp(2.4rem,6.5vw,4.3rem)}
 .opening .intro{max-width:720px;margin-top:18px}
 .opening-meta{margin-top:21px}
 .feature-frame,.feature-frame img{min-height:370px;max-height:520px}
 .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .line-feature{grid-template-columns:1fr 1fr}
 .line-feature-copy{padding:27px}
 .line-feature-image{min-height:330px}
 .short-entries{grid-template-columns:1fr;gap:23px}
 .short-entry-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;border-top:0}
 .short-entry{border-top:1px solid var(--edge)}
 .article-band-columns{grid-template-columns:1fr;gap:17px}
 .detail-header{grid-template-columns:1fr 1fr;gap:25px}
 .detail-facts{gap:8px;margin-top:30px}
 .narrative{grid-template-columns:.36fr .64fr;gap:30px}
}
@media (max-width:620px){
 :root{--gutter:18px}
 html{scroll-padding-top:70px}
 body{font-size:15px}
 .topbar{min-height:unset;padding:14px 0 0;flex-direction:column;align-items:stretch;gap:12px}
 .brand-lockup img{width:35px;height:35px}
 .brand-lines strong{font-size:1.08rem}
 .brand-lines small{font-size:.52rem}
 .primary-nav{gap:24px;overflow-x:auto;overscroll-behavior-x:contain;white-space:nowrap;scrollbar-width:thin;min-height:47px}
 .primary-nav a{padding:10px 0 12px;font-size:.84rem}
 .opening{padding-top:29px;padding-bottom:38px}
 .opening h1{font-size:clamp(2rem,9vw,3.1rem);margin-top:16px}
 .intro{font-size:.94rem;line-height:1.85}
 .feature-frame,.feature-frame img{min-height:300px;max-height:390px}
 .feature-overlay{bottom:20px;left:20px;right:20px;gap:6px}
 .feature-overlay strong{font-size:1.8rem}
 .feature-overlay span{font-size:.8rem;line-height:1.6}
 .section-heading{display:block;margin-bottom:20px}
 .section-heading h2{margin-top:8px}
 .section-heading>p{max-width:none;text-align:left;font-size:.81rem;margin-top:12px}
 .editorial-section{padding-top:40px;padding-bottom:35px}
 .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 .card-cover{aspect-ratio:.85}
 .cover-tag{left:9px;bottom:9px;font-size:.61rem;padding:6px 7px}
 .card-text{padding:13px 12px 17px}
 .card-text .eyebrow{font-size:.64rem;margin-bottom:7px}
 .card-text h3{font-size:1.03rem;margin-bottom:8px}
 .card-text p{font-size:.75rem;line-height:1.68}
 .card-text .text-link{margin-top:14px;font-size:.74rem}
 .line-feature{display:flex;flex-direction:column-reverse;margin:0 0 43px}
 .line-feature-image{min-height:235px}
 .line-feature-copy{padding:28px 22px 32px}
 .line-feature-copy h2{margin:10px 0 15px}
 .line-feature-copy>p:not(.overline){font-size:.85rem}
 .short-entry-list{display:flex;flex-direction:column;gap:0}
 .short-entry{padding:16px 0}
 .short-entry img{width:78px;height:90px}
 .short-entry small{font-size:.78rem}
 .short-entry strong{font-size:1rem}
 .short-entry>span:last-child{margin-left:0}
 .topic-hero{padding:36px 0 45px}
 .topic-hero h1{font-size:clamp(2rem,8.3vw,3.2rem)}
 .topic-hero>p:last-child{font-size:.92rem;line-height:1.94}
 .inner-page{padding-top:19px}
 .article-band{padding:28px 20px}
 .article-band-columns p{font-size:.86rem;line-height:2}
 .detail-header{display:flex;flex-direction:column;align-items:stretch;gap:26px}
 .detail-copy h1{font-size:clamp(2.2rem,9vw,3.6rem)}
 .detail-lead{font-size:1rem;margin-top:18px}
 .detail-genre{margin-top:18px}
 .detail-art{max-height:520px}
 .detail-art img{aspect-ratio:4/4.2;max-height:520px}
 .detail-facts{margin-top:29px}
 .detail-facts dd{font-size:.78rem}
 .narrative{grid-template-columns:1fr;gap:15px;padding:30px 0}
 .narrative-side h2{font-size:1.65rem;margin-top:8px}
 .narrative>p{font-size:.95rem;line-height:2.05}
 .footer-inner{display:flex;flex-direction:column;gap:21px}
 .footer-inner nav{justify-content:flex-start}
 .footer-inner small{padding-top:20px}
 .error-block{padding:100px 0}
 .error-block .text-link{margin-left:0;display:flex;margin-top:20px}
}
@media (max-width:370px){
 .work-grid{grid-template-columns:1fr}
 .card-cover{aspect-ratio:1.38}
 .card-text h3{font-size:1.24rem}
 .card-text p{font-size:.86rem}
 .card-text .eyebrow{font-size:.72rem}
 .primary-nav{gap:18px}
 .detail-facts{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
@media print{
 :root{color-scheme:light}
 body{color:#111;background:#fff}
 .site-header,.site-footer,.skip-link,.related-section{display:none!important}
 .shell{width:100%;margin:0}
 .detail-header{grid-template-columns:1fr 1fr}
 .narrative{break-inside:avoid}
 .narrative>p,.detail-lead{color:#222}
 .detail-art{max-height:350px}
 a{color:inherit;text-decoration:underline}
}
