/* Responsive reading adapter; existing production palette and typefaces. */
html {scroll-behavior:smooth}body{margin:0;background:var(--ed-ground);color:var(--ed-ink);font-size:18px;line-height:1.65}
*,*::before,*::after{box-sizing:border-box}a{color:inherit;text-underline-offset:.2em}a:focus-visible{outline:3px solid var(--ed-accent);outline-offset:4px}
.reader-nav{padding:1rem clamp(1rem,5vw,3rem);display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;background:var(--ed-ground);color:var(--ed-ink);border-bottom:1px solid var(--ed-line)}.reader-nav a{padding:.45rem 0;min-height:44px}.reader-nav strong{margin-right:auto}
.reader-toc{max-width:46rem;margin:auto;padding:1.5rem;display:flex;flex-wrap:wrap;gap:.6rem 1.25rem}.reader-toc a{padding:.3rem 0;min-height:44px}.skip-link{position:absolute;top:-10rem;left:1rem;background:var(--ed-cream);color:var(--ed-cream-ink);padding:1rem;z-index:10}.skip-link:focus{top:1rem}
.page{display:block;position:relative;width:100%;height:auto;min-height:0;max-width:none;margin:0;padding:0;overflow:visible;break-after:auto}.ed-band{height:clamp(12rem,35vw,23rem)}.ed-band--short,.ed--dark .ed-band--short,.ed-band--tall{height:clamp(12rem,35vw,23rem)}.ed-band--strip{height:9rem}
.ed-body{display:block;min-height:0;max-width:46rem;padding:1.5rem clamp(1.25rem,5vw,3rem) 2rem;margin:auto}.ed-title{font-size:clamp(1.8rem,6vw,2.5rem);line-height:1.2;max-width:none;margin:.5rem 0 1rem}.ed-prose,.ed-lead,.ed-note,.ed-marks,.ed-actions,.ed-steps{max-width:none}.ed-prose p,.ed-steps__text,.ed-actions__detail,.ed-marks li{font-size:1.0625rem;line-height:1.75}.ed-lead{font-size:1.25rem;line-height:1.6}.ed-note{margin-top:1.5rem;font-size:1rem}.eyebrow,.ed-steps__label{font-size:.8rem;line-height:1.5;letter-spacing:.09em}.ed-signoff{font-size:1.15rem}.ed-foot{position:static;display:flex;flex-wrap:wrap;gap:.5rem;max-width:46rem;margin:auto;padding:1rem clamp(1.25rem,5vw,3rem) 2rem;font-size:.75rem;letter-spacing:.05em}
.ed--cover{padding-bottom:2rem}.ed-band--cover{position:relative;height:clamp(18rem,58vw,36rem)}.ed-mark{top:1.5rem;left:clamp(1.25rem,5vw,3rem)}.ed-cover__type{position:static;padding:0 clamp(1.25rem,5vw,3rem);max-width:46rem;margin:-1.5rem auto 0}.ed-cover__title{font-size:clamp(2.3rem,7.5vw,3.6rem);max-width:none;line-height:1.12}.ed-cover__subtitle{font-size:1.25rem;max-width:32rem}.ed-cover__meta{position:static;max-width:46rem;margin:1.5rem auto 0;padding:0 clamp(1.25rem,5vw,3rem);font-size:.8rem;line-height:1.5}
.ed-band--number{height:auto;overflow:visible}.ed-band--number>.ed-img{height:clamp(14rem,40vw,25rem)}.ed-band--number::after{display:none}.ed-number__id{position:static;max-width:46rem;margin:auto;padding:1.25rem clamp(1.25rem,5vw,3rem) 0}.ed-number__row{flex-wrap:wrap;gap:.3rem 1rem}.ed-numeral{font-size:clamp(3.75rem,17vw,6.2rem)}.ed-number__label{font-size:.9rem}.ed-number__line{font-size:1.25rem;line-height:1.6}.ed-practice{margin-top:1.5rem;padding:1rem 1.25rem}.ed-practice__text{font-size:1.15rem;line-height:1.6}
.ed-steps li{gap:1rem;padding:1rem 0}.ed-steps__ord{font-size:.85rem;width:1.7rem}.ed-prompt__ask{font-size:1.2rem;line-height:1.6}.ed-prompt__line,.ed-dateline{display:none}.ed-prompt__q{padding:1rem 0;border-bottom:1px solid var(--ah-discovery-color-stone)}.ed-body--card{padding-top:2rem}.ed-card{width:100%;max-width:32rem;margin:1.5rem auto 0}.ed-card__body{padding:1.25rem}.ed-band--card{height:12rem}.ed-card__num{font-size:3.5rem}.ed-marks--card li{font-size:1rem}.ed-card__sign{font-size:.8rem}
.ed-actions li{padding:1.25rem 0}.ed-actions__label{font-size:1.25rem;line-height:1.5}.ed-actions__url{font-size:.95rem;overflow-wrap:anywhere}.ed--colophon{padding:3rem 1.25rem}.ed-cutout{position:static;transform:none;width:min(70%,20rem);margin:auto}.ed-back,.ed--colophon .ed-back{position:static;max-width:40rem;margin:2rem auto 0}.ed-back__tag{font-size:1.8rem}.ed-back__lines{position:static;display:flex;gap:.5rem;margin-top:2rem;font-size:.8rem;line-height:1.5}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Allow enlarged text and long labels to reflow inside narrow flex rows. */
p,h1,h2,h3,a,li{overflow-wrap:anywhere}.ed-steps li>div{min-width:0;flex:1}.ed-marks li>span:last-child{min-width:0}.ed-number__row>*{max-width:100%}
html{font-size:100%}.ed-steps__ord{width:auto;min-width:1.7rem}
.ed-number__label{overflow-wrap:anywhere;min-width:0;white-space:normal}
:lang(th) .eyebrow,:lang(th) .ed-foot,:lang(th) .ed-steps__label,:lang(th) .ed-number__label,:lang(th) .ed-card__word,:lang(th) .ed-card__sign{letter-spacing:normal;text-transform:none;font-style:normal}

/* Keep the reading label below its image at enlarged text sizes. */
.ed-cover__type{margin:0 auto 0}

/* ---- anahana.com hosting fixes (plumbing/gift-1111-fix, 2026-11-11) ----
   Appended to every hosted edition's _assets/reader.css by
   scripts/gift_1111/r2_stage.py; the edition files are otherwise unchanged.
   The th and ru editions carry inline print sizes (:lang(th)
   .ed-band--number { height: 3.6in } and the like) that outrank this file's
   own `.ed-band--number { height: auto }`, so on screen the number band kept
   its print height and the 1111 heading ran under the text (Clint, 11 Nov,
   Thai reader). A heavier selector restores the screen rules; print is
   untouched. */
@media screen {
  html .ed-band.ed-band--number { height: auto; overflow: visible; }
  html .ed-band.ed-band--tall { height: clamp(12rem, 35vw, 23rem); }
}
