@charset "UTF-8";
:root{--paper:#f7f6ef;--paper-dark:#efeee5;--ink:#203b33;--muted:#5c6c60;--green:#294e41;--line:#dedfd4;--gold:#dfae60;--white:#fffef9;--radius:8px;--body-text:#42584b;--font-body:16px;--font-small:14px;--font-caption:13px;--section-gap:24px;--reading-width:740px;--font:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--paper);color:var(--ink);font:var(--font-body)/1.75 var(--font);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg{vertical-align:middle}
img{max-width:100%}
button{color:inherit}
button:focus-visible,a:focus-visible,video:focus-visible{outline:3px solid #b78b48;outline-offset:5px}
::selection{background:#d2dcbc;color:#203b33}
[hidden]{display:none!important}
.shell{width:min(1200px,calc(100% - 112px));margin-inline:auto}
.icon{width:20px;height:20px;flex-shrink:0}
.skip-link{position:absolute;top:-70px;left:20px;padding:12px 20px;background:var(--green);color:white;z-index:50}
.skip-link:focus{top:12px}
.eyebrow{font-size:10px;letter-spacing:2.15px;font-weight:600;line-height:1.7}
.site-header{height:auto;display:flex;align-items:center;gap:4px 28px;border-bottom:1px solid var(--line);min-height:72px;flex-wrap:wrap;padding-block:8px}
.brand{display:flex;align-items:center;gap:10px;min-width:0;min-height:44px;max-width:100%;flex-shrink:0}
.brand-icon{display:grid;place-items:center;width:34px;height:36px;border-radius:8px;background:var(--green);color:#f7f5df;flex-shrink:0}
.brand-icon .icon{width:23px;height:23px;transform:rotate(-8deg)}
.brand-name{font-size:21px;letter-spacing:1px;font-weight:700;max-width:210px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.brand-caption{color:var(--muted);font-size:var(--font-caption);border-left:1px solid var(--line);padding-left:18px;letter-spacing:.6px;white-space:nowrap}
.main-nav{display:flex;align-items:center;margin-left:auto;gap:4px 20px;font-size:var(--font-small);flex:1 1 560px;min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-end}
.main-nav a{position:relative;padding-block:8px;white-space:normal;display:inline-flex;align-items:center;min-height:44px;max-width:100%;font-size:var(--font-small);overflow-wrap:anywhere}
.main-nav a:after{content:"";position:absolute;bottom:6px;left:0;width:0;height:2px;background:var(--green);transition:width .2s}
.main-nav a:hover:after{width:100%}
.preview-banner{min-height:38px;background:#294e41;color:#fff9df;padding:8px 24px;display:flex;justify-content:center;gap:28px;font-size:var(--font-caption)}
.preview-banner a{text-decoration:underline;text-underline-offset:3px}
.hero{display:grid;grid-template-columns:1fr 1.1fr;gap:58px;padding-top:24px;padding-bottom:24px;align-items:center}
.hero-copy{min-width:0;padding-bottom:0}
.hero-eyebrow{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1.55px;flex-wrap:wrap}
.status-dot{width:6px;height:6px;background:#78965d;border-radius:50%;box-shadow:0 0 0 4px #e7ebdb;margin-right:4px}
.eyebrow-separator{opacity:.4;margin:0 4px}
.hero-category{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.hero-category span{background:#e9ecdf;border:1px solid #e1e5d6;color:var(--muted);border-radius:4px;font-size:var(--font-caption);line-height:1.6;padding:4px 9px;max-width:100%;overflow-wrap:anywhere}
.hero h1{font-size:clamp(42px,4.7vw,64px);letter-spacing:1px;font-weight:750;line-height:1.25;margin:10px 0 6px;overflow-wrap:anywhere}
.hero-subtitle{font-family:"Songti SC","SimSun",serif;font-size:21px;line-height:1.7;letter-spacing:1.2px;margin:0 0 8px;color:#556b57;overflow-wrap:anywhere}
.hero-meta{display:flex;flex-wrap:wrap;color:var(--muted);font-size:var(--font-small);line-height:1.9;margin-top:6px}
.hero-meta span{display:inline-flex;align-items:center;overflow-wrap:anywhere;max-width:100%}
.hero-meta span+span:before{content:"";width:3px;height:3px;flex-shrink:0;background:#b7beb0;border-radius:50%;margin:0 12px}
.hero-summary{max-width:520px;line-height:1.95;color:var(--body-text);font-size:var(--font-body);margin:10px 0 12px;overflow-wrap:anywhere}
.hero-actions{display:flex;align-items:center;gap:8px 22px;flex-wrap:wrap}
.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:11px 18px;min-height:46px;font-size:var(--font-small);letter-spacing:.6px;font-weight:600;border-radius:5px;border:1px solid transparent;transition:background .2s,transform .2s;max-width:100%;overflow-wrap:anywhere;text-align:center}
.button:hover{transform:translateY(-2px)}
.button-dark{background:var(--green);color:#fffef7;box-shadow:0 5px 12px #294e4115}
.button-dark:hover{background:#1c3f33}
.button-light{background:#f3f1e6;color:#294e41}
.button-light:hover{background:white}
.button .icon{width:17px;height:17px}
.button-arrow{padding-left:18px;font-size:18px;line-height:1}
.bookmark-button{border:0;background:transparent;padding:8px 0;display:inline-flex;align-items:center;gap:8px;font-size:var(--font-small);color:#6c766b;min-height:44px}
.bookmark-button:hover,.bookmark-button.is-saved{color:var(--green)}
.bookmark-button .icon{width:17px;height:17px}
.bookmark-button.is-saved .icon{fill:#d5dfcc}
.hero-note{color:var(--muted);font-size:var(--font-caption);margin-top:12px;display:flex;gap:8px;align-items:center;letter-spacing:.3px}
.tiny-rule{width:18px;height:1px;background:#b8bdad}
.hero-visual{min-width:0;position:relative;padding-right:17px}
.visual-decoration{position:absolute;right:-10px;top:1px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2.4px;color:#8e9686}
.poster-stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1.12;border-radius:8px;background:#8dada3;box-shadow:0 18px 35px #19382d10}
.hero-poster{width:100%;height:100%;object-fit:cover;object-position:center 43%;display:block;transition:transform 1s}
.poster-stage:hover .hero-poster{transform:scale(1.025)}
.poster-shade{position:absolute;inset:0;background:linear-gradient(180deg,#102e2220 0%,transparent 40%,#0e312565 100%);pointer-events:none}
.poster-edition{position:absolute;top:23px;left:24px;display:flex;align-items:center;gap:7px;letter-spacing:2px;font-size:8px;color:#f5f7e8;text-shadow:0 1px 4px #0002}
.poster-live-dot{width:5px;height:5px;background:#e8efb8;border-radius:50%}
.poster-caption{position:absolute;bottom:27px;left:28px;right:27px;display:flex;align-items:flex-end;justify-content:space-between;color:white;gap:20px}
.poster-caption>span:first-child{font-size:19px;line-height:1.7;letter-spacing:3px;font-family:"Songti SC","SimSun",serif}
.poster-caption-number{font-family:Georgia,serif;font-size:49px;line-height:1;font-weight:400;letter-spacing:-1px;text-align:right}
.poster-caption-number small{display:block;font-family:var(--font);font-size:7px;letter-spacing:2px;line-height:1.6;margin-top:7px}
.visual-footnote{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:var(--font-caption);margin-top:8px;color:var(--muted)}
.visual-footnote>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.visual-footnote>span:last-child{flex-shrink:0;font-size:var(--font-caption);color:var(--muted)}
.visual-footnote>span:last-child span{margin-left:7px;color:#899975}
.visual-footnote-year{color:var(--muted);margin-left:7px}
.facts-bar{display:grid;grid-template-columns:1.55fr 1fr .9fr .75fr;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:12px;align-items:center}
.fact-lead{display:flex;gap:16px;align-items:center}
.fact-symbol{font-size:37px;line-height:1;color:#9baf7f}
.fact-lead>div>span{font-size:var(--font-small);letter-spacing:.5px}
.fact-lead small{display:block;font-size:7px;letter-spacing:2.1px;color:#a1a594;line-height:1.4;margin-top:6px}
.fact{border-left:1px solid var(--line);padding-left:30px;min-width:0}
.fact-label{font-size:var(--font-caption);color:var(--muted);display:block;margin-bottom:4px}
.fact strong{display:block;font-size:var(--font-small);line-height:1.8;font-weight:500;overflow-wrap:anywhere}
.fact-score strong{font-size:21px;letter-spacing:1px;font-family:Georgia,serif;display:flex;align-items:center;gap:6px}
.fact-score strong .icon{color:#c8a45d;width:15px;height:15px}
.fact-score strong small{font-family:var(--font);font-size:var(--font-caption);color:var(--muted);letter-spacing:0;margin-left:1px}
.section-space{margin-top:var(--section-gap)}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:8px 20px;margin-bottom:12px;flex-wrap:wrap}
.section-heading h2,.story-main h2{font-size:25px;line-height:1.6;letter-spacing:.2px;margin:2px 0 0;font-weight:650;overflow-wrap:anywhere}
.section-heading .eyebrow,.story-main .eyebrow{color:#929d86;font-size:8px;letter-spacing:1.6px}
.heading-dot{color:#91a477;font-family:Georgia,serif;margin-left:5px}
.section-aside{color:var(--muted);font-size:var(--font-caption);white-space:normal;flex-shrink:1;padding-bottom:5px;max-width:100%;overflow-wrap:anywhere}
.source-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px 20px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:10px;flex-wrap:wrap}
.source-tabs{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.source-tab{border:1px solid #dfe2d6;background:transparent;border-radius:5px;padding:9px 13px;display:inline-flex;align-items:center;gap:7px;line-height:1.5;font-size:var(--font-small);max-width:100%;text-align:left;min-height:44px;color:var(--body-text)}
.source-tab>span{overflow-wrap:anywhere;min-width:0}
.source-tab .icon{width:12px;height:12px;opacity:.75}
.source-tab small{font-size:var(--font-caption);opacity:1;margin-left:4px;flex-shrink:0}
.source-tab.is-active{color:#f9fbef;background:#42624b;border-color:#42624b}
.source-tab:hover:not(.is-active){background:#e9ecdf}
.source-hint{font-size:var(--font-caption);color:var(--muted);white-space:nowrap}
.episode-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
.episode{border:1px solid var(--line);border-radius:5px;min-height:46px;display:flex;align-items:center;justify-content:center;padding:10px 8px;font-size:var(--font-small);position:relative;transition:background .2s,border-color .2s;gap:5px;min-width:0;color:var(--body-text);background:#fafaf430}
.episode span{overflow-wrap:anywhere;min-width:0;text-align:center}
.episode .icon{width:10px;height:10px;opacity:0;position:absolute;right:5px}
.episode:hover{border-color:#95a382;background:#e8eddf;color:#294e41}
.episode:hover .icon{opacity:.8}
.episode.is-current{background:#2c4e3d;color:#fff;border-color:#2c4e3d}
.episode.is-current .icon{opacity:1}
.empty-list{padding:20px 24px;text-align:center;color:var(--muted);background:#eff0e7;border:1px dashed #d8decf;border-radius:7px;font-size:var(--font-small)}
.empty-list h3{font-size:17px;color:#657a60;margin:12px 0 6px}
.empty-list p{margin:0}
.empty-list-icon .icon{width:30px;height:30px}
.story-section{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:74px;padding-top:0;margin-top:var(--section-gap)}
.story-main{min-width:0}
.story-summary{color:var(--body-text);font-size:var(--font-body);line-height:1.95;overflow-wrap:anywhere;margin-top:12px;max-width:var(--reading-width)}
.story-signoff{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--font-caption);margin-top:12px}
.story-signoff>span{font-size:20px;color:#a5b48c}
.detail-card{padding:14px 25px 12px;background:#eeefe5;border-radius:8px;min-width:0;align-self:start}
.detail-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.detail-heading h3{font-size:16px;margin:0;font-weight:600}
.detail-heading .icon{width:17px;height:17px;color:#95a28c}
.detail-card dl{margin:0}
.detail-card dl>div{display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;padding:4px 0;font-size:var(--font-small);line-height:1.8}
.detail-card dt{color:var(--muted)}
.detail-card dd{margin:0;color:var(--body-text);overflow-wrap:anywhere}
.detail-footnote{border-top:1px solid #dde1d2;margin-top:8px;padding-top:6px;display:flex;justify-content:space-between;align-items:center;font-size:6px;letter-spacing:1.2px;color:#a3ad94}
.detail-footnote span{font-size:16px;line-height:1}
.cast-section{margin-top:var(--section-gap)}
.section-description{font-size:var(--font-caption);color:var(--muted);margin:4px 0 0;line-height:1.8}
.cast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 13px}
.cast-card{padding:12px 14px;border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;gap:12px;min-width:0;position:relative}
.cast-avatar{display:block;flex-shrink:0;width:48px;height:55px;border-radius:4px;overflow:hidden;padding:8px 3px 0;background:#dce4d0;color:#a8b397}
.cast-avatar svg{width:100%;height:100%}
.cast-color-1{background:#e4ddce;color:#b6aa93}
.cast-color-2{background:#d7e1df;color:#a2b8b1}
.cast-color-3{background:#e3dfd9;color:#b7aa9e}
.cast-card>div{min-width:0}
.cast-card h3{margin:0 0 2px;font-size:var(--font-small);line-height:1.7;font-weight:500;overflow-wrap:anywhere}
.cast-card div>span{font-size:var(--font-caption);color:var(--muted);letter-spacing:.6px}
.cast-card>small{font-size:8px;font-family:Georgia,serif;color:#bec5b0;position:absolute;top:8px;right:10px}
.closing-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:var(--section-gap);padding:16px 0;display:flex;align-items:center;gap:25px}
.closing-note>span{font-size:43px;color:#a7b58d;line-height:1}
.closing-note p{font-family:"Songti SC","SimSun",serif;font-size:17px;line-height:1.75;letter-spacing:1.2px;color:var(--muted);margin:0}
.closing-note strong{color:#405b45;font-weight:400}
.closing-note>a{display:grid;place-items:center;margin-left:auto;border:1px solid #d8decf;border-radius:50%;width:44px;height:44px;font-size:16px;color:var(--muted);transition:background .2s;flex-shrink:0}
.closing-note>a:hover{background:#e6eadc}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:14px}
.footer-brand{font-size:var(--font-small);font-weight:600;letter-spacing:.7px;overflow-wrap:anywhere;display:inline-flex;align-items:center;min-height:44px}
.site-footer p{margin:3px 0 0;font-size:var(--font-caption);letter-spacing:.2px;color:var(--muted);line-height:1.8}
.site-footer>span{font-size:var(--font-caption);text-align:right;line-height:1.9;color:var(--muted)}
.text-link{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-small);color:var(--green);min-height:44px}
.text-link:hover{color:#213c30}
.text-link .icon{width:14px;height:14px}
.player-box{background:#10251c;border:1px solid #203a2d;border-radius:9px;overflow:hidden;position:relative}
.native-player{display:block;width:100%;aspect-ratio:16/9;max-height:70vh;background:#07140c}
.player-empty,.player-fallback{min-height:380px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:55px 28px;color:#c2d3b8;background:radial-gradient(ellipse at 50% 20%,#244b35 0%,#10251c 65%)}
.player-empty-icon{display:grid;place-items:center;width:57px;height:57px;border-radius:50%;border:1px solid #57704780;background:#ffffff06;margin-bottom:21px}
.player-empty-icon .icon{width:25px;height:25px}
.player-empty .eyebrow{color:#829a75;font-size:8px;letter-spacing:2.7px}
.player-empty .player-message-title,.player-fallback .player-message-title{font-size:22px;font-weight:500;letter-spacing:1px;margin:10px 0 8px;color:#e2e9d6;overflow-wrap:anywhere}
.player-empty p:not(.player-message-title),.player-fallback p:not(.player-message-title){font-size:var(--font-small);color:#bed0b5;max-width:520px;line-height:2;margin:0 0 25px}
.player-empty .button,.player-fallback .button{min-height:44px;font-size:var(--font-small);padding:10px 16px}
.player-caption{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:13px 1px;font-size:var(--font-caption);color:var(--muted);flex-wrap:wrap}
.player-caption>span:first-child{min-width:0;overflow-wrap:anywhere}
.player-caption>span:first-child span{color:var(--ink);margin:0 6px}
.player-caption>span:last-child,.player-caption>a{flex-shrink:0;color:var(--muted)}
.playback-note{font-size:var(--font-caption);color:var(--muted);line-height:1.8;margin:0 0 10px}
.next-episode{display:flex;justify-content:flex-end}
.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,16px);background:#263f32;color:#f5f6e9;padding:12px 22px;border-radius:7px;box-shadow:0 8px 30px #18332230;z-index:100;max-width:calc(100% - 32px);width:max-content;text-align:center;font-size:var(--font-caption);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.toast.is-visible{opacity:1;transform:translate(-50%,0)}
.error-page{min-height:100vh;display:grid;place-items:center;padding:30px}
.error-card{max-width:540px;text-align:center}
.error-symbol{background:#e4e9da;border-radius:30px;width:100px;height:100px;display:grid;place-items:center;font-family:"Songti SC","SimSun",serif;font-size:48px;margin:35px auto 24px;color:#667f53}
.error-card h1{font-size:30px;line-height:1.6;margin:0 0 10px}
.error-card p{color:var(--muted);font-size:var(--font-small);line-height:2}
.error-actions{display:flex;gap:25px;align-items:center;justify-content:center;margin-top:27px}
@media(min-width:1600px){
.shell{width:min(1320px,calc(100% - 160px))}
.hero{gap:85px;padding-top:24px;padding-bottom:24px}
.hero h1{font-size:74px}
.hero-summary{font-size:var(--font-body);line-height:1.95;color:var(--body-text);max-width:520px;margin:10px 0 12px}
.hero-subtitle{font-size:24px;color:#556b57}
.hero-eyebrow{font-size:10px}
.poster-stage{aspect-ratio:1.15}
}
@media(max-width:1100px){
.shell{width:calc(100% - 64px)}
.brand-caption{display:none;font-size:var(--font-caption);color:var(--muted);padding-left:18px}
.hero{gap:36px;padding-top:24px;padding-bottom:24px;grid-template-columns:1fr 1fr}
.hero h1{font-size:47px}
.hero-subtitle{font-size:18px;color:#556b57}
.hero-category{margin-top:12px}
.hero-summary{margin:10px 0 12px;font-size:var(--font-body);line-height:1.95;color:var(--body-text);max-width:520px}
.hero-eyebrow{font-size:8px;letter-spacing:1px}
.hero-note{margin-top:12px;font-size:var(--font-caption);color:var(--muted)}
.poster-stage{aspect-ratio:.9}
.hero-actions{gap:8px 17px}
.button{padding:11px 18px;min-height:46px;font-size:var(--font-small);max-width:100%;overflow-wrap:anywhere;text-align:center}
.button-arrow{padding-left:10px}
.bookmark-button{font-size:var(--font-small);min-height:44px;padding:8px 0}
.facts-bar{grid-template-columns:1.3fr 1fr .8fr .75fr;gap:17px}
.fact{padding-left:20px}
.fact-lead{gap:10px}
.fact-lead>div>span{font-size:var(--font-small)}
.fact-symbol{font-size:30px}
.fact-lead small{font-size:6px;letter-spacing:1px}
.fact strong{font-size:var(--font-small)}
.fact-score strong{font-size:19px}
.story-section{gap:40px;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);padding-top:0;margin-top:var(--section-gap)}
.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.episode-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media(max-width:760px){
:root{--section-gap:16px}
html{scroll-padding-top:15px}
.shell{width:calc(100% - 40px)}
.brand{gap:8px;min-height:44px;max-width:100%;flex-shrink:0}
.brand-name{font-size:18px;max-width:210px}
.brand-icon{width:30px;height:32px;border-radius:6px}
.brand-icon .icon{width:21px;height:21px}
.hero{grid-template-columns:1fr;gap:12px;padding-top:12px;padding-bottom:12px}
.hero-copy{padding-bottom:0}
.hero-eyebrow{font-size:8px;letter-spacing:1.3px}
.hero-category{margin-top:10px}
.hero h1{font-size:47px;letter-spacing:1px;line-height:1.3;margin-top:8px;margin-bottom:4px}
.hero-subtitle{font-size:19px;margin-bottom:8px;color:#556b57}
.hero-meta{font-size:var(--font-small);margin-top:6px;color:var(--muted)}
.hero-meta span+span:before{margin:0 10px}
.hero-summary{font-size:var(--font-body);max-width:520px;line-height:1.95;margin:8px 0 10px;color:var(--body-text)}
.hero-actions{gap:8px 25px}
.button{min-height:46px;padding:11px 18px;font-size:var(--font-small);max-width:100%;overflow-wrap:anywhere;text-align:center}
.bookmark-button{font-size:var(--font-small);min-height:44px;padding:8px 0}
.hero-note{font-size:var(--font-caption);margin-top:8px;color:var(--muted)}
.hero-visual{padding-right:13px}
.visual-decoration{right:-7px;font-size:7px;letter-spacing:1.7px}
.poster-stage{aspect-ratio:1.35;max-height:400px;border-radius:7px}
.hero-poster{object-position:center 49%}
.poster-edition{top:18px;left:20px;font-size:7px}
.poster-caption{bottom:23px;left:23px;right:23px}
.poster-caption>span:first-child{font-size:18px}
.poster-caption-number{font-size:43px}
.visual-footnote{margin-top:6px;font-size:var(--font-caption);color:var(--muted)}
.visual-footnote>span:last-child{font-size:var(--font-caption);color:var(--muted)}
.facts-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding-block:10px}
.fact-lead{display:none}
.fact{padding-left:18px}
.fact:nth-child(2){border:0;padding-left:0}
.fact-label{font-size:var(--font-caption);margin-bottom:4px;color:var(--muted)}
.fact strong{font-size:var(--font-small)}
.fact-score strong{font-size:20px}
.fact-score strong .icon{width:13px;height:13px}
.section-space{margin-top:var(--section-gap)}
.section-heading{margin-bottom:10px;gap:6px 15px;flex-wrap:wrap;align-items:flex-end}
.section-heading h2,.story-main h2{font-size:22px;line-height:1.6;margin-top:2px}
.section-heading .eyebrow,.story-main .eyebrow{font-size:7px;letter-spacing:1.3px}
.section-aside{font-size:var(--font-caption);padding-bottom:5px;color:var(--muted);white-space:normal;flex-shrink:1;max-width:100%;overflow-wrap:anywhere}
.source-toolbar{align-items:flex-start;gap:6px 20px;padding-bottom:6px;margin-bottom:8px;flex-wrap:wrap}
.source-tabs{gap:6px}
.source-tab{font-size:var(--font-small);padding:9px 13px;gap:4px;min-height:44px;color:var(--body-text)}
.source-tab .icon{width:11px;height:11px}
.source-tab small{margin-left:4px;font-size:var(--font-caption);opacity:1}
.source-hint{display:none;font-size:var(--font-caption);color:var(--muted)}
.episode-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.episode{min-height:46px;font-size:var(--font-small);padding:10px 8px;color:var(--body-text)}
.episode .icon{display:none}
.story-section{grid-template-columns:1fr;gap:12px;padding-top:0;margin-top:var(--section-gap)}
.story-summary{font-size:var(--font-body);line-height:1.95;margin-top:10px;color:var(--body-text);max-width:var(--reading-width)}
.story-signoff{margin-top:8px;font-size:var(--font-caption);color:var(--muted)}
.detail-card{padding:12px 22px 10px;align-self:start}
.detail-card dl{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}
.detail-card dl>div{grid-template-columns:40px minmax(0,1fr);gap:16px;padding:4px 0;font-size:var(--font-small)}
.detail-card dl>div:last-child{grid-column:1/-1}
.detail-heading{margin-bottom:6px}
.detail-footnote{margin-top:6px}
.cast-section{margin-top:var(--section-gap)}
.cast-grid{gap:8px 9px}
.cast-card{padding:8px 10px;gap:9px}
.cast-avatar{width:38px;height:47px}
.cast-card h3{font-size:var(--font-small)}
.cast-card div>span{font-size:var(--font-caption);color:var(--muted)}
.cast-card>small{top:5px;right:7px;font-size:7px}
.section-description{font-size:var(--font-caption);margin-top:4px;color:var(--muted)}
.closing-note{padding-block:12px;margin-top:var(--section-gap);gap:19px}
.closing-note p{font-size:15px;color:var(--muted)}
.closing-note>span{font-size:35px}
.closing-note>a{width:44px;height:44px;flex-shrink:0;color:var(--muted)}
.site-footer{padding-block:12px;gap:20px;align-items:flex-start}
.footer-brand{font-size:var(--font-small);display:inline-flex;align-items:center;min-height:44px}
.site-footer p{font-size:var(--font-caption);letter-spacing:.2px;line-height:1.8;max-width:180px;color:var(--muted)}
.site-footer>span{font-size:var(--font-caption);max-width:145px;color:var(--muted)}
.player-empty,.player-fallback{min-height:315px;padding:35px 21px}
.player-empty .player-message-title,.player-fallback .player-message-title{font-size:18px;line-height:1.6}
.player-empty p:not(.player-message-title),.player-fallback p:not(.player-message-title){font-size:var(--font-small);line-height:1.9;color:#bed0b5;max-width:520px}
.player-empty-icon{width:49px;height:49px;margin-bottom:17px}
.player-caption{font-size:var(--font-caption);gap:12px;line-height:1.9;color:var(--muted);flex-wrap:wrap}
.player-caption>span:first-child span{margin:0 4px;color:var(--ink)}
.playback-note{font-size:var(--font-caption);color:var(--muted)}
.preview-banner{font-size:var(--font-caption);padding:8px 14px;gap:10px;justify-content:space-between;flex-wrap:wrap}
.error-card h1{font-size:25px}
.error-card p{font-size:var(--font-small);color:var(--muted)}
}
@media(max-width:360px){
.shell{width:calc(100% - 30px)}
.brand-name{max-width:160px}
.hero h1{font-size:40px}
.hero-subtitle{font-size:16px;color:#556b57}
.hero-eyebrow{font-size:7px;letter-spacing:.8px}
.hero-actions{gap:8px 18px}
.poster-caption>span:first-child{font-size:16px}
.visual-footnote>span:last-child{display:none;font-size:var(--font-caption);color:var(--muted)}
.section-heading h2,.story-main h2{font-size:20px}
.episode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cast-grid{grid-template-columns:1fr}
.detail-card dl{grid-template-columns:1fr}
.facts-bar{gap:12px}
.fact{padding-left:10px}
.fact-label{font-size:var(--font-caption);color:var(--muted);margin-bottom:4px}
.fact strong{font-size:var(--font-small)}
.fact-score strong{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*:before,*:after{transition:none!important;animation:none!important}
}

.episode-grid,.cast-grid{list-style:none;margin:0;padding:0}
.episode-grid>li{min-width:0}
.episode-grid>li>.episode{height:100%}
.story-summary p{margin:0 0 10px}
.story-summary p:last-child{margin-bottom:0}
.cast-profile-card{align-items:flex-start;padding:12px 14px;gap:14px}
.cast-portrait{display:block;flex:0 0 80px;width:80px;height:104px;border-radius:6px;overflow:hidden;background:#dce4d0;color:#a8b397}
.cast-portrait svg,.cast-photo{display:block;width:100%;height:100%}
.cast-photo{object-fit:cover;object-position:center 25%}
.cast-portrait.cast-color-1{background:#e4ddce;color:#b6aa93}
.cast-portrait.cast-color-2{background:#d7e1df;color:#a2b8b1}
.cast-portrait.cast-color-3{background:#e3dfd9;color:#b7aa9e}
.cast-profile-info{flex:1;min-width:0;padding-top:2px}
.cast-profile-card h3{font-size:16px;line-height:1.6;font-weight:600}
.cast-role,.cast-credit{margin:7px 0 0;font-size:var(--font-small);line-height:1.75;color:var(--body-text);overflow-wrap:anywhere}
.cast-role>span{color:var(--muted);font-size:var(--font-caption);margin-right:3px}
.cast-credit{font-size:var(--font-small);color:var(--muted)}
.episode-story-list{display:grid;gap:8px}
.episode-story-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow-wrap:anywhere}
.episode-story-card summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:12px 22px;cursor:pointer;list-style:none}
.episode-story-card summary::-webkit-details-marker{display:none}
.episode-story-card summary:hover{background:#eff2e8}
.episode-story-card summary:focus-visible{outline:3px solid #b78b48;outline-offset:-3px}
.episode-story-card h3{display:flex;flex-wrap:wrap;gap:6px 16px;min-width:0;margin:0;font-size:17px;line-height:1.7;font-weight:600}
.episode-story-card>h3{padding:12px 24px 0}
.episode-story-number{color:var(--green);flex-shrink:0}
.episode-story-expand{flex-shrink:0;font-size:var(--font-caption);color:var(--muted)}
.episode-story-expand:after{content:" +"}
.episode-story-card details[open] .episode-story-expand{font-size:0}
.episode-story-card details[open] .episode-story-expand:after{content:"收起 −";font-size:var(--font-caption)}
.episode-story-body{padding:0 24px 12px;font-size:var(--font-body);line-height:1.95;color:var(--body-text)}
.episode-story-spoiler{font-size:var(--font-caption);color:var(--muted);margin:8px 0}
.episode-story-synopsis p{margin:10px 0;white-space:normal;max-width:var(--reading-width)}
.episode-story-highlights h4{font-size:17px;margin:12px 0 6px}
.episode-story-highlights ul{margin:0;padding-left:1.5em}
.episode-story-highlights li+li{margin-top:6px}
.episode-story-watch{display:inline-flex;align-items:center;min-height:44px;margin-top:8px}
.episode-stories-section .section-description{margin:4px 0 0;color:var(--muted);font-size:var(--font-caption)}
.watch-nav{flex-wrap:wrap}
@media(max-width:760px){
.episode-story-card summary{padding:10px 16px;gap:10px;min-height:56px}
.episode-story-card h3{font-size:17px;gap:4px 12px}
.episode-story-card>h3{padding:10px 16px 0}
.episode-story-body{padding:0 16px 10px;font-size:var(--font-body);line-height:1.95;color:var(--body-text)}
.episode-story-number{flex-shrink:1}
.episode-stories-section .section-heading{margin-bottom:10px}
}
@media(max-width:760px){
.cast-profile-card{padding:8px 10px;gap:10px}
.cast-portrait{flex-basis:52px;width:52px;height:68px}
.cast-profile-info{padding-top:0}
.cast-profile-card h3{font-size:16px}
.cast-role{font-size:var(--font-small);margin-top:4px;color:var(--body-text)}
.cast-credit{margin-top:4px;font-size:var(--font-small);color:var(--muted)}
}
@media(max-width:360px){
.cast-portrait{flex-basis:64px;width:64px;height:83px}
.cast-profile-card{padding:8px 14px;gap:14px}
}
/* Authored reviews */
.reviews-section .section-description{margin:4px 0 0;color:var(--muted);font-size:var(--font-small)}
.reviews-section .review-list{display:grid;gap:8px}
.review-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow-wrap:anywhere}
.review-summary{position:relative;display:block;min-height:72px;padding:14px 24px;cursor:pointer;list-style:none}
.review-summary::-webkit-details-marker{display:none}
.review-summary:hover{background:#eff2e8}
.review-summary:focus-visible{outline:3px solid #b78b48;outline-offset:-3px}
.review-summary h3{margin:0;padding-right:76px;font-size:19px;font-weight:600;line-height:1.65}
.review-author{display:block;margin-top:6px;color:var(--muted);font-size:var(--font-caption)}
.review-excerpt{display:block;margin-top:8px;color:var(--body-text);font-size:var(--font-body);line-height:1.95;white-space:pre-line;max-width:var(--reading-width)}
.review-expand{position:absolute;top:18px;right:24px;color:var(--muted);font-size:var(--font-caption)}
.review-expand:after{content:" +"}
.review-card details[open] .review-expand{font-size:0}
.review-card details[open] .review-expand:after{content:"收起 −";font-size:var(--font-caption)}
.review-body{border-top:1px solid var(--line);padding:2px 24px 12px;font-size:var(--font-body);line-height:1.95;max-width:100%;color:var(--body-text)}
.review-text{max-width:var(--reading-width)}
.review-text p{margin:12px 0}
.review-text p:last-child{margin-bottom:0}
.review-spoiler{font-size:var(--font-caption);color:var(--muted);margin:8px 0}
.reviews-section+section{scroll-margin-top:24px}
@media(max-width:760px){
.review-summary{padding:12px 16px;min-height:64px}
.review-summary h3{padding-right:76px;font-size:17px}
.review-expand{right:16px;top:15px;font-size:var(--font-caption)}
.review-excerpt{font-size:var(--font-body);margin-top:6px;line-height:1.95;color:var(--body-text);max-width:var(--reading-width)}
.review-body{padding:0 16px 12px;font-size:var(--font-body);line-height:1.95;color:var(--body-text)}
.review-text p{margin:10px 0}
.reviews-section .section-heading{margin-bottom:10px}
}

/* Short comments */
.short-comments-section .section-description{margin:4px 0 0;color:var(--muted);font-size:var(--font-small)}
.short-comment-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:0;margin:0}
.short-comment-card{min-width:0;padding:14px 24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow-wrap:anywhere}
.short-comment-body{font-size:var(--font-body);line-height:1.95;color:var(--body-text)}
.short-comment-body p{margin:0}
.short-comment-body p+p{margin-top:8px}
.short-comment-author{margin:10px 0 0;font-size:var(--font-caption);color:var(--muted);line-height:1.7}
.short-comment-spoiler{display:inline-block;margin:0 0 8px;color:#796b51;background:#f4efdf;padding:3px 8px;border-radius:4px;font-size:var(--font-caption);line-height:1.7}
@media(max-width:760px){
.short-comment-list{grid-template-columns:minmax(0,1fr);gap:8px}
.short-comment-card{padding:12px 16px}
.short-comment-body{font-size:var(--font-body);line-height:1.95;color:var(--body-text)}
.short-comments-section .section-heading{margin-bottom:10px}
}
/* Frequently asked questions */
.faqs-section .faq-list{display:grid;gap:8px}
.faq-item{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow-wrap:anywhere}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;min-height:60px;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{background:#eff2e8}
.faq-item summary:focus-visible{outline:3px solid #b78b48;outline-offset:-3px}
.faq-item h3{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:1;margin:0;min-width:0;font-size:17px;font-weight:600;line-height:1.75}
.faq-expand{flex:0 0 18px;text-align:center;font-size:20px;font-weight:400;color:var(--muted);line-height:1}
.faq-expand:after{content:"+"}
.faq-item[open] .faq-expand:after{content:"−"}
.faq-answer{padding:0 24px 12px;color:var(--body-text);font-size:var(--font-body);line-height:1.95}
.faq-answer p{max-width:var(--reading-width);margin:0}
.faq-answer p+p{margin-top:10px}
@media(max-width:760px){
.faq-item summary{padding:10px 16px;gap:12px;min-height:56px}
.faq-item h3{font-size:17px;gap:12px}
.faq-answer{padding:0 16px 10px;font-size:var(--font-body);line-height:1.95;color:var(--body-text)}
.faqs-section .section-heading{margin-bottom:10px}
}
.faq-question-text{min-width:0}
/* Editable section names wrap without changing stable anchors. */
.main-nav a,.watch-nav a{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.section-heading>div{min-width:0}
.section-heading h2,[data-section-title]{overflow-wrap:anywhere}
.watch-nav{min-width:0;max-width:100%}

/* Domain-specific introductory text stays readable on narrow screens. */
.section-description[data-section-description]{max-width:var(--reading-width);margin:4px 0 0;color:var(--muted);font-size:var(--font-small);line-height:1.85;white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:760px){
.hero-summary{max-width:none}
.section-heading{margin-bottom:10px}
.detail-card dl{grid-template-columns:1fr}
.site-footer{flex-wrap:wrap;gap:12px}
.site-footer p,.site-footer>span{max-width:100%}
.cast-profile-card{min-height:0}
.hero .button{letter-spacing:0}
.story-summary{margin-top:10px}
}

@media(max-width:760px){.site-header{min-height:64px;gap:4px 20px;padding-block:8px}.main-nav{flex-basis:100%;justify-content:flex-start;margin-left:0;gap:0 16px}}
.episode-story-highlights{max-width:var(--reading-width)}
