@charset "UTF-8";
/* 映册：连续白色内容页，暖灰页边与砖红索引。 */
:root{--paper:#f3f1ed;--paper-dark:#eee9e2;--white:#fff;--ink:#332e2a;--body-text:#514b45;--muted:#786e65;--green:#a64b3c;--gold:#b28343;--line:#e5dfd7;--radius:2px;--section-gap:0px;--reading-width:900px}
html{background:var(--paper);scroll-padding-top:16px}
body{background:var(--paper);color:var(--ink);font-size:15px;line-height:1.85}
::selection{background:#f0d6cd;color:#6e3027}
button:focus-visible,a:focus-visible,video:focus-visible,summary:focus-visible{outline:2px solid #a64b3c;outline-offset:3px}
.shell,.watch-page .shell{width:min(1180px,calc(100% - 48px))}
.skip-link{background:#a64b3c;color:#fff}
.site-header,.watch-page .site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;position:static;min-height:76px;margin-top:20px;padding:12px 22px;border:0;border-bottom:3px solid #a64b3c;border-radius:0;background:#fff;box-shadow:none}
.brand,.watch-page .brand{display:inline-flex;flex:0 1 auto;align-items:center;gap:9px;min-width:0;max-width:35%;min-height:44px;margin:0}
.brand-icon,.watch-page .brand-icon{width:30px;height:34px;border-radius:0;background:#a64b3c;color:#fff}
.brand-icon .icon{width:20px;height:20px;transform:none}
.brand-name,.watch-page .brand-name{max-width:320px;min-width:0;font-size:23px;font-weight:650;letter-spacing:0;color:#44352f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.main-nav,.watch-page .watch-nav{display:flex;flex:1 1 0;justify-content:flex-end;align-items:center;flex-wrap:nowrap;gap:0;min-width:0;max-width:100%;margin:0;padding:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;font-size:14px;background:transparent}
.main-nav a,.watch-page .watch-nav a{display:inline-flex;align-items:center;flex:0 0 auto;min-height:44px;padding:9px 11px;border:0;border-radius:0;white-space:nowrap;color:#655a50}
.main-nav a:hover,.watch-page .watch-nav a:hover{background:#f7eee9;color:#923e32}
.main-nav a:after{display:none}
.preview-banner{background:#a64b3c;color:#fff}
.hero{display:grid;grid-template-columns:196px minmax(0,1fr);gap:10px 28px;align-items:start;margin-top:16px;padding:24px 24px 22px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none;overflow:visible}
.hero-visual{order:0;grid-row:1/span 4;min-width:0;padding:0;margin:0}
.poster-stage{width:100%;height:auto;max-height:none;min-height:0;aspect-ratio:5/7;padding:4px;border:1px solid #e2dbd2;border-radius:0;background:#fff;box-shadow:none}
.hero-poster{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none;transition:none}
.poster-stage:hover .hero-poster{transform:none}
.hero-copy{grid-column:2;order:0;min-width:0;display:block;padding:0;background:transparent}
.hero h1{margin:0 0 8px;font-size:32px;font-weight:650;line-height:1.35;letter-spacing:0;overflow-wrap:anywhere}
.hero-subtitle{margin:0 0 6px;font-family:inherit;font-size:15px;line-height:1.6;letter-spacing:0;color:var(--muted)}
.hero-meta{margin:0 0 14px;font-size:13px;line-height:1.7;color:var(--muted)}
.hero-meta span+span:before{margin:0 10px;background:#c6b9ab}
.hero-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px;margin:0;font-size:14px;line-height:1.65}
.hero-details>div{display:flex;align-items:baseline;gap:12px;min-width:0}
.hero-details dt{flex:0 0 3em;color:var(--muted)}
.hero-details dd{min-width:0;margin:0;color:var(--body-text);overflow-wrap:anywhere}
.hero-summary{grid-column:2;max-width:900px;margin:0;font-size:15px;line-height:1.85;color:var(--body-text);overflow-wrap:anywhere}
.hero-actions,.hero>.continue-card{grid-column:2}
.hero-actions{gap:8px 12px;margin:0}
.demo-note{grid-column:1/-1;margin:0;font-size:13px;color:var(--muted)}
.button{min-height:44px;padding:9px 16px;border-radius:2px;letter-spacing:0;font-weight:500;box-shadow:none;transition:background .15s}
.button:hover{transform:none}
.button-dark{background:#a64b3c;border-color:#a64b3c;color:#fff;box-shadow:none}
.button-dark:hover{background:#893d31}
.button-light{background:#f7f4ef;border-color:#ddd2c5;color:#6b5143}
.button-light:hover{background:#eee6dc}
.bookmark-button{min-height:44px;padding:8px 12px;border:1px solid #ded5ca;border-radius:2px;background:#fff;color:#655a50}
.bookmark-button:hover,.bookmark-button.is-saved{background:#fbefea;border-color:#c88c7d;color:#963f32}
.section-space,.story-section,.cast-section{margin-top:0}
.episodes-section,.story-section,.episode-stories-section,.reviews-section,.short-comments-section,.faqs-section,.cast-section{padding:20px 24px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none}
.section-heading{display:flex;align-items:center;gap:6px 16px;margin:0 0 14px;padding:0 0 10px;border:0;border-bottom:1px solid #ede7e0;background:transparent}
.section-heading h2,.story-main h2,.watch-page .section-heading h2,.watch-page .story-main h2{display:flex;align-items:center;gap:10px;margin:0;font-size:21px;font-weight:600;line-height:1.5;letter-spacing:0;color:#44352f}
.section-heading h2:before,.story-main h2:before{content:"";display:block;flex:0 0 4px;height:18px;background:#a64b3c}
.heading-dot{display:none}
.section-description,.section-description[data-section-description]{margin:4px 0 0;font-size:13px;line-height:1.75;color:var(--muted)}
.section-aside{padding:0;color:var(--muted)}
.source-toolbar,.watch-page .source-toolbar{margin:0 0 12px;padding:0 0 10px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.source-tabs,.watch-page .source-tabs{gap:8px;flex-wrap:wrap}
.source-tab,.watch-page .source-tab{min-height:44px;padding:9px 14px;border:1px solid #ddd3c8;border-radius:2px;background:#f8f5f0;color:#655a50}
.source-tab.is-active{background:#a64b3c;border-color:#a64b3c;color:#fff;box-shadow:none}
.source-tab:hover:not(.is-active){background:#f5e9e1;border-color:#c89787;color:#8c3e31}
.source-hint{color:var(--muted)}
.episode-grid{gap:8px}
.episode,.watch-page .episode{min-height:44px;padding:9px 8px;border:1px solid #e2dbd2;border-radius:2px;background:#fff;color:#514b45}
.episode:hover{background:#fbefea;border-color:#bd7d6c;color:#913d30}
.episode.is-current{background:#a64b3c;border-color:#a64b3c;color:#fff}
.empty-list{padding:20px 16px;border:1px dashed #d5c9bc;border-radius:2px;background:#faf7f2;color:var(--muted)}
.empty-list h3{color:#655a50}
.story-section{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:24px;align-items:start}
.story-main{min-width:0}
.story-main h2{padding:0 0 10px;border:0;border-bottom:1px solid #ede7e0;background:transparent}
.story-main>.section-description{margin-top:8px}
.story-summary{max-width:var(--reading-width);margin-top:12px;font-size:15px;line-height:1.95;color:var(--body-text)}
.detail-card{margin:0;padding:14px 16px;border:1px solid #e5dbce;border-radius:0;background:#faf7f2}
.detail-heading{margin-bottom:9px}
.detail-heading h3{font-size:15px;color:#655043}
.detail-heading .icon{color:#655a50}
.detail-card dl{display:block;margin:0}
.detail-card dl>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:14px;padding:6px 0;border-bottom:1px solid #e9e1d7;font-size:13px}
.detail-card dl>div:last-child{border-bottom:0}
.detail-card dt{color:var(--muted)}
.detail-card dd{min-width:0;color:var(--body-text);overflow-wrap:anywhere}
.text-link,.episode-story-number{color:#a64b3c}
.text-link:hover{color:#7c342a}
.episode-story-list,.reviews-section .review-list,.faqs-section .faq-list{gap:0}
.episode-story-card,.review-card,.faq-item{border:0;border-radius:0;background:transparent;box-shadow:none}
.episode-story-card+.episode-story-card,.review-card+.review-card,.faq-item+.faq-item{border-top:1px solid var(--line)}
.episode-story-card summary,.review-summary,.faq-item summary{padding:12px 0}
.episode-story-card summary:hover,.review-summary:hover,.faq-item summary:hover{background:#fcf7f2}
.episode-story-card summary:focus-visible,.review-summary:focus-visible,.faq-item summary:focus-visible{outline-color:#a64b3c}
.episode-story-card>h3{padding:0}
.episode-story-body,.review-body,.faq-answer{padding:0 0 12px;color:var(--body-text)}
.episode-story-highlights{background:#faf7f2;border:0}
.review-body{border:0}
.review-expand{right:0}
.review-excerpt,.short-comment-body{color:var(--body-text)}
.short-comment-list{gap:8px 24px}
.short-comment-card{padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.short-comment-spoiler{border-radius:2px;background:#f4ede5;color:#786657}
.cast-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.cast-profile-card{display:block;padding:0;border:0;border-radius:0;background:transparent}
.cast-portrait{display:block;width:100%;height:auto;aspect-ratio:3/4;border:1px solid #eee7df;border-radius:0;background:#eee8df;color:#b6aa9d}
.cast-portrait.cast-color-1,.cast-portrait.cast-color-2,.cast-portrait.cast-color-3{background:#eee8df;color:#b6aa9d}
.cast-profile-info{padding:8px 0 0}
.cast-profile-card h3{font-size:15px}
.cast-role,.cast-credit{font-size:13px;color:var(--body-text)}
.cast-role>span{color:var(--muted)}
.closing-note{justify-content:flex-end;gap:0;margin-top:0;padding:8px 24px;border:0;border-radius:0;background:#fff}
.closing-note>a{display:inline-flex;gap:5px;min-height:44px;min-width:44px;width:auto;height:auto;margin-left:auto;padding:8px 0;border:0;border-radius:0;background:transparent;font-size:13px;color:var(--muted)}
.closing-note>a:hover{background:transparent;color:#a64b3c}
.site-footer{margin-top:0;padding:14px 24px;border-top:1px solid var(--line);background:#fff}
.footer-brand{color:#655043}
.site-footer p,.site-footer>span{color:var(--muted)}
.toast{border-radius:2px;background:#5a4034;color:#fff;box-shadow:none}
.continue-card{margin-top:0;padding:10px 14px;border:1px solid #e3c9ba;border-radius:2px;background:#fcf4ed}
.continue-label{color:#79503e}
.continue-note{color:var(--muted)}
.continue-clear{color:var(--muted)}
.continue-clear:hover{background:#f3e1d4}
.watch-page .watch-player{margin-top:16px;padding:18px 24px 20px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none}
.watch-page .watch-heading h1{font-size:25px;font-weight:600}
.watch-page .watch-subtitle{color:var(--muted)}
.watch-page .watch-jump{border-color:#dfd2c4;border-radius:2px;background:#faf6f0;color:#79503e}
.watch-page .watch-jump:hover{background:#f4e8dd}
.player-box,.watch-page .player-box{border-color:#342c28;border-radius:2px;background:#0e0c0b;box-shadow:none}
.native-player,.watch-page .native-player{background:#0e0c0b}
.player-empty,.player-fallback{background:#29231f;color:#eee5dc}
.player-empty-icon{background:transparent;border-color:#978477;color:#eee5dc}
.player-empty .player-message-title,.player-fallback .player-message-title{color:#faf5ee}
.player-empty p:not(.player-message-title),.player-fallback p:not(.player-message-title){color:#d0bfb1}
.player-caption>span:first-child span{color:#a64b3c}
.playback-note{color:var(--muted)}
.watch-page .playback-control{color:#655a50}
.watch-page .playback-switch{background:#cfc4b8;border-color:#a89a8b}
.watch-page .playback-switch:before{background:#fff}
.watch-page .playback-switch:checked{background:#a64b3c;border-color:#a64b3c}
.watch-page .playback-switch:focus-visible{outline-color:#a64b3c}
.watch-page .episode-step,.watch-page .episode-overview{border-color:#e0d4c6;border-radius:2px;background:#faf6f0;color:#6b5143}
.watch-page a.episode-step:hover,.watch-page .episode-overview:hover{background:#f5e9de;border-color:#bf9480}
.watch-page span.episode-step{background:#fff;border-color:#e9e1d7;color:#94867a}
.error-page{background:#f3f1ed}
.error-card{width:min(520px,100%);max-width:520px;padding:30px;text-align:left;border:1px solid #e3d9cd;border-left:4px solid #a64b3c;border-radius:0;background:#fff;box-shadow:none}
.error-status{margin:0 0 16px;font-size:48px;font-weight:600;line-height:1.1;color:#a64b3c}
.error-card h1{font-size:26px;font-weight:600}
.error-actions{justify-content:flex-start;margin-top:20px}
@media(max-width:1023px){.cast-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.story-section{grid-template-columns:minmax(0,1fr) 240px;gap:20px}.brand-name,.watch-page .brand-name{font-size:21px}.main-nav a,.watch-page .watch-nav a{padding-inline:9px}}
@media(max-width:760px){
.shell,.watch-page .shell{width:calc(100% - 24px)}
.site-header,.watch-page .site-header{display:block;min-height:0;margin-top:12px;padding:8px 14px 0;border-bottom-width:2px}
.brand,.watch-page .brand{min-height:44px;max-width:100%;margin:0 0 5px}
.brand-icon,.watch-page .brand-icon{width:26px;height:30px}
.brand-name,.watch-page .brand-name{font-size:20px;max-width:none}
.main-nav,.watch-page .watch-nav{justify-content:flex-start;flex-wrap:nowrap;gap:0;margin:0;padding:0;border-top:1px solid #eee6dc;overflow-x:auto;scrollbar-width:none}
.main-nav::-webkit-scrollbar,.watch-page .watch-nav::-webkit-scrollbar{display:none;height:0}
.main-nav a,.watch-page .watch-nav a{min-height:44px;padding:9px 10px;font-size:13px;white-space:nowrap}
.hero{grid-template-columns:112px minmax(0,1fr);gap:12px;margin-top:12px;padding:16px 14px}
.hero-visual{grid-row:auto}
.poster-stage{padding:3px}
.hero-copy{grid-column:2;padding:0}
.hero h1{margin:0 0 6px;font-size:25px;line-height:1.35}
.hero-subtitle{margin:0 0 4px;font-size:13px}
.hero-meta{margin:0 0 8px;font-size:12px;line-height:1.65}
.hero-meta span+span:before{margin:0 6px}
.hero-details{grid-template-columns:1fr;gap:5px;font-size:13px;line-height:1.6}
.hero-details>div{gap:8px}
.hero-details dt{flex-basis:2em}
.hero-summary,.hero-actions,.hero>.continue-card,.demo-note{grid-column:1/-1}
.hero-summary{font-size:14px;line-height:1.85}
.hero-actions{gap:8px}
.hero .button,.hero .bookmark-button{min-height:44px;padding:8px 12px;font-size:13px}
.episodes-section,.story-section,.episode-stories-section,.reviews-section,.short-comments-section,.faqs-section,.cast-section{padding:16px 14px}
.section-heading{margin-bottom:12px;padding-bottom:9px}
.section-heading h2,.story-main h2,.watch-page .section-heading h2,.watch-page .story-main h2{gap:8px;font-size:20px}
.story-main h2{padding-bottom:9px}
.section-description,.section-description[data-section-description]{font-size:13px}
.source-tabs,.watch-page .source-tabs{gap:6px;flex-wrap:wrap;overflow:visible}
.source-tab,.watch-page .source-tab{min-height:44px;padding:8px 11px;font-size:13px}
.episode-grid,.watch-page .episode-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.episode,.watch-page .episode{min-height:44px;padding:8px 5px;font-size:13px}
.story-section{display:block}
.story-summary{margin-top:10px;font-size:15px;line-height:1.9}
.detail-card{margin-top:14px;padding:10px 12px}
.detail-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.detail-card dl>div{gap:8px;padding:5px 0}
.episode-story-card summary,.review-summary,.faq-item summary{padding:10px 0}
.episode-story-body,.review-body,.faq-answer{padding:0 0 10px;font-size:15px;line-height:1.85}
.review-excerpt,.short-comment-body{font-size:15px;line-height:1.85}
.cast-profile-card h3{font-size:14px}
.cast-role,.cast-credit{font-size:12px}
.closing-note{padding:4px 14px}
.site-footer{padding:12px 14px;gap:6px}
.watch-page .watch-player{margin-top:12px;padding:14px 14px 16px}
.watch-page .watch-heading h1{font-size:21px}
.watch-page .watch-jump{padding:8px;font-size:13px}
.watch-page .episode-navigation{gap:7px}
.watch-page .episode-step,.watch-page .episode-overview{padding:8px 5px;font-size:13px}
.error-card{padding:22px}
}
@media(max-width:767px){.cast-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
@media(max-width:360px){
.shell,.watch-page .shell{width:calc(100% - 16px)}
.site-header,.watch-page .site-header{padding-inline:12px}
.hero{grid-template-columns:96px minmax(0,1fr);column-gap:10px;padding:14px 12px}
.hero h1{font-size:22px}
.hero-details{font-size:12px}
.hero-details>div{gap:6px}
.episodes-section,.story-section,.episode-stories-section,.reviews-section,.short-comments-section,.faqs-section,.cast-section{padding:14px 12px}
.detail-card dl{grid-template-columns:1fr}
.episode-grid,.watch-page .episode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.watch-page .watch-player{padding:12px}
}
