/* Character Tales reading layout. Applied only when the body section opts in. */
.cc-reading .cc-single-content { min-width:0; font-size:1.04rem; line-height:1.75; }
.cc-reading .cc-single-content > p { max-width:70ch; margin:0 0 1.2em; }
.cc-reading .cc-content-block { scroll-margin-top:96px; margin:0 0 12px; padding:30px 0 26px; border-bottom:1px solid rgba(255,255,255,.1); }
.cc-reading .cc-content-block:last-child { border-bottom:0; }
.cc-reading .cc-content-block > h2 { margin:0 0 20px; padding:0; font-family:var(--ff-display,'Bangers',cursive); font-size:clamp(2.15rem,3.6vw,3rem); font-weight:400; line-height:1.08; letter-spacing:.035em; }
.cc-reading .cc-content-block > h2::after { width:64px; height:3px; margin:12px 0 0; }
.cc-reading .cc-content-block > h3 { margin:23px 0 10px; }
.cc-reading .cc-content-block p { margin:0 0 1.15em; line-height:1.75; }
.cc-reading .cc-content-block p:last-child { margin-bottom:0; }
.cc-reading .cc-content-block :is(ul,ol) { margin-top:14px; margin-bottom:20px; }
.cc-reading .cc-content-block li { margin-bottom:10px; }

/* Featured art is a contained illustration rather than a square crop. */
.cc-reading .cc-reading-cover { display:flex; align-items:center; justify-content:center; width:100%; max-width:100%; margin:0 0 30px; padding:14px; overflow:hidden; border:1px solid rgba(212,160,23,.2); border-radius:18px; background:linear-gradient(135deg,#192840,#111b2e); }
.cc-reading .cc-reading-cover img { display:block; width:auto; max-width:100%; max-height:440px; height:auto; margin:0 auto; border-radius:10px; object-fit:contain; box-shadow:none; }
.cc-reading .cc-reading-cover figcaption { color:#cbd5e2; }
.cc-reading .cc-content-block :is(.wp-block-image,figure) { max-width:100%; }
.cc-reading .cc-content-block .wp-block-image img,
.cc-reading .cc-content-block img { max-width:100% !important; max-height:420px; height:auto !important; object-fit:contain; }
.cc-reading .cc-content-block .wp-block-image { margin:25px 0 !important; }

/* Numbered synopsis cards retain the original semantic list. */
.cc-reading .cc-reading-summary { padding:27px 27px 28px; margin:0 0 20px; border:1px solid rgba(212,160,23,.24); border-radius:17px; background:linear-gradient(150deg,rgba(212,160,23,.08),rgba(255,255,255,.025)); }
.cc-reading .cc-reading-summary > ul:first-of-type { display:grid; grid-template-columns:1fr; gap:10px; padding:0; margin:16px 0 0; counter-reset:cc-reading-step; }
.cc-reading .cc-reading-summary > ul:first-of-type > li { position:relative; min-height:54px; margin:0; padding:13px 16px 13px 54px; border:1px solid rgba(255,255,255,.11); border-radius:11px; background:rgba(10,15,30,.48); list-style:none; counter-increment:cc-reading-step; }
.cc-reading .cc-reading-summary > ul:first-of-type > li::before { content:counter(cc-reading-step); display:grid; place-items:center; position:absolute; left:13px; top:12px; width:28px; height:28px; border-radius:50%; background:var(--ff-brand-yellow); color:#142033; font:800 .8rem/1 var(--ff-heading,sans-serif); }

/* Section accents are restrained so the story remains the focus. */
.cc-reading .cc-reading-kids { --cc-reading-accent:var(--ff-brand-yellow); }
.cc-reading .cc-reading-activity { --cc-reading-accent:var(--ff-brand-yellow); }
.cc-reading .cc-reading-prayer { --cc-reading-accent:var(--ff-brand-red); }
.cc-reading .cc-reading-challenge { --cc-reading-accent:var(--ff-brand-red); }
.cc-reading .cc-content-block:is(.cc-reading-kids,.cc-reading-activity,.cc-reading-prayer,.cc-reading-challenge) > h2::after { background:var(--cc-reading-accent); }
.cc-reading .cc-content-block:is(.cc-reading-activity,.cc-reading-prayer,.cc-reading-challenge) { padding:27px; margin:14px 0 24px; border:1px solid rgba(255,255,255,.12); border-left:4px solid var(--cc-reading-accent); border-radius:0 15px 15px 0; background:rgba(255,255,255,.035); }
.cc-reading .cc-reading-prayer { background:linear-gradient(135deg,rgba(122,0,1,.1),rgba(255,255,255,.025)) !important; }
.cc-reading .cc-reading-challenge { background:linear-gradient(135deg,rgba(122,0,1,.08),rgba(255,255,255,.025)) !important; }
.cc-reading .cc-content-block :is(.cc-lesson-card,.cc-superpower-card,.cc-age-card,.cc-activity-col,.cc-prayer-box) { max-width:100%; }

@media (max-width:640px) {
  .cc-reading .cc-single-content { font-size:1rem; }
  .cc-reading .cc-content-block { padding:24px 0 20px; }
  .cc-reading .cc-reading-summary,
  .cc-reading .cc-content-block:is(.cc-reading-activity,.cc-reading-prayer,.cc-reading-challenge) { padding:20px; }
  .cc-reading .cc-reading-cover { margin-bottom:22px; padding:9px; }
  .cc-reading .cc-reading-cover img { max-height:320px; }
  .cc-reading .cc-content-block img { max-height:360px; }
}
@media (max-width:360px) {
  .cc-reading .cc-reading-summary,
  .cc-reading .cc-content-block:is(.cc-reading-activity,.cc-reading-prayer,.cc-reading-challenge) { padding:16px; }
  .cc-reading .cc-reading-summary > ul:first-of-type > li { padding-right:11px; }
}
@media (prefers-reduced-motion:reduce) {
  .cc-reading * { animation:none !important; transition:none !important; }
}

.admin-bar .cc-reading .cc-content-block { scroll-margin-top:128px; }
