/* DS Serial + Email Bookmark — v1.5.5 */
:root{--ds-border:rgba(0,0,0,.14);--ds-border-strong:rgba(0,0,0,.28);--ds-radius:18px;--ds-pad:22px;--ds-accent:#111111;--ds-bg:#ffffff;--ds-text:#111111;}
.ds-chapter-shell{color:var(--ds-text);padding:40px 0;background:var(--ds-bg);}
.ds-chapter-shell.has-bg-img{background-size:cover;background-position:center;background-repeat:no-repeat;}
.ds-audio-block{margin:18px 0;padding:0;border:0;border-radius:0;background:transparent;}
.ds-audio-title{font-weight:900;margin-bottom:10px;color:var(--ds-text);}
.ds-audio-player{width:100%;border:0;outline:0;box-shadow:none;}
.ds-audio-details{margin:14px 0;text-align:right;}
.ds-audio-summary{cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:0;background:transparent;font-weight:800;color:var(--ds-accent);}
.ds-audio-details[open] .ds-audio-summary{margin-bottom:10px;}
.ds-audio-link{font-weight:800;color:var(--ds-accent);text-decoration:none;}
.ds-audio-link:hover{text-decoration:underline;}
.ds-chapter-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin:28px 0 18px;padding:14px 0;border:0;}
.ds-chapter-nav .ds-nav.prev{justify-self:start;}
.ds-chapter-nav .ds-nav.next{justify-self:end;}
.ds-chapter-nav .ds-remember{justify-self:center;}
.ds-nav,.ds-remember{text-decoration:none;font-weight:900;color:var(--ds-accent);}
.ds-nav.disabled{opacity:.4;}
.ds-nav.next{justify-self:end;}
.ds-remember{justify-self:center;padding:12px 16px;border-radius:999px;border:0;background:transparent;cursor:pointer;}
.ds-remember:hover{text-decoration:underline;}
.ds-bookmark{margin:18px 0 12px;padding:var(--ds-pad);border:1px solid var(--ds-border);border-radius:var(--ds-radius);background:color-mix(in srgb,var(--ds-bg) 96%,black 4%);}
.ds-bookmark--collapsed{margin:0;padding:0;border:0;background:transparent;}
.ds-bookmark h3{margin:0 0 8px;font-size:22px;color:var(--ds-accent);text-align:center;}
.ds-bookmark p{margin:0 auto 12px;opacity:.9;max-width:70ch;text-align:center;}
.ds-bookmark-nudge{display:flex;align-items:center;justify-content:center;gap:10px;margin:10px 0 0;color:var(--ds-text);opacity:.9;font-size:14px;}
.ds-bookmark-nudge .dashicons{font-size:18px;width:18px;height:18px;}
.ds-bookmark-nudge-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;padding:0;color:inherit;cursor:pointer;}
.ds-bookmark-form{display:flex;flex-direction:column;gap:10px;max-width:560px;}
.ds-bookmark-form{margin:0 auto;}
.ds-bookmark-form input[type=email],.ds-bookmark-form input[type=text]{padding:13px 12px;border-radius:12px;border:1px solid var(--ds-border-strong);font-size:16px;color:var(--ds-text);background:var(--ds-bg);}
.ds-bookmark-form input[type=email]:focus,.ds-bookmark-form input[type=text]:focus{color:var(--ds-text);background:var(--ds-bg);outline:2px solid color-mix(in srgb,var(--ds-accent) 40%,transparent);outline-offset:2px;}
.ds-btn{padding:12px 14px;border-radius:12px;border:1px solid var(--ds-accent);cursor:pointer;font-weight:1000;background:var(--ds-accent);color:#fff!important;opacity:1;box-shadow:none;margin:10px 0;}
.ds-btn:hover{filter:brightness(.96);}
.ds-note{font-size:12px;opacity:.7;}
.ds-consent{font-size:13px;opacity:.92;display:flex;gap:8px;align-items:flex-start;}
.ds-form-error{font-size:13px;color:#b00020;}
.ds-alert{margin:10px 0 0;padding:10px 12px;border-radius:12px;border:1px solid var(--ds-border-strong);}
.ds-series{margin:22px 0;}
.ds-series-hero{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:stretch;margin-bottom:14px;}
@media (max-width:780px){.ds-series-hero{grid-template-columns:1fr;}}
.ds-hero-img{min-height:180px;border-radius:var(--ds-radius);border:1px solid var(--ds-border);background-size:cover;background-position:center;}
.ds-series-title{font-weight:1000;font-size:34px;line-height:1.1;color:var(--ds-accent);margin-bottom:12px;}
.ds-series-cta-row{display:flex;flex-wrap:wrap;gap:22px;justify-content:var(--ds-cta-justify,center);}
.ds-primary-cta,.ds-secondary-cta,.ds-upsell-cta{display:inline-block;padding:12px 14px;border-radius:14px;font-weight:1000;text-decoration:none;border:1px solid var(--ds-accent);background:var(--ds-accent);color:#fff!important;opacity:1;margin:10px 0;}
.ds-primary-cta:hover,.ds-secondary-cta:hover,.ds-upsell-cta:hover{filter:brightness(.96);}
.ds-upsell-cta{border-width:2px;}
.ds-series-toggle{margin:4px 0 10px;padding:10px 12px;border-radius:12px;font-weight:900;border:1px solid var(--ds-border-strong);background:transparent;cursor:pointer;}
.ds-series-panel{padding:0;margin:0 0 18px;}
.ds-chapter-ol{margin:0;padding:0;list-style:none!important;counter-reset:none;}
.ds-chapter-ol li{margin:4px 0;padding:4px 0;list-style:none!important;}
.ds-chapter-ol li::marker{content:'';}
.ds-chapter-ol li:before{content:none!important;}
.ds-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:baseline;}
.ds-li-index{font-weight:900;color:inherit;}
.ds-chapter-link{font-weight:900;color:var(--ds-accent)!important;text-decoration:none;display:flex;gap:10px;align-items:baseline;width:100%;}
.ds-chapter-link .ds-li-index{font-weight:900;color:inherit;}
.ds-chapter-link .ds-li-title{color:inherit;}
.ds-chapter-title-locked{cursor:default;}
.ds-chapter-title-locked:hover{text-decoration:none;}
a.ds-chapter-link:hover{text-decoration:underline;}
.ds-chapter-title-locked{opacity:.75;cursor:default;text-decoration:none;}
.ds-complete{font-weight:1100;color:inherit;font-size:13px;line-height:1;white-space:nowrap;}
.ds-chapter-blurb{margin-top:0;opacity:.78;font-size:14px;max-width:80ch;margin-left:28px;}
.ds-locked-meta{margin-top:2px;font-size:16px;opacity:.95;margin-left:0;font-weight:900;}
.ds-read-ahead{font-weight:1100;color:var(--ds-accent)!important;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px;}

/* Caught-up / upsell page */
.ds-caught-hero{min-height:260px;border-radius:var(--ds-radius);border:1px solid var(--ds-border);background-size:cover;background-position:center;margin-bottom:18px;}
.ds-caught-title{margin:0 0 14px;font-size:42px;line-height:1.05;font-weight:1100;color:var(--ds-accent);} 
.ds-caught-card{border:0;border-radius:0;padding:0;background:transparent;}
.ds-caught-msg{font-size:18px;line-height:1.45;margin-bottom:16px;color:var(--ds-text);}
.ds-upcoming-item{padding:10px 0;}
.ds-upcoming-line{font-weight:1000;color:var(--ds-text);}
.ds-upcoming-num{font-weight:1000;margin-right:6px;}
.ds-upcoming-ex{margin-top:6px;opacity:.78;font-size:14px;max-width:86ch;}
.ds-upcoming-date{margin-top:6px;font-size:15px;font-weight:900;color:var(--ds-text);opacity:.95;}
.ds-upsell-big{display:inline-block;margin-top:16px;padding:14px 16px;border-radius:14px;font-weight:1200;text-decoration:none;border:2px solid color-mix(in srgb,var(--ds-accent) 55%,transparent);color:var(--ds-text)!important;background:color-mix(in srgb,var(--ds-accent) 10%,transparent);}
.ds-upsell-big:hover{background:color-mix(in srgb,var(--ds-accent) 14%,transparent);}
.ds-upsell-big--text{border-style:dashed;}
.ds-recover{margin-top:22px;padding-top:18px;border-top:1px solid var(--ds-border);}
.ds-recover-title{font-weight:1100;font-size:18px;margin-bottom:4px;}
.ds-recover-sub{opacity:.85;margin-bottom:10px;}
.ds-btn-secondary{background:transparent;border-style:dashed;}


.ds-chapter-link--locked:hover { text-decoration: none; cursor: default; }

.ds-chapter-link .ds-complete { margin-left: auto; border: 0; border-radius: 0; padding: 0; font-size: 13px; }

.ds-bookmark-form .ds-btn + .ds-btn { margin-left: 10px; }

.ds-chapter-link .ds-complete{color:inherit;}

.ds-chapter-title-locked:hover{opacity:1;text-decoration:none;}

.ds-primary-cta,.ds-secondary-cta{display:inline-flex;align-items:center;gap:8px;}
.ds-cta-ico{font-size:18px;line-height:1;}

.ds-nav-placeholder{visibility:hidden;}

/* v1.5.11 minimal tweaks */
.ds-primary-cta{margin-right:20px;}
.ds-caught-cta{margin:12px 0;}
.ds-caught-help{margin-top:6px;font-size:14px;opacity:.85;}
.ds-caught-count{margin:12px 0;font-size:14px;opacity:.85;}
.ds-primary-cta--text{display:inline-block;}


/* Read-ahead CTA color is per-series (term meta). Falls back to accent. */
.ds-read-ahead{
  color: var(--ds-ahead-color, var(--ds-accent)) !important;
}
.ds-caught-up, .ds-caught-card{
  border: none !important;
  box-shadow: none !important;
}
.ds-caught-up{padding:40px 0;text-align:center;}
.ds-caught-up .ds-chapter-ol{display:inline-block;text-align:left;margin:0 auto;}
.ds-caught-up .ds-bookmark{border:0;background:transparent;padding:0;box-shadow:none;}
.ds-caught-up .ds-bookmark-inner{border:0;}
.ds-caught-up .ds-primary-cta{
  background: var(--ds-ahead-color, var(--ds-accent)) !important;
  border-color: var(--ds-ahead-color, var(--ds-accent)) !important;
}
