.appeal-page { max-width:760px; padding-top:2.5rem; padding-bottom:4rem; }
.appeal-header { padding-bottom:2rem; border-bottom:1px solid var(--line); }
.appeal-header h1 { font-size:clamp(2.65rem,6.6vw,4.7rem); margin-bottom:0.7rem; }
.appeal-subtitle { font-family:Georgia,serif; font-size:1.5rem; margin-bottom:1rem; }
.appeal-question { font-family:Georgia,serif; font-size:1.35rem; line-height:1.5; max-width:34rem; }
.appeal-framing { color:var(--muted); font-size:0.85rem; margin-bottom:0; }
.appeal { padding:2.5rem 0 1rem; font-family:Georgia,'Times New Roman',serif; font-size:1.22rem; line-height:1.8; }
.appeal p { margin-bottom:1rem; orphans:3; widows:3; }
.appeal section + section { margin-top:3rem; padding-top:2rem; border-top:1px solid var(--line); }
.appeal h2 { font-size:1.85rem; line-height:1.3; margin-bottom:1.5rem; }
.appeal section { scroll-margin-top:1rem; }
.appeal .scene { color:var(--muted); font-style:italic; font-size:1.05rem; }
.appeal-pivot { border-left:2px solid var(--gold); padding-left:1.2rem; font-size:1.45rem; line-height:1.55; }
.appeal-turn { font-style:italic; }
.appeal-ending { font-size:1.45rem; line-height:1.55; }
.appeal-note { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:1.8rem 0; color:var(--muted); font-size:0.95rem; }
.appeal-note h2 { color:var(--ink); font-size:1.75rem; }
.appeal-note details { padding-top:0.3rem; }
.appeal-note summary { cursor:pointer; color:var(--ink); font-weight:600; }
.appeal-note details p { margin:0.8rem 0 0; }
.appeal-note summary:focus-visible,.appeal-contents summary:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.appeal-contents { margin-top:1.5rem; padding:1rem 0; border-bottom:1px solid var(--line); }
.appeal-contents summary { cursor:pointer; font-weight:600; font-size:0.9rem; }
.appeal-contents ol { display:grid; grid-template-columns:1fr 1fr; gap:0.6rem 2rem; padding-left:1.4rem; margin:1rem 0 0; font-size:0.9rem; }
.share-tools [hidden] { display:none !important; }
.copy-fallback { flex-basis:100%; }
.copy-fallback label { display:block; margin-bottom:0.4rem; }
.copy-fallback input { width:100%; max-width:100%; padding:0.6rem; border:1px solid var(--line); background:var(--white); color:var(--ink); font-size:0.85rem; }
.appeal-next { margin-top:3rem; padding-top:2rem; border-top:1px solid var(--line); }
.appeal-next h2 { font-size:2rem; }
.appeal-reading-list { padding:0; margin:1.5rem 0; list-style:none; }
.appeal-reading-list li { padding:1rem 0; border-bottom:1px solid var(--line); }
.appeal-reading-list h3 { font-size:1.4rem; margin:0 0 0.5rem; }
.appeal-reading-list p { color:var(--muted); font-size:0.95rem; margin:0; }
.appeal-more { margin:1.25rem 0 0; }
@media(max-width:600px) {
  .appeal-page { padding-top:2rem; padding-bottom:3rem; }
  .appeal-header .eyebrow { font-size:0.65rem; letter-spacing:0.09em; }
  .appeal { font-size:1.1rem; line-height:1.75; padding-top:2rem; }
  .appeal-pivot,.appeal-ending { font-size:1.3rem; }
  .appeal-contents ol { grid-template-columns:1fr; }
}
@media print {
  .appeal-page { padding:0; max-width:none; }
  .appeal-header h1 { font-size:30pt; }
  .appeal { font-size:12pt; line-height:1.5; padding-top:1rem; }
  .appeal p { margin-bottom:0.7rem; }
  .appeal-note { font-size:10pt; }
  .appeal-next,.appeal-contents { display:none; }
  .appeal section + section { margin-top:1.3rem; padding-top:1rem; }
  .appeal h2 { font-size:18pt; }
  .appeal .scene { font-size:11pt; }
}
