/* Rounded chapter panels shared by articles and the editorial preview. */
.article-body .rh-chapter-card {
  min-width:0;
  margin:0 0 26px;
  padding:22px;
  border:1px solid #e4c1a3;
  border-radius:16px;
  background:linear-gradient(135deg,#fffdf9 0%,#fcf6ee 100%);
  color:#34271f;
  box-shadow:0 3px 12px #6f412905;
  overflow-wrap:break-word;
}
.article-body .rh-chapter-card + .rh-chapter-card {margin-top:26px}
.article-body .rh-chapter-card > h2,
.article-body .rh-program-card > h3,
.article-body .rh-chapter-card > h3:first-child {
  padding:0;
  border:0;
  margin:0 0 18px;
  color:#29445c;
  font:700 clamp(22px,2.15vw,27px)/1.28 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:-.025em;
  scroll-margin-top:108px;
}
.article-body .rh-chapter-card > h3:not(:first-child) {margin:24px 0 14px;font-size:21px;line-height:1.35;color:#604631}
.article-body .rh-program-card > h3:not(:first-child) {font-size:clamp(22px,2.15vw,27px);color:#29445c}
.article-body .rh-program-card > .rh-status + h3 {margin-top:14px}
.article-body .rh-chapter-card h4 {
  color:#604631;
  font:700 17px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;
  margin:25px 0 10px;
}
.article-body .rh-chapter-card > p {margin:0 0 16px;line-height:1.75}
.article-body .rh-chapter-card > :last-child {margin-bottom:0}
.article-body .rh-chapter-card .rh-program-tip {
  margin:20px 0 0;
  padding:13px 16px;
  border-left:3px solid #ad6535;
  border-radius:0 7px 7px 0;
  background:#f2e5d3;
  color:#473222;
  font-size:16px;
  line-height:1.65;
}
.article-body .rh-status {
  display:inline-block;
  padding:5px 9px;
  border-radius:7px;
  background:#f1e4d4;
  color:#77512f;
  font:700 12px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;
}
.article-body .rh-status.yes {background:#eaf0dc;color:#42573d}
.article-body .rh-status.no {background:#f2e8dc;color:#775b42}
.article-body .rh-chapter-card :is(.retenir-box,.rh-retain-box,.note-saviez-vous,.rh-method-tip) {
  margin:20px 0;
  padding:15px 17px;
  border-left:3px solid #ad6535;
  border-radius:0 9px 9px 0;
  background:#f4e8d8;
}
.article-body .rh-chapter-card :is(img,video) {max-width:100%;height:auto}
.article-body .rh-chapter-card :is(.video-shell,.rh-youtube-facade) {max-width:100%}
.article-body .rh-chapter-card ul,
.article-body .rh-chapter-card ol {padding-left:24px}
.article-body .rh-chapter-card table {font-size:15px}
@media(max-width:620px) {
  .article-body .rh-chapter-card {padding:18px 16px;margin-bottom:22px;border-radius:15px}
  .article-body .rh-chapter-card + .rh-chapter-card {margin-top:22px}
  .article-body .rh-chapter-card > h2,
  .article-body .rh-program-card > h3,
  .article-body .rh-chapter-card > h3:first-child {font-size:23px;scroll-margin-top:92px}
  .article-body .rh-chapter-card > h3:not(:first-child) {font-size:20px}
  .article-body .rh-program-card > h3:not(:first-child) {font-size:23px}
  .article-body .rh-chapter-card h4 {font-size:16px}
  .article-body .rh-chapter-card .rh-program-tip {padding:12px 13px;font-size:15px}
}

/* Course callouts and related reading: cream panels with walnut actions. */
.article-body a.battle.compact {
  container-type:inline-size;
  display:block;
  margin:26px 0;
  border:1px solid #dbb38c;
  border-radius:18px;
  background:linear-gradient(115deg,#f3dfc2 0%,#fbefdf 52%,#fffaf3 100%);
  box-shadow:0 9px 25px #71472812,inset 0 1px 0 #fff9ed;
  color:#493021;
  text-decoration:none;
  transition:border-color .18s,box-shadow .18s;
}
.article-body a.battle.compact:hover {
  transform:none;
  border-color:#bb8556;
  box-shadow:0 12px 28px #7147281c;
}
.article-body a.battle.compact .battle-caption {
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:17px;
  padding:24px;
}
.article-body a.battle.compact .battle-caption::before {
  content:"📚";
  display:grid;
  place-items:center;
  width:48px;
  height:52px;
  border:1px solid #d4b08b;
  border-radius:13px;
  background:linear-gradient(145deg,#fff5e3,#eacba6);
  box-shadow:inset 0 1px 0 #ffffff80;
  font:24px/1 system-ui,sans-serif;
}
.article-body a.battle.compact .battle-caption > div {min-width:0}
.article-body a.battle.compact .kicker {
  display:block;
  margin:0 0 5px;
  color:#8a5b35!important;
  font:750 10px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.12em;
}
.article-body a.battle.compact [data-training-title] {
  display:block;
  margin:0 0 5px;
  color:#493021;
  font:750 22px/1.23 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:-.025em;
}
.article-body a.battle.compact [data-training-detail] {
  display:block;
  color:#75614f;
  font:400 14px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;
  white-space:normal;
}
.article-body a.battle.compact .battle-caption > span:last-child {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  margin:0;
  padding:12px 18px;
  border:1px solid #805030;
  border-radius:11px;
  background:linear-gradient(110deg,#985e33,#6e4028);
  box-shadow:0 6px 14px #653a2426,inset 0 1px 0 #ffffff26;
  color:#fffaf2;
  font:750 14px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;
  text-decoration:none;
  white-space:nowrap;
}
.article-body a.battle.compact:focus-visible {
  outline:3px solid #a97143;
  outline-offset:4px;
}
.article-body .rh-related-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:20px 0 0;
}
.article-body a.rh-related-card {
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  min-width:0;
  min-height:116px;
  padding:20px 56px 20px 19px;
  border:1px solid #e1c6ab;
  border-radius:14px;
  background:linear-gradient(125deg,#fffefa,#fbefdf);
  box-shadow:0 4px 10px #67402506;
  color:#493021;
  text-decoration:none;
  overflow-wrap:break-word;
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.article-body a.rh-related-card > span {
  display:block;
  color:#91603d;
  font:750 10px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.article-body a.rh-related-card > strong {
  display:block;
  color:#493021;
  font:700 17px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:-.015em;
}
.article-body a.rh-related-card::after {
  content:"→";
  position:absolute;
  right:15px;
  top:50%;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid #e5c9a9;
  border-radius:50%;
  background:#f6e7d1;
  color:#8e5831;
  font:22px/1 system-ui,sans-serif;
  transform:translateY(-50%);
}
.article-body a.rh-related-card:hover {
  transform:translateY(-2px);
  border-color:#bc8c62;
  box-shadow:0 8px 16px #67402512;
}
.article-body a.rh-related-card:focus-visible {outline:3px solid #a97143;outline-offset:3px}
@container (max-width:510px) {
  .article-body a.battle.compact .battle-caption {grid-template-columns:48px minmax(0,1fr);padding:20px;gap:17px 14px}
  .article-body a.battle.compact .battle-caption > span:last-child {grid-column:1/-1;width:100%;margin-top:2px}
}
@media(max-width:620px) {
  .article-body .rh-related-grid {grid-template-columns:minmax(0,1fr);gap:12px}
  .article-body a.rh-related-card {min-height:100px;padding-top:17px;padding-bottom:17px}
  .article-body a.battle.compact [data-training-title] {font-size:21px}
}
@media(prefers-reduced-motion:reduce) {
  .article-body a.battle.compact,
  .article-body a.rh-related-card {transition:none}
  .article-body a.rh-related-card:hover {transform:none}
}

/* Quizzes and generous spacing, restored from the reference article. */
.article-body .rh-chapter-card {margin-bottom:40px;padding:24px;border-radius:17px}
.article-body .rh-chapter-card + .rh-chapter-card {margin-top:40px}
.article-body .rh-chapter-card > h2 {
  color:#3b281b;
  font:700 clamp(26px,2.5vw,32px)/1.2 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
  margin-bottom:19px;
}
.article-body .rh-chapter-card > h3:not(:first-child) {color:#29445c;margin-top:29px}
.article-body .rh-chapter-card:has(>h2[id*="source"]) {background:#fcf6ee}
.article-body .rh-quiz-anchor {display:block;height:0;scroll-margin-top:108px}
.article-body details.rh-quiz-panel {
  container-type:inline-size;
  position:relative;
  margin:40px 0;
  border:1px solid #885836;
  border-radius:23px;
  background:#fffaf4;
  box-shadow:0 17px 30px #4c2d1b1f;
  scroll-margin-top:108px;
}
.article-body .rh-quiz-summary {
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  align-items:center;
  gap:30px;
  padding:30px;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(115deg,#352116 0%,#653d26 54%,#a76635 100%);
  color:#fff9ed;
  cursor:pointer;
  list-style:none;
}
.article-body .rh-quiz-summary::-webkit-details-marker {display:none}
.article-body .rh-quiz-summary::marker {content:""}
.article-body .rh-quiz-summary::after {
  content:"";position:absolute;z-index:-1;right:-72px;top:-94px;width:228px;height:228px;
  border:1px solid #ffdeb440;border-radius:50%;background:#fff3db08;pointer-events:none;
}
.article-body .rh-quiz-summary:focus-visible {outline:3px solid #e7bc82;outline-offset:4px}
.article-body .rh-quiz-art {
  position:relative;display:grid;place-items:center;width:112px;height:112px;
  border-radius:28px;background:linear-gradient(145deg,#fffefa,#fff0d9);color:#8c4c25;
  box-shadow:0 12px 25px #1c100b25;font:700 78px/1 Georgia,serif;
}
.article-body .rh-quiz-art::before,
.article-body .rh-quiz-art::after {content:"";position:absolute;inset:-13px;border:1px solid #f9dcc552;border-radius:27px;transform:rotate(-8deg);pointer-events:none}
.article-body .rh-quiz-art::after {inset:-9px;transform:rotate(7deg)}
.article-body .rh-quiz-copy {display:block;min-width:0}
.article-body .rh-quiz-kicker {
  display:inline-block;margin:0 0 12px;padding:5px 10px;border:1px solid #ffe2c54d;
  border-radius:30px;background:#fff2e022;color:#fff3e4;
  font:750 10px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;text-transform:uppercase;letter-spacing:.025em;
}
.article-body .rh-quiz-title {
  display:block;margin:0 0 10px;color:#fff9ee;
  font:700 clamp(27px,4.5cqi,32px)/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.02em;
}
.article-body .rh-quiz-description {display:block;margin:0;color:#f3dfc9;font:500 16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}
.article-body .rh-quiz-toggle {
  display:inline-flex;align-items:center;justify-content:center;gap:24px;margin-top:19px;padding:13px 17px;
  min-height:50px;border:1px solid #fff6e8;border-radius:11px;background:#fffdf8;color:#754427;
  box-shadow:0 6px 14px #2815091a;font:750 15px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;
}
.article-body .rh-quiz-summary:hover .rh-quiz-toggle {background:#fff3de}
.article-body .rh-quiz-open-label {display:none}
.article-body .rh-quiz-panel[open] > summary {border-radius:22px 22px 0 0}
.article-body .rh-quiz-panel[open] .rh-quiz-closed-label {display:none}
.article-body .rh-quiz-panel[open] .rh-quiz-open-label {display:inline}
.article-body .rh-quiz-panel[open] .rh-quiz-arrow {transform:rotate(-90deg)}
.article-body .rh-quiz-body {padding:27px}
.article-body .rh-quiz-body > h2 {margin:0 0 24px;padding:0;border:0;font-size:28px;color:#442c1d}
.article-body .rh-quiz-panel .quiz-form fieldset {min-width:0;margin:0 0 25px;padding:17px 18px 19px;border:1px solid #ddbea0;border-radius:15px;background:#fffdfa}
.article-body .rh-quiz-panel .quiz-form legend {max-width:100%;padding:5px 8px;color:#3e2b1e;font:700 17px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}
.article-body .rh-quiz-panel .quiz-form label {display:flex;align-items:flex-start;gap:11px;margin:9px 0;padding:12px;border:1px solid #ebdac7;border-radius:10px;background:#faf3e9;color:#49382a;font-size:15px;line-height:1.55;cursor:pointer}
.article-body .rh-quiz-panel .quiz-form input[type=radio] {flex:0 0 18px;width:18px;height:18px;margin:3px 0 0;accent-color:#8d5632}
.article-body .rh-quiz-panel .quiz-form label:has(input:checked) {border-color:#a87545;background:#f5e3cc}
.article-body .rh-quiz-panel .quiz-form label:has(input:focus-visible) {outline:2px solid #a87545;outline-offset:3px}
.article-body .rh-quiz-panel .quiz-form label.is-correct {border-color:#829b67;background:#edf3e4;color:#354a2a}
.article-body .rh-quiz-panel .quiz-form label.is-incorrect {border-color:#c28e65;background:#fae7d8;color:#703c20}
.article-body .rh-quiz-panel .quiz-explanation {margin:16px 0 0;padding:13px 15px;border-left:3px solid #ab6b3c;border-radius:0 9px 9px 0;background:#f1e4d1;font-size:14px;line-height:1.6}
.article-body .rh-quiz-panel [data-feedback=correct] .quiz-explanation {border-color:#6d894f;background:#edf3e4}
.article-body .rh-quiz-panel .quiz-form > .btn {border-radius:11px;margin:4px 8px 8px 0;padding:12px 17px;background:linear-gradient(110deg,#955b31,#6d3d23);border-color:#79482b;color:#fffaf0;box-shadow:0 6px 12px #713c241a;font-size:14px}
.article-body .rh-quiz-panel .quiz-form > .btn.light {background:#fffdf8;color:#765034;box-shadow:none;border-color:#d8b999}
.article-body .rh-quiz-panel .quiz-result:empty {display:none}
.article-body .rh-quiz-panel .quiz-result:not(:empty) {margin:18px 0 0;padding:18px;border:1px solid #d7bc99;border-radius:13px;background:#f4e6d2;font-weight:700;font-size:18px;line-height:1.55;scroll-margin:110px}
.article-body .rh-quiz-close {display:block;width:100%;margin-top:22px;padding:12px 15px;border:1px solid #d9bda1;border-radius:11px;background:#fffaf2;color:#754427;font-weight:650;font-size:14px}
.article-body .rh-quiz-close[hidden] {display:none}
@container(max-width:520px) {
  .article-body .rh-quiz-summary {grid-template-columns:minmax(0,1fr);gap:22px;padding:25px}
  .article-body .rh-quiz-art {width:68px;height:68px;border-radius:19px;font-size:52px;margin:5px 0 0 7px}
  .article-body .rh-quiz-art::before,.article-body .rh-quiz-art::after {inset:-7px;border-radius:20px}
  .article-body .rh-quiz-title {font-size:28px}
  .article-body .rh-quiz-description {font-size:15px}
  .article-body .rh-quiz-toggle {display:flex;gap:18px}
  .article-body .rh-quiz-body {padding:21px 16px}
  .article-body .rh-quiz-panel .quiz-form fieldset {padding:12px 11px 15px}
  .article-body .rh-quiz-panel .quiz-form legend {font-size:16px}
  .article-body .rh-quiz-panel .quiz-form > .btn {display:flex;width:100%;margin:9px 0}
}
@media(max-width:620px) {
  .article-body .rh-chapter-card {padding:22px 17px;margin-bottom:32px}
  .article-body .rh-chapter-card + .rh-chapter-card {margin-top:32px}
  .article-body .rh-chapter-card > h2 {font-size:28px}
  .article-body details.rh-quiz-panel {margin:32px 0}
}
