.series-page { --series-accent:#a92963; --series-line:#e4e6e5; background:#fff; color:#252621; letter-spacing:0; }
.series-page * { letter-spacing:0; }
.series-page[data-series=daily-gag] { --series-accent:#806817; }
.series-page[data-series=bakisma] { --series-accent:#17665f; }
.series-page[data-series=valkyrie] { --series-accent:#8d313e; }
.series-page[data-series=kurena-koyoi] { --series-accent:#426851; }
.series-page[data-series=wasuremono] { --series-accent:#3c655f; }
.series-page[data-series=ukeaku] { --series-accent:#42484c; }
.series-wrap { width:min(1080px,calc(100% - 64px)); margin-inline:auto; }
.series-header { border-bottom:1px solid var(--series-line); background:#fff; }
.series-header>.series-wrap { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.series-brand { font-size:24px; line-height:1; white-space:nowrap; }
.series-brand span { color:var(--series-accent); }
.series-header nav { display:flex; gap:28px; font-size:14px; }
.series-header nav a { min-height:44px; display:flex; align-items:center; }
.series-page a:hover { color:var(--series-accent); }
.series-page a:focus-visible { outline:2px solid var(--series-accent); outline-offset:5px; }
.series-breadcrumb { display:flex; gap:12px; padding:25px 0; font-size:12px; color:#666; }
.series-breadcrumb>a,.series-breadcrumb>span { flex:none; white-space:nowrap; }
.series-overview { display:grid; grid-template-columns:238px minmax(0,1fr); gap:64px; align-items:center; padding:8px 0 48px; }
.series-cover { align-self:start; }
.series-cover img { width:100%; height:auto; aspect-ratio:5/7; object-fit:contain; }
.series-genre { color:var(--series-accent); font-size:13px; font-weight:700; }
.series-introduction h1 { font-size:48px; line-height:1.45; margin:7px 0 15px; }
.series-introduction h1.series-title-long { font-size:28px; line-height:1.65; overflow-wrap:anywhere; }
.series-introduction h1>span::after { content:none; }
.series-lead { max-width:620px; font-size:17px; line-height:1.9; }
.series-count { color:#666; font-size:13px; margin:22px 0 14px; }
.series-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.series-read { display:inline-flex; align-items:center; justify-content:space-between; gap:38px; min-height:52px; padding:10px 24px; border-radius:4px; background:#252621; color:#fff; font-size:15px; font-weight:700; }
.series-page .series-read:hover { color:#fff; background:var(--series-accent); }
.series-resume { font-size:13px; display:flex; flex-direction:column; gap:3px; min-height:52px; min-width:0; max-width:min(280px,100%); padding:10px 18px; border:1px solid #a3afa9; border-radius:4px; background:#fff; }
.series-resume strong { font-size:14px; line-height:1.5; }
.series-resume span { font-size:12px; line-height:1.6; color:#666; overflow-wrap:anywhere; }
.series-page .series-resume:hover { color:#252621; border-color:var(--series-accent); background:#fbf1f5; }
.series-section { padding-block:42px 48px; border-top:1px solid var(--series-line); scroll-margin-top:24px; }
.series-section-heading { display:flex; align-items:baseline; gap:16px; margin-bottom:24px; flex-wrap:wrap; }
.series-section-heading>span:first-child { font:12px Arial,sans-serif; color:var(--series-accent); }
.series-section-heading h2 { font-size:22px; line-height:1.5; }
.series-synopsis { max-width:790px; margin-left:34px; }
.series-synopsis p { font-size:16px; line-height:2; margin-bottom:15px; }
.series-synopsis p:last-child { margin:0; }
.series-detail-link { margin-top:20px; font-size:13px; display:inline-flex; align-items:center; min-height:44px; gap:12px; text-decoration:underline; text-underline-offset:5px; }
.series-list-count { margin-left:auto; font-size:12px; color:#666; }
.series-season-nav { display:flex; flex-wrap:wrap; gap:16px 24px; border-bottom:1px solid var(--series-line); margin-bottom:34px; padding-bottom:18px; font-size:14px; }
.series-season-nav a { border-bottom:2px solid var(--series-accent); padding-bottom:5px; }
.episode-group { scroll-margin-top:24px; margin-bottom:40px; }
.episode-group:last-child { margin-bottom:0; }
.group-heading { display:flex; gap:14px; align-items:baseline; }
.group-heading h3 { font-size:18px; }
.group-heading span { color:#777; font-size:12px; }
.episode-group>p { font-size:13px; color:#666; margin:7px 0 18px; }
.episode-list { list-style:none; padding:0; margin:0; border-top:1px solid var(--series-line); }
.episode-list li { border-bottom:1px solid var(--series-line); }
.episode-list a { min-height:59px; display:grid; grid-template-columns:75px minmax(0,1fr) 66px 18px; gap:16px; align-items:center; padding:13px 12px; font-size:14px; }
.episode-list a:hover { background:#fbf1f5; }
.episode-number { color:#666; font-size:12px; }
.episode-name { overflow-wrap:anywhere; }
.episode-pages { font-size:12px; color:#777; text-align:right; white-space:nowrap; }
.episode-arrow { color:var(--series-accent); }
.series-publication-band { background:#f7f8f7; }
.series-publications { display:flex; flex-wrap:wrap; gap:16px 40px; }
.series-publications a { display:flex; gap:15px; min-height:36px; align-items:center; font-size:14px; text-decoration:underline; text-underline-offset:5px; }
.series-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:26px; }
.series-footer small { color:#777; }
.series-footer-links { display:flex; flex-wrap:wrap; gap:12px 24px; font-size:12px; }
.series-footer-links a { display:inline-flex; min-height:44px; align-items:center; text-decoration:underline; text-underline-offset:4px; }
.series-footer .privacy-footer { padding:0; }
.series-footer .privacy-link { font-size:12px; }
@media(max-width:700px) {
  .series-wrap { width:calc(100% - 36px); }
  .series-header>.series-wrap { min-height:68px; gap:16px; }
  .series-brand { font-size:21px; }
  .series-header nav { gap:14px; font-size:12px; }
  .series-overview { grid-template-columns:112px minmax(0,1fr); gap:22px; align-items:start; padding-bottom:30px; }
  .series-genre { font-size:11px; }
  .series-introduction h1 { font-size:30px; margin:4px 0 8px; }
  .series-introduction h1.series-title-parts>span { display:block; }
  .series-page[data-series=wasuremono] .series-introduction h1 { font-size:22px; }
  .series-introduction h1.series-title-long { font-size:20px; line-height:1.65; }
  .series-lead { font-size:13px; line-height:1.8; }
  .series-count { font-size:11px; margin:15px 0 10px; }
  .series-read { min-height:46px; padding:10px 14px; gap:14px; font-size:13px; }
  .series-actions { gap:12px; }
  .series-resume { font-size:12px; padding:9px 14px; }
  .series-section { padding-block:30px 34px; }
  .series-section-heading { gap:12px; margin-bottom:18px; }
  .series-section-heading h2 { font-size:20px; }
  .series-synopsis { margin-left:0; }
  .series-synopsis p { font-size:14px; line-height:1.95; }
  .series-detail-link { font-size:12px; gap:7px; }
  .series-list-count { width:100%; margin-left:24px; font-size:11px; }
  .series-season-nav { gap:22px; font-size:13px; }
  .episode-list a { grid-template-columns:53px minmax(0,1fr) 14px; gap:10px; padding:14px 4px; min-height:64px; font-size:13px; }
  .episode-pages { display:none; }
  .series-publications { flex-direction:column; gap:12px; }
  .series-footer { flex-wrap:wrap; }
  .series-footer .privacy-footer { width:100%; text-align:left; }
}
@media(prefers-reduced-motion:reduce) { .series-page { scroll-behavior:auto; } }
@media(max-width:370px) {
  .series-header>.series-wrap { flex-wrap:wrap; gap:4px; padding-block:14px 7px; }
  .series-header nav { width:100%; gap:24px; }
  .series-header nav a { min-height:34px; white-space:nowrap; }
  .series-overview { grid-template-columns:88px minmax(0,1fr); gap:18px; }
}
