@charset "UTF-8";
/* Compact presentation; PHP and player hooks retain their existing behavior. */
:root{--paper:#17191c;--paper-dark:#24272b;--white:#1e2125;--ink:#e7e9ec;--body-text:#c4c8ce;--muted:#989fa9;--green:#79a8de;--gold:#79a8de;--line:#34383f;--radius:4px;--section-gap:20px;--reading-width:780px}
html{background:var(--paper);scroll-padding-top:16px}
body{background:var(--paper);color:var(--ink)}
::selection{background:#315578;color:#fff}
button:focus-visible,a:focus-visible,video:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.shell,.watch-page .shell{width:min(1100px,calc(100% - 48px))}
.skip-link{background:#315578;color:#fff}
.site-header,.watch-page .site-header{position:static;min-height:64px;padding:6px 0;gap:4px 24px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
.brand-icon,.watch-page .brand-icon{width:30px;height:30px;border-radius:4px;background:#303944;color:#cad7e7}
.brand-icon .icon{width:20px;height:20px;transform:none}
.brand-name,.watch-page .brand-name{font-size:19px;font-weight:650;letter-spacing:0;max-width:240px}
.main-nav,.watch-page .watch-nav{gap:0 18px;flex:1 1 600px;justify-content:flex-end}
.main-nav a,.watch-page .watch-nav a{min-height:44px;padding:8px 0;border:0;border-radius:0;color:#b9bfc7}
.main-nav a:hover,.watch-page .watch-nav a:hover{color:#fff;background:transparent}
.main-nav a:after{display:none}
.preview-banner{background:#2a3543;color:#e4e9f1}
.hero{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:start;gap:14px 26px;margin-top:24px;padding:0 0 20px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.hero-visual{order:0;min-width:0;padding:0;margin:0}
.poster-stage{width:100%;height:auto;max-height:none;aspect-ratio:5/7;min-height:0;border:0;border-radius:4px;background:#25292f;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{min-width:0;order:0;padding:0;display:block;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 12px;font-size:14px;line-height:1.7;color:var(--muted)}
.hero-meta span+span:before{background:#5b626d;margin:0 9px}
.hero-details{display:grid;gap:7px;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{color:var(--muted);flex:0 0 4em}
.hero-details dd{margin:0;min-width:0;color:var(--body-text);overflow-wrap:anywhere}
.hero-summary{grid-column:1/-1;margin:0;max-width:none;font-size:15px;line-height:1.85;color:var(--body-text);overflow-wrap:anywhere}
.hero-actions,.hero>.continue-card,.demo-note{grid-column:1/-1}
.hero-actions{gap:8px 12px}
.demo-note{margin:0;color:var(--muted);font-size:13px}
.button{min-height:44px;padding:9px 16px;border-radius:4px;font-weight:500;letter-spacing:0;box-shadow:none;transition:background .15s}
.button:hover{transform:none}
.button-dark{background:#335e8a;color:#f2f5fa;border-color:#335e8a;box-shadow:none}
.button-dark:hover{background:#3d6d9c}
.button-light{background:#292e35;color:#d9dee6;border-color:#3f4752}
.button-light:hover{background:#343c46}
.bookmark-button{padding:8px 12px;min-height:44px;border:1px solid var(--line);border-radius:4px;color:var(--body-text);background:transparent}
.bookmark-button:hover,.bookmark-button.is-saved{color:var(--green);background:#212a36}
.bookmark-button.is-saved .icon{fill:#304660}
.section-space,.story-section,.cast-section{margin-top:var(--section-gap)}
.episodes-section,.story-section,.episode-stories-section,.reviews-section,.short-comments-section,.faqs-section,.cast-section{padding:0 0 20px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
.section-heading{gap:6px 16px;margin-bottom:12px;align-items:baseline}
.section-heading h2,.story-main h2,.watch-page .section-heading h2,.watch-page .story-main h2{margin:0;font-size:21px;line-height:1.5;letter-spacing:0;font-weight:600}
.heading-dot{display:none}
.section-aside{padding:0;color:var(--muted)}
.section-description,.section-description[data-section-description]{font-size:14px;color:var(--muted);margin:5px 0 0;line-height:1.75}
.source-toolbar,.watch-page .source-toolbar{padding:0 0 10px;margin:0 0 10px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.source-tabs,.watch-page .source-tabs{gap:8px}
.source-tab,.watch-page .source-tab{min-height:44px;padding:9px 14px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--body-text)}
.source-tab.is-active{background:#303c4b;border-color:#5a7fa6;color:#e6eef7;box-shadow:none}
.source-tab:hover:not(.is-active){background:#272d34;color:#fff}
.source-hint{color:var(--muted)}
.episode-grid{gap:8px}
.episode,.watch-page .episode{min-height:44px;padding:9px 8px;border:1px solid var(--line);border-radius:4px;background:#20242a;color:var(--body-text)}
.episode:hover{background:#2a3440;border-color:#668bb0;color:#fff}
.episode.is-current{background:#335e8a;border-color:#335e8a;color:#fff}
.empty-list{padding:20px 16px;background:#20242a;color:var(--muted);border-color:var(--line);border-radius:4px}
.empty-list h3{color:var(--body-text)}
.story-section{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(240px,.8fr);gap:30px}
.story-summary{max-width:var(--reading-width);margin-top:12px;color:var(--body-text);line-height:1.9}
.detail-card{padding:14px 16px;background:#20242a;border:1px solid var(--line);border-radius:4px}
.detail-heading .icon{color:var(--muted)}
.detail-card dd{color:var(--body-text)}
.text-link,.episode-story-number{color:var(--green)}
.text-link:hover{color:#a9c9ee}
.episode-story-list,.reviews-section .review-list,.faqs-section .faq-list{gap:0}
.episode-story-card,.review-card,.faq-item{background:transparent;border:0;border-radius:0;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:#20242a}
.episode-story-card summary:focus-visible,.review-summary:focus-visible,.faq-item summary:focus-visible{outline-color:var(--green)}
.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:transparent;border:0;border-radius:0}
.review-body{border-top:0}
.review-expand{right:0}
.review-excerpt,.short-comment-body{color:var(--body-text)}
.short-comment-list{gap:12px 24px}
.short-comment-card{padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.short-comment-spoiler{background:#2a2c31;color:#afb6c1;border-radius:2px}
.cast-grid{gap:16px;grid-template-columns:repeat(6,minmax(0,1fr))}
.cast-profile-card{display:block;padding:0;border:0;border-radius:0;background:transparent}
.cast-portrait{display:block;width:100%;height:auto;aspect-ratio:4/5;border-radius:3px;background:#303740;color:#66717f}
.cast-portrait.cast-color-1,.cast-portrait.cast-color-2,.cast-portrait.cast-color-3{background:#303740;color:#66717f}
.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:8px;padding:0;border:0;border-radius:0;background:transparent}
.closing-note>a{display:inline-flex;min-height:44px;min-width:44px;width:auto;height:auto;margin-left:auto;padding:8px 0;border:0;border-radius:0;font-size:13px;color:var(--muted);background:transparent}
.closing-note>a:hover{color:var(--ink);background:transparent}
.site-footer{padding-block:10px;border-top:1px solid var(--line)}
.footer-brand{color:var(--body-text)}
.site-footer p,.site-footer>span{color:var(--muted)}
.toast{background:#e3e7ec;color:#20252d;box-shadow:none;border-radius:4px}
.continue-card{padding:10px 14px;margin-top:0;border:1px solid var(--line);border-radius:4px;background:#232a33}
.continue-label{color:var(--body-text)}
.continue-note{color:#b5c6db}
.continue-clear{color:var(--muted)}
.continue-clear:hover{background:#313945}
.watch-page .watch-player{padding-top:16px;margin-top:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.watch-page .watch-heading h1{font-size:25px;font-weight:600}
.watch-page .watch-jump{border-radius:4px;border-color:var(--line);background:transparent}
.watch-page .watch-jump:hover{background:#272d34}
.player-box,.watch-page .player-box{border-color:var(--line);border-radius:4px;background:#08090b;box-shadow:none}
.native-player,.watch-page .native-player{background:#08090b}
.player-empty,.player-fallback{background:#171b21;color:var(--body-text)}
.player-empty-icon{background:transparent;border-color:#4b5666;color:var(--muted)}
.player-empty .player-message-title,.player-fallback .player-message-title{color:var(--ink)}
.player-empty p:not(.player-message-title),.player-fallback p:not(.player-message-title){color:var(--muted)}
.player-caption>span:first-child span{color:var(--ink)}
.playback-note{color:var(--muted)}
.watch-page .episode-step,.watch-page .episode-overview{border-color:var(--line);border-radius:4px;background:#20242a;color:var(--body-text)}
.watch-page a.episode-step:hover,.watch-page .episode-overview:hover{background:#2a3440;border-color:#668bb0}
.watch-page span.episode-step{background:transparent;border-color:var(--line);color:var(--muted)}
.watch-page .playback-control{color:var(--body-text)}
.watch-page .playback-switch{background:#3b424d;border-color:#66717f}
.watch-page .playback-switch:checked{background:#406f9f;border-color:#406f9f}
.watch-page .playback-switch:focus-visible{outline-color:var(--green)}
.error-page{background:var(--paper)}
.error-card{max-width:480px;text-align:left;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.error-status{color:var(--muted);font-size:16px;margin:0 0 12px}
.error-actions{justify-content:flex-start;margin-top:20px}
@media(max-width:1023px){
.cast-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1000px){
.story-section{gap:20px}
}
@media(max-width:760px){
:root{--section-gap:16px}
.shell,.watch-page .shell{width:calc(100% - 28px)}
.site-header,.watch-page .site-header{padding:6px 0 0;gap:0;min-height:54px}
.brand-name,.watch-page .brand-name{font-size:18px}
.main-nav,.watch-page .watch-nav{flex-basis:100%;justify-content:flex-start;flex-wrap:wrap;gap:0 16px;margin-left:0;overflow:visible}
.main-nav a,.watch-page .watch-nav a{padding:8px 0;white-space:normal;min-height:44px;font-size:13px}
.hero{grid-template-columns:112px minmax(0,1fr);gap:12px 14px;margin-top:16px;padding-bottom:16px}
.hero-visual,.hero-copy{order:0;padding:0}
.poster-stage{height:auto;aspect-ratio:5/7;max-height:none;border-radius:3px}
.hero h1{font-size:24px;margin:0 0 6px;line-height:1.35;letter-spacing:0}
.hero-subtitle{font-size:13px;margin:0 0 4px}
.hero-meta{font-size:12px;margin:0 0 8px;line-height:1.65}
.hero-meta span+span:before{margin:0 6px}
.hero-details{gap:5px;font-size:13px;line-height:1.6}
.hero-details>div{gap:8px}
.hero-details dt{flex-basis:2em}
.hero-summary{font-size:14px;margin:0;line-height:1.85}
.hero-actions{gap:8px}
.hero .button,.hero .bookmark-button{font-size:13px;padding:8px 12px;min-height:44px}
.section-heading h2,.story-main h2,.watch-page .section-heading h2,.watch-page .story-main h2{font-size:20px}
.section-description,.section-description[data-section-description]{font-size:13px}
.episodes-section,.story-section,.episode-stories-section,.reviews-section,.short-comments-section,.faqs-section,.cast-section{padding:0 0 16px;border-radius:0}
.source-tabs,.watch-page .source-tabs{flex-wrap:wrap;gap:6px;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{grid-template-columns:1fr;gap:14px}
.story-summary{font-size:15px;line-height:1.85}
.detail-card{padding:12px 14px}
.episode-story-card summary,.review-summary,.faq-item summary{padding:10px 0}
.episode-story-card>h3{padding: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}
.review-expand{right:0}
.cast-grid{gap:12px}
.cast-profile-card{display:block;padding:0}
.cast-portrait{width:100%;height:auto;aspect-ratio:4/5}
.cast-profile-info{padding:8px 0 0}
.cast-profile-card h3{font-size:14px}
.cast-role,.cast-credit{font-size:12px}
.watch-page .watch-player{padding-top:12px}
.watch-page .watch-heading h1{font-size:21px}
.watch-page .watch-jump{font-size:13px;padding:8px}
.watch-page .episode-navigation{gap:7px}
.watch-page .episode-step,.watch-page .episode-overview{padding:8px 5px;font-size:13px}
}
@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% - 24px)}
.hero{grid-template-columns:100px minmax(0,1fr);column-gap:12px}
.hero h1{font-size:22px}
.hero-details{font-size:12px}
.hero-details>div{gap:6px}
.episode-grid,.watch-page .episode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
