/**
 * Single-post body + editorial patterns.
 *
 * @package Anna_Green
 */

@font-face {
  font-family: "Unifraktur Maguntia";
  src: url("../fonts/UnifrakturMaguntia.woff2") format("woff2"),
       url("../fonts/UnifrakturMaguntia.woff") format("woff");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

/* Editorial margin notes activate only when the canvas can safely hold them. */
@media (min-width: 1100px) {
  .single-post:not(.single-post--journal) .single-post__body > .is-style-sticky-left:not(.anna-pattern),
  .single-post:not(.single-post--journal) .single-post__body > .anna-note-align--left:not(.anna-pattern) {
    float: left;
    width: clamp(12rem, 16vw, 14.5rem);
    margin: 0.35rem 1.5rem 1.25rem -7rem;
  }

  .single-post:not(.single-post--journal) .single-post__body > .is-style-sticky-right:not(.anna-pattern),
  .single-post:not(.single-post--journal) .single-post__body > .anna-note-align--right:not(.anna-pattern) {
    float: right;
    width: clamp(12rem, 16vw, 14.5rem);
    margin: 0.35rem -7rem 1.25rem 1.5rem;
  }
}

@font-face {
  font-family: "Citadel of Blackrose";
  src: url("../fonts/CitadelofBlackrose.woff2") format("woff2"),
       url("../fonts/CitadelofBlackrose.woff") format("woff");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

.single-post__body {
  max-width: 60rem;
}

/* Pattern library 1.17: field guides, media plates, compact columns, and tape. */
.single-post__body .is-style-washi-note,
.single-post__body .is-style-corner-taped,
.single-post__body .is-style-cross-taped,
.single-post__body .is-style-binder-label {
  --anna-accent: var(--gold);
  --anna-accent-soft: rgba(212, 180, 90, 0.12);
  --anna-paper: var(--navy-mid);
  --anna-paper-hi: var(--navy-hi);
  --anna-ink: var(--cream);
  --anna-copy: var(--cream-soft);
  --anna-rule: rgba(212, 180, 90, 0.38);
  position: relative;
  box-sizing: border-box;
  width: min(100%, 20rem);
  margin: 1.75rem auto 2rem;
  padding: 1.25rem 1.3rem 1.35rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper);
  color: var(--anna-ink);
  box-shadow: 5px 7px 0 var(--anna-accent-soft), 0 14px 24px rgba(0, 0, 0, 0.14);
}

html[data-theme="light"] .single-post__body .is-style-washi-note,
html[data-theme="light"] .single-post__body .is-style-corner-taped,
html[data-theme="light"] .single-post__body .is-style-cross-taped,
html[data-theme="light"] .single-post__body .is-style-binder-label {
  --anna-paper: #FFFDF8;
  --anna-paper-hi: #FEFEFE;
  --anna-ink: #3A241B;
  --anna-copy: #60483B;
  --anna-rule: rgba(143, 98, 18, 0.34);
  box-shadow: 5px 7px 0 rgba(143, 98, 18, 0.14);
}

.single-post__body .is-style-washi-note p,
.single-post__body .is-style-corner-taped p,
.single-post__body .is-style-cross-taped p,
.single-post__body .is-style-binder-label p {
  color: var(--anna-copy) !important;
}

.single-post__body .is-style-washi-note h4,
.single-post__body .is-style-corner-taped h4,
.single-post__body .is-style-cross-taped h4,
.single-post__body .is-style-binder-label h4,
.single-post__body .is-style-washi-note strong,
.single-post__body .is-style-corner-taped strong,
.single-post__body .is-style-cross-taped strong,
.single-post__body .is-style-binder-label strong {
  color: var(--anna-ink) !important;
}

.single-post__body .anna-note-align--left { margin-right: auto; margin-left: 0; transform: rotate(-0.85deg); }
.single-post__body .anna-note-align--right { margin-right: 0; margin-left: auto; transform: rotate(0.85deg); }

.single-post__body .is-style-washi-note::before,
.single-post__body .is-style-corner-taped::before,
.single-post__body .is-style-corner-taped::after,
.single-post__body .is-style-cross-taped::before,
.single-post__body .is-style-cross-taped::after,
.single-post__body .is-style-binder-label::before {
  content: "";
  position: absolute;
  z-index: 3;
  pointer-events: none;
}

.single-post__body .is-style-washi-note::before {
  top: -0.55rem;
  left: 18%;
  width: 64%;
  height: 1.05rem;
  border-right: 1px dashed color-mix(in srgb, var(--anna-accent) 65%, transparent);
  border-left: 1px dashed color-mix(in srgb, var(--anna-accent) 65%, transparent);
  background-color: var(--anna-accent);
  background-image: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.24) 0 5px, transparent 5px 10px);
  opacity: 0.72;
  transform: rotate(-1.2deg);
}

.single-post__body .is-style-corner-taped::before,
.single-post__body .is-style-corner-taped::after {
  width: 4.5rem;
  height: 0.9rem;
  background: var(--gold-metallic);
  opacity: 0.82;
}

.single-post__body .is-style-corner-taped::before { top: 0.15rem; left: -1.15rem; transform: rotate(-38deg); }
.single-post__body .is-style-corner-taped::after { right: -1.15rem; bottom: 0.2rem; transform: rotate(-38deg); }

.single-post__body .is-style-cross-taped::before,
.single-post__body .is-style-cross-taped::after {
  top: -0.35rem;
  left: -1.8rem;
  width: clamp(5.75rem, 34%, 7.25rem);
  height: 0.95rem;
  background: var(--anna-accent);
  opacity: 0.7;
}

.single-post__body .is-style-cross-taped::before { transform: rotate(31deg); }
.single-post__body .is-style-cross-taped::after { transform: rotate(-28deg); }

.single-post__body .is-style-binder-label {
  width: min(100%, 29rem);
  padding-top: 1.75rem;
  border-left: 5px solid var(--anna-accent);
}

.single-post__body .is-style-binder-label::before {
  top: -1px;
  left: 1.25rem;
  width: 8rem;
  height: 1.15rem;
  border: 1px solid var(--anna-rule);
  border-bottom: 0;
  background: var(--anna-accent-soft);
  clip-path: polygon(0 0, 88% 0, 100% 100%, 0 100%);
}

/* Reusable native Image styles. */
.single-post__body .wp-block-image.is-style-taped-photo,
.single-post__body .wp-block-image.is-style-field-plate,
.single-post__body .wp-block-image.is-style-archival-print {
  position: relative;
  box-sizing: border-box;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.single-post__body .wp-block-image.is-style-taped-photo {
  padding: 0.55rem 0.55rem 1.45rem;
  border: 1px solid var(--anna-rule, var(--border-strong));
  background: var(--anna-paper-hi, var(--navy-hi));
  box-shadow: 5px 7px 0 var(--anna-accent-soft, rgba(212, 180, 90, 0.12));
}

.single-post__body .wp-block-image.is-style-taped-photo::before,
.single-post__body .wp-block-image.is-style-taped-photo::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -0.45rem;
  width: 4rem;
  height: 0.85rem;
  background: var(--gold-metallic);
  opacity: 0.82;
  pointer-events: none;
}

.single-post__body .wp-block-image.is-style-taped-photo::before { left: 8%; transform: rotate(-3deg); }
.single-post__body .wp-block-image.is-style-taped-photo::after { right: 8%; transform: rotate(3deg); }

.single-post__body .wp-block-image.is-style-field-plate {
  padding: 0.6rem;
  border: 1px solid var(--anna-accent, var(--gold));
  outline: 1px solid var(--anna-rule, var(--border));
  outline-offset: 0.3rem;
  background: var(--anna-paper-hi, var(--navy-hi));
}

.single-post__body .wp-block-image.is-style-field-plate::after {
  content: "PLATE";
  position: absolute;
  right: 0.7rem;
  bottom: 0.7rem;
  padding: 0.22rem 0.38rem;
  background: var(--anna-paper-hi, var(--navy-hi));
  color: var(--anna-accent, var(--gold));
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.12em;
}

.single-post__body .wp-block-image.is-style-archival-print {
  padding: 0.7rem 0.7rem 2rem;
  border: 1px solid var(--anna-rule, var(--border-strong));
  background-color: var(--anna-paper-hi, var(--navy-hi));
  background-image: repeating-linear-gradient(0deg, transparent 0 1.6rem, var(--anna-accent-soft, rgba(212, 180, 90, 0.08)) 1.6rem calc(1.6rem + 1px));
  box-shadow: inset 0 0 0 5px var(--anna-paper-hi, var(--navy-hi)), inset 0 0 0 6px var(--anna-rule, var(--border));
}

.single-post__body .wp-block-image.is-style-taped-photo img,
.single-post__body .wp-block-image.is-style-field-plate img,
.single-post__body .wp-block-image.is-style-archival-print img {
  display: block;
  width: 100%;
}

/* Field-guide layouts. */
.single-post__body .anna-pattern--field-guide {
  background-image:
    linear-gradient(90deg, transparent 0 2.15rem, var(--anna-accent-soft) 2.15rem calc(2.15rem + 1px), transparent calc(2.15rem + 1px)),
    repeating-linear-gradient(0deg, transparent 0 2rem, color-mix(in srgb, var(--anna-rule) 32%, transparent) 2rem calc(2rem + 1px));
}

.single-post__body .anna-field-guide__split,
.single-post__body .anna-field-guide__header,
.single-post__body .anna-compact-columns,
.single-post__body .anna-media__dispatch-head {
  gap: clamp(1rem, 3vw, 1.8rem);
  align-items: flex-start;
}

.single-post__body .anna-field-guide__split > .wp-block-column,
.single-post__body .anna-field-guide__header > .wp-block-column,
.single-post__body .anna-compact-columns > .wp-block-column,
.single-post__body .anna-media__dispatch-head > .wp-block-column {
  min-width: 0;
}

.single-post__body .anna-field-guide__plate img,
.single-post__body .anna-media__transcript-image img,
.single-post__body .anna-media__archive-image img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.single-post__body .anna-field-guide__note {
  margin-top: 1.1rem;
  padding: 0.9rem 1rem;
  border-left: 3px solid var(--anna-accent);
  background: var(--anna-accent-soft);
}

.single-post__body .anna-field-guide__note p:last-child { margin-bottom: 0; }

.single-post__body .anna-field-guide__stamp {
  padding: 0.8rem 1rem;
  border: 1px dashed var(--anna-accent);
  text-align: center;
  transform: rotate(0.7deg);
}

.single-post__body .anna-field-guide__key {
  margin-top: 1.15rem;
  border-top: 2px solid var(--anna-accent);
}

.single-post__body .anna-field-guide__key-row {
  display: grid;
  grid-template-columns: 2.5rem 1fr;
  gap: 0.8rem;
  align-items: start;
  padding: 0.85rem 0;
  border-bottom: 1px solid var(--anna-rule);
}

.single-post__body .anna-field-guide__key-row .anna-pattern__number,
.single-post__body .anna-field-guide__key-row p { margin: 0 !important; }

/* Image, audio, and video patterns. */
.single-post__body .anna-media__photo-quote-stage {
  display: grid;
  align-items: end;
  margin-top: 1rem;
}

.single-post__body .anna-media__photo-quote-stage > * { grid-area: 1 / 1; }

.single-post__body .anna-media__hero-image {
  width: min(78%, 42rem);
  margin: 0 auto 2.5rem 0 !important;
}

.single-post__body .anna-media__hero-image img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.single-post__body .anna-media__quote-card {
  z-index: 3;
  width: min(53%, 27rem);
  margin: 0 1rem 0 auto;
  padding: 1.15rem 1.25rem;
  border: 1px solid var(--anna-accent);
  background: var(--anna-paper-hi);
  box-shadow: 5px 6px 0 var(--anna-accent-soft);
  transform: rotate(-1deg);
}

.single-post__body .anna-media__quote-card .wp-block-quote {
  margin: 0;
  padding: 0;
  border: 0;
}

.single-post__body .anna-media__quote-card .wp-block-quote p {
  color: var(--anna-ink) !important;
  font-family: "Spectral", Georgia, serif;
  font-size: clamp(1.05rem, 2.2vw, 1.35rem);
  font-style: italic;
  line-height: 1.48;
}

.single-post__body .anna-media__quote-card cite {
  color: var(--anna-accent);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.74rem;
  letter-spacing: 0.08em;
}

.single-post__body .anna-media__transcript-grid {
  align-items: center;
}

.single-post__body .anna-media__transcript {
  padding-left: clamp(1rem, 3vw, 1.7rem);
  border-left: 1px solid var(--anna-rule);
}

.single-post__body .anna-media__transcript p {
  margin-bottom: 0.8rem;
  line-height: 1.55;
}

.single-post__body .anna-media__transcript strong { color: var(--anna-accent) !important; }

.single-post__body .anna-media__triptych {
  gap: clamp(0.75rem, 2vw, 1.2rem);
  align-items: center;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.single-post__body .anna-media__triptych-card { min-width: 0; }
.single-post__body .anna-media__triptych-card--a { transform: rotate(-1.6deg); }
.single-post__body .anna-media__triptych-card--b { transform: translateY(-0.75rem) rotate(0.5deg); }
.single-post__body .anna-media__triptych-card--c { transform: rotate(1.4deg); }
.single-post__body .anna-media__triptych-card .wp-block-image { margin: 0 0 0.7rem; }
.single-post__body .anna-media__triptych-card img { aspect-ratio: 4 / 5; object-fit: cover; }

.single-post__body .anna-media__audio,
.single-post__body .anna-media__video {
  width: 100%;
  margin: 1rem 0 1.25rem;
  padding: 0.6rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-media__audio audio,
.single-post__body .anna-media__video video { display: block; width: 100%; }

.single-post__body .anna-media__transcript-details {
  margin: 1rem 0;
  padding: 0.85rem 1rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-media__transcript-details summary {
  min-height: 44px;
  color: var(--anna-accent);
  font-family: "Barlow", system-ui, sans-serif;
  font-weight: 600;
  line-height: 44px;
  cursor: pointer;
}

.single-post__body .anna-media__video-notes,
.single-post__body .anna-media__archive-record { margin-top: 1rem; }

/* Small editorial columns adapted from the Figma studies. */
.single-post__body .anna-annotation__layout,
.single-post__body .anna-parallel__grid,
.single-post__body .anna-counter__grid,
.single-post__body .anna-evidence__grid,
.single-post__body .anna-translation__grid {
  gap: clamp(1rem, 3vw, 1.75rem);
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  align-items: stretch;
}

.single-post__body .anna-annotation__layout > .wp-block-column,
.single-post__body .anna-parallel__grid > .wp-block-column,
.single-post__body .anna-counter__grid > .wp-block-column,
.single-post__body .anna-evidence__grid > .wp-block-column,
.single-post__body .anna-translation__grid > .wp-block-column { min-width: 0; }

.single-post__body .anna-annotation__text {
  padding: 1.2rem 1.3rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-annotation__text p {
  color: var(--anna-ink) !important;
  font-size: 1.05rem;
  line-height: 1.8;
}

.single-post__body .anna-annotation-mark {
  padding: 0.05em 0.12em;
  background: linear-gradient(transparent 58%, color-mix(in srgb, var(--anna-accent) 35%, transparent) 58% 92%, transparent 92%);
  color: inherit;
}

.single-post__body .anna-annotation-mark--rose {
  background: linear-gradient(transparent 58%, rgba(226, 141, 152, 0.3) 58% 92%, transparent 92%);
}

.single-post__body .anna-annotation__notes { display: grid; gap: 0.8rem; }

.single-post__body .anna-annotation__note {
  padding: 0.75rem 0 0.75rem 0.85rem;
  border-left: 3px solid var(--anna-accent);
}

.single-post__body .anna-annotation__note p:last-child { margin-bottom: 0; font-size: 0.9rem; font-style: italic; }

.single-post__body .anna-parallel__voice,
.single-post__body .anna-counter__side,
.single-post__body .anna-evidence__source,
.single-post__body .anna-evidence__reading,
.single-post__body .anna-translation__column {
  padding: 1rem 1.05rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-parallel__voice--second,
.single-post__body .anna-counter__side--response,
.single-post__body .anna-translation__column--second {
  border-top: 3px solid var(--anna-accent);
}

.single-post__body .anna-parallel__voice--second p:not(.anna-pattern__kicker),
.single-post__body .anna-translation__column--second p:not(.anna-pattern__kicker) { font-style: italic; }

.single-post__body .anna-evidence__source .wp-block-quote {
  margin: 0;
  padding: 0;
  border: 0;
}

.single-post__body .anna-evidence__source cite {
  color: var(--anna-accent);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.72rem;
}

@media (max-width: 700px) {
  .single-post__body .anna-note-align--left,
  .single-post__body .anna-note-align--right,
  .single-post__body .is-style-washi-note,
  .single-post__body .is-style-corner-taped,
  .single-post__body .is-style-cross-taped,
  .single-post__body .is-style-binder-label {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    transform: none;
  }

  .single-post__body .anna-field-guide__split,
  .single-post__body .anna-field-guide__header,
  .single-post__body .anna-compact-columns,
  .single-post__body .anna-media__dispatch-head,
  .single-post__body .anna-media__triptych,
  .single-post__body .anna-annotation__layout,
  .single-post__body .anna-parallel__grid,
  .single-post__body .anna-counter__grid,
  .single-post__body .anna-evidence__grid,
  .single-post__body .anna-translation__grid {
    flex-wrap: wrap !important;
  }

  .single-post__body .anna-field-guide__split > .wp-block-column,
  .single-post__body .anna-field-guide__header > .wp-block-column,
  .single-post__body .anna-compact-columns > .wp-block-column,
  .single-post__body .anna-media__dispatch-head > .wp-block-column,
  .single-post__body .anna-media__triptych > .wp-block-column,
  .single-post__body .anna-annotation__layout > .wp-block-column,
  .single-post__body .anna-parallel__grid > .wp-block-column,
  .single-post__body .anna-counter__grid > .wp-block-column,
  .single-post__body .anna-evidence__grid > .wp-block-column,
  .single-post__body .anna-translation__grid > .wp-block-column {
    flex-basis: 100% !important;
  }

  .single-post__body .anna-field-guide__stamp,
  .single-post__body .anna-media__triptych-card { transform: none; }

  .single-post__body .anna-media__photo-quote-stage { display: block; }
  .single-post__body .anna-media__hero-image { width: 100%; margin: 0 0 1rem !important; }
  .single-post__body .anna-media__quote-card { width: 100%; margin: 0; transform: none; }
  .single-post__body .anna-media__transcript { padding-top: 1rem; padding-left: 0; border-top: 1px solid var(--anna-rule); border-left: 0; }
}

.single-post__body > *:first-child {
  margin-top: 0;
}

.single-post__body p,
.single-post__body li {
  font-size: 1.2rem;
  line-height: 1.8;
  color: var(--cream-mid);
}

.single-post__body p {
  margin: 0 0 1.25rem;
}

html[data-theme="dark"] .single-post__body strong,
html[data-theme="dark"] .single-post__body b {
  color: #FFF0A8;
  font-weight: 700;
}

.single-post__body h2,
.single-post__body h3 {
  font-family: "Spectral", Georgia, serif;
  font-weight: 600;
  color: var(--cream);
  letter-spacing: -0.01em;
}

.single-post__body h2 {
  font-size: 1.5rem;
  margin: 2.15rem 0 0.85rem;
}

.single-post__body h3 {
  font-size: 1.2rem;
  margin: 1.75rem 0 0.7rem;
}

.single-post__body ul,
.single-post__body ol {
  margin: 0 0 1.35rem;
  padding-left: 1.35rem;
}

.single-post__body li + li {
  margin-top: 0.35rem;
}

.single-post__body a {
  color: var(--gold);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
  text-decoration-skip-ink: auto;
}

.single-post__body a:hover {
  color: var(--cream);
  text-decoration-thickness: 2px;
}

.single-post__body a:focus-visible {
  border-radius: 2px;
  outline: 3px solid var(--gold);
  outline-offset: 3px;
}

html[data-theme="dark"] .single-post__body p,
html[data-theme="dark"] .single-post__body li {
  color: #E2E4E9;
}

html[data-theme="dark"] .single-post__body figcaption,
html[data-theme="dark"] .single-post__body .anna-pattern__meta,
html[data-theme="dark"] .single-post__body .anna-pattern__kicker {
  color: #D8C49D;
}

/* Opt-in manuscript initials. Ordinary paragraphs are intentionally unaffected. */
.single-post__body p.is-style-drop-cap-archival::first-letter,
.single-post__body p.is-style-drop-cap-fantasy::first-letter {
  float: left;
  margin: 0.08em 0.18em -0.08em 0;
  color: #D8C49D;
  font-size: 3.7rem;
  font-weight: 400;
  line-height: 0.82;
  text-shadow: 0 0 12px rgba(212, 163, 89, 0.18);
}

.single-post__body p.is-style-drop-cap-archival::first-letter {
  font-family: "Unifraktur Maguntia", "IM Fell English SC", Georgia, serif;
}

.single-post__body p.is-style-drop-cap-fantasy::first-letter {
  font-family: "Citadel of Blackrose", "Cinzel", Georgia, serif;
}

html[data-theme="light"] .single-post__body p.is-style-drop-cap-archival::first-letter,
html[data-theme="light"] .single-post__body p.is-style-drop-cap-fantasy::first-letter {
  color: #79510D;
  text-shadow: 0 0 12px rgba(168, 121, 22, 0.14);
}

@supports (initial-letter: 3 2) {
  .single-post__body p.is-style-drop-cap-archival::first-letter,
  .single-post__body p.is-style-drop-cap-fantasy::first-letter {
    float: none;
    margin: 0 0.18em 0 0;
    font-size: inherit;
    line-height: inherit;
    initial-letter: 3 2;
  }
}

.single-post__body .wp-block-table {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.single-post__body .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
}

.single-post__body .wp-block-table th,
.single-post__body .wp-block-table td {
  min-width: 8rem;
  padding: 0.75rem 0.8rem;
  border: 0;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
}

.single-post__body .wp-block-table th {
  color: var(--cream);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.single-post__body blockquote,
.single-post__body .wp-block-quote,
.single-post__body .wp-block-pullquote {
  border: 0;
  border-left: 2px solid rgba(201, 168, 76, 0.45);
  margin: 1.75rem 0 2rem;
  padding: 0.15rem 0 0.15rem 1.25rem;
}

.single-post__body blockquote p,
.single-post__body .wp-block-quote p,
.single-post__body .wp-block-pullquote p {
  font-family: "Spectral", Georgia, serif;
  font-style: italic;
  font-size: 1.2rem;
  line-height: 1.6;
  color: var(--cream-soft);
  margin: 0;
}

.single-post__body .wp-block-quote cite,
.single-post__body .wp-block-pullquote cite {
  display: block;
  margin-top: 0.65rem;
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.75rem;
  font-style: normal;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
}

.single-post__body hr,
.single-post__body .wp-block-separator {
  border: 0;
  width: 2.5rem;
  height: 1px;
  margin: 2rem 0;
  background: var(--gold);
}

.single-post__body figure,
.single-post__body .wp-block-image {
  margin: 0 0 1.75rem;
}

.single-post__body figcaption {
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  color: var(--cream-dim);
  margin-top: 0.5rem;
}

.single-post__body .wp-block-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* Reusable editorial patterns */
.single-post__body .anna-desk-note,
.single-post__body .field-note,
.single-post__body .reading-card,
.single-post__body .image-note {
  position: relative;
  overflow: visible;
  color: var(--cream);
}

.single-post__body .anna-desk-note {
  margin: 1.75rem 0 2.25rem;
  padding: 1.4rem 1.5rem 1.5rem;
  background: var(--navy-mid);
  border: 1px solid var(--gold);
  box-shadow: inset 3px 0 0 var(--gold), 8px 9px 0 rgba(212, 180, 90, 0.18);
}

.single-post__body .anna-desk-note::before {
  content: "";
  position: absolute;
  top: -0.55rem;
  left: 1.35rem;
  width: 5.5rem;
  height: 1rem;
  background: var(--gold-metallic);
  border: 1px solid var(--gold);
  transform: rotate(-1deg);
}

.single-post__body .anna-desk-note__label,
.single-post__body .anna-desk-note__date,
.single-post__body .field-note__label,
.single-post__body .reading-card__label,
.single-post__body .image-note__source {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 600;
  letter-spacing: 0.25em;
  line-height: 1.4;
  text-transform: uppercase;
  color: var(--gold) !important;
}

.single-post__body .anna-desk-note__label,
.single-post__body .field-note__label,
.single-post__body .reading-card__label {
  margin: 0 0 0.65rem !important;
}

.single-post__body .anna-desk-note__date {
  margin: 0 0 0.85rem !important;
  color: var(--cream-dim) !important;
}

.single-post__body .anna-desk-note__text {
  font-family: "Spectral", Georgia, serif;
  font-size: 1.3rem !important;
  line-height: 1.45;
  color: var(--cream) !important;
}

.single-post__body .anna-desk-note__meta {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.8rem !important;
  letter-spacing: 0.08em;
  color: var(--cream-dim) !important;
}

.single-post__body .anna-desk-note__signoff {
  margin: 0.8rem 0 0 !important;
  font-family: "Spectral", Georgia, serif !important;
  font-style: italic;
  color: var(--cream-dim) !important;
}

.single-post__body .anna-desk-note__rule {
  width: 100%;
  margin: 0.8rem 0 1rem;
  border: 0;
  height: 1px;
  background: var(--gold-metallic);
}

.single-post__body .field-note {
  margin: 1.75rem 0 2rem;
  padding: 1.2rem 1.35rem;
  background: var(--navy-mid);
  border: 1px solid var(--border-strong);
  border-left: 3px solid var(--gold);
  box-shadow: 6px 7px 0 rgba(212, 180, 90, 0.13);
}

.single-post__body .field-note__heading,
.single-post__body .reading-card__title {
  font-family: "Spectral", Georgia, serif !important;
  font-weight: 600;
  color: var(--cream) !important;
}

.single-post__body .field-note__heading {
  font-size: 1.45rem !important;
  margin: 0 0 0.7rem !important;
}

.single-post__body .reading-card {
  margin: 1.75rem 0 2rem;
  padding: 1.35rem 1.4rem 1.45rem;
  background: var(--navy-mid);
  border: 1px solid var(--gold);
  box-shadow: inset 3px 0 0 var(--gold), 7px 8px 0 rgba(212, 180, 90, 0.15);
}

.single-post__body .reading-card__title {
  font-size: 1.5rem !important;
  margin: 0 0 0.3rem !important;
}

.single-post__body .reading-card__author,
.single-post__body .reading-card__meta,
.single-post__body .reading-card__tags {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.85rem !important;
  color: var(--cream-dim) !important;
}

.single-post__body .reading-card__tags {
  letter-spacing: 0.08em;
}

.single-post__body .editorial-quote {
  margin: 2rem 0;
  padding: 1.35rem 1.5rem;
  background: var(--navy-mid);
  border: 1px solid var(--gold);
  border-left: 4px solid var(--gold);
  box-shadow: 6px 7px 0 rgba(212, 180, 90, 0.13);
}

.single-post__body .editorial-quote p {
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.25rem !important;
  font-style: italic;
  color: var(--cream-soft) !important;
}

.single-post__body .editorial-quote p.editorial-quote__attribution {
  display: block;
  margin-top: 0.65rem !important;
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.75rem !important;
  font-style: normal;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold) !important;
}

.single-post__body .image-note {
  margin: 2rem 0;
  padding: 1rem;
  background: var(--navy-mid);
  border: 1px solid var(--border-strong);
  box-shadow: 6px 7px 0 rgba(212, 180, 90, 0.13);
}

.single-post__body .image-note__caption {
  margin: 0.85rem 0 0.35rem !important;
  font-family: "Spectral", Georgia, serif;
  font-style: italic;
  color: var(--cream-dim) !important;
}

.single-post__body .image-note__source a,
.single-post__body .reading-card__link a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--gold) !important;
}

@media (max-width: 640px) {
  .single-post__body .anna-desk-note,
  .single-post__body .field-note,
  .single-post__body .reading-card,
  .single-post__body .editorial-quote,
  .single-post__body .image-note {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

/* Book Review Tile / Celestial Reading Card. */
.single-post__body .book-review-tile {
  position: relative;
  margin: 2rem auto;
  padding: clamp(1rem, 3vw, 1.6rem);
  overflow: hidden;
  border: 1px solid var(--border-strong);
  background: var(--navy-mid);
  box-shadow: inset 0 0 0 3px rgba(212, 180, 90, 0.07), 7px 9px 0 rgba(212, 180, 90, 0.12);
}

.single-post__body .book-review-tile::after {
  content: "";
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  width: 2.4rem;
  height: 2.4rem;
  border-right: 1px solid var(--gold);
  border-bottom: 1px solid var(--gold);
  pointer-events: none;
}

.single-post__body .book-review-tile__layout {
  gap: clamp(1.2rem, 4vw, 2.5rem);
  align-items: center;
  margin: 0;
}

.single-post__body .book-review-tile__media,
.single-post__body .book-review-tile__content {
  min-width: 0;
}

.single-post__body .book-review-tile__cover {
  min-height: 16rem;
  margin: 0 !important;
  border: 1px solid var(--border-strong);
  background: rgba(212, 180, 90, 0.07);
  box-shadow: 8px 9px 18px rgba(0, 0, 0, 0.28);
}

.single-post__body .book-review-tile__cover img {
  display: block;
  width: 100%;
  aspect-ratio: 2 / 3;
  object-fit: cover;
}

.single-post__body .book-review-tile__label,
.single-post__body .book-review-tile__publisher,
.single-post__body .book-review-tile__tags,
.single-post__body .book-review-tile__link {
  font-family: "Barlow", system-ui, sans-serif !important;
}

.single-post__body .book-review-tile__label {
  margin: 0 0 0.65rem !important;
  color: var(--gold) !important;
  font-size: 0.75rem !important;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.single-post__body .book-review-tile__title {
  margin: 0 0 0.35rem !important;
  color: var(--cream) !important;
  font-size: clamp(1.6rem, 4vw, 2.45rem) !important;
  line-height: 1.1;
}

.single-post__body .book-review-tile__author {
  margin: 0 0 0.2rem !important;
  color: var(--cream) !important;
  font-size: 1.08rem !important;
}

.single-post__body .book-review-tile__publisher,
.single-post__body .book-review-tile__tags {
  margin: 0 0 0.8rem !important;
  color: var(--cream-dim) !important;
  font-size: 0.82rem !important;
}

.single-post__body .book-review-tile__review {
  color: var(--cream-soft) !important;
}

.single-post__body .book-review-tile__rating,
.single-post__body p.is-style-rating-1,
.single-post__body p.is-style-rating-2,
.single-post__body p.is-style-rating-3,
.single-post__body p.is-style-rating-4,
.single-post__body p.is-style-rating-5 {
  position: relative;
  display: inline-block;
  min-width: 10rem;
  min-height: 2.25rem;
  margin: 0.35rem 0 0.8rem !important;
  overflow: hidden;
  color: transparent !important;
  font-size: 0 !important;
}

.single-post__body .book-review-tile__rating::before,
.single-post__body .book-review-tile__rating::after,
.single-post__body p[class*="is-style-rating-"]::before,
.single-post__body p[class*="is-style-rating-"]::after {
  position: absolute;
  inset: 0 auto auto 0;
  color: rgba(212, 180, 90, 0.34);
  font: 1.55rem/2.25rem Georgia, serif;
  letter-spacing: 0.2em;
  white-space: nowrap;
}

.single-post__body .book-review-tile__rating::before,
.single-post__body p[class*="is-style-rating-"]::before { content: "☆☆☆☆☆"; }
.single-post__body .book-review-tile__rating::after,
.single-post__body p[class*="is-style-rating-"]::after { color: var(--gold); text-shadow: 0 0 9px rgba(212, 180, 90, 0.42); }
.single-post__body .is-style-rating-1::after { content: "★"; }
.single-post__body .is-style-rating-2::after { content: "★★"; }
.single-post__body .is-style-rating-3::after { content: "★★★"; }
.single-post__body .is-style-rating-4::after { content: "★★★★"; }
.single-post__body .is-style-rating-5::after { content: "★★★★★"; }

.single-post__body .book-review-tile__link a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--gold) !important;
  font-weight: 600;
}

html[data-theme="light"] .single-post__body .book-review-tile {
  border-color: #8F6212;
  background: #FFFDF8;
  box-shadow: inset 0 0 0 3px rgba(168, 121, 22, 0.06), 7px 9px 0 rgba(143, 98, 18, 0.18);
}

html[data-theme="light"] .single-post__body .book-review-tile__title,
html[data-theme="light"] .single-post__body .book-review-tile__author { color: #3A241B !important; }
html[data-theme="light"] .single-post__body .book-review-tile__publisher,
html[data-theme="light"] .single-post__body .book-review-tile__review,
html[data-theme="light"] .single-post__body .book-review-tile__tags { color: #60483B !important; }
html[data-theme="light"] .single-post__body .book-review-tile__cover { background: #FEFEFE; border-color: rgba(143, 98, 18, 0.48); }
html[data-theme="light"] .single-post__body .book-review-tile__rating::before,
html[data-theme="light"] .single-post__body p[class*="is-style-rating-"]::before { content: "✧✧✧✧✧"; color: rgba(168, 121, 22, 0.35); }
html[data-theme="light"] .single-post__body .book-review-tile__rating::after,
html[data-theme="light"] .single-post__body p[class*="is-style-rating-"]::after { color: #A87916; text-shadow: none; }
html[data-theme="light"] .single-post__body .is-style-rating-1::after { content: "✹"; }
html[data-theme="light"] .single-post__body .is-style-rating-2::after { content: "✹✹"; }
html[data-theme="light"] .single-post__body .is-style-rating-3::after { content: "✹✹✹"; }
html[data-theme="light"] .single-post__body .is-style-rating-4::after { content: "✹✹✹✹"; }
html[data-theme="light"] .single-post__body .is-style-rating-5::after { content: "✹✹✹✹✹"; }

@media (max-width: 640px) {
  .single-post__body .book-review-tile__layout { flex-wrap: wrap !important; }
  .single-post__body .book-review-tile__layout > .wp-block-column { flex-basis: 100% !important; }
  .single-post__body .book-review-tile__cover { min-height: 0; max-width: 13rem; margin-right: auto !important; margin-left: auto !important; }
}

/* Wide post canvas with a readable measure for ordinary prose. */
.single-post:not(.single-post--journal) .single-post__body > p,
.single-post:not(.single-post--journal) .single-post__body > h2,
.single-post:not(.single-post--journal) .single-post__body > h3,
.single-post:not(.single-post--journal) .single-post__body > h4,
.single-post:not(.single-post--journal) .single-post__body > ul,
.single-post:not(.single-post--journal) .single-post__body > ol,
.single-post:not(.single-post--journal) .single-post__body > blockquote,
.single-post:not(.single-post--journal) .single-post__body > .wp-block-quote,
.single-post:not(.single-post--journal) .single-post__body > .wp-block-pullquote,
.single-post:not(.single-post--journal) .single-post__body > hr,
.single-post:not(.single-post--journal) .single-post__body > .wp-block-separator {
  width: 100%;
  max-width: 46rem;
  margin-right: auto;
  margin-left: auto;
}

.single-post__body > .alignwide,
.single-post__body > .wp-block-image,
.single-post__body > .wp-block-gallery,
.single-post__body > .anna-desk-note,
.single-post__body > .field-note,
.single-post__body > .reading-card,
.single-post__body > .editorial-quote,
.single-post__body > .image-note,
.single-post__body > .pastry-window,
.single-post__body > .recipe-draft,
.single-post__body > .shelf-ticket,
.single-post__body > .margin-dispatch,
.single-post__body > .archive-specimen,
.single-post__body > .journal-observation,
.single-post__body > .commonplace-clipping,
.single-post__body > .scrapbook-spread,
.single-post__body > .revision-ledger,
.single-post__body > .research-trail,
.single-post__body > .anna-pattern,
.single-post__body > .is-style-sticky-left,
.single-post__body > .is-style-sticky-right,
.single-post__body > .is-style-sticky-inline,
.single-post__body > .is-style-paper-box,
.single-post__body > .is-style-index-card,
.single-post__body > .is-style-gilded-aside {
  width: 100%;
  max-width: 60rem;
  margin-right: auto;
  margin-left: auto;
}

.single-post__body > .alignwide,
.single-post__body > .wp-block-gallery,
.single-post__body > .anna-pattern {
  clear: both;
}

.single-post__body > .alignfull {
  width: 100%;
  max-width: none;
  margin-right: auto;
  margin-left: auto;
}

/* Pattern: kicker / lede */
.essay-kicker,
.essay-dateline {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 600;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--gold) !important;
  margin: 0 0 1rem !important;
}

.essay-lede {
  font-family: "Spectral", Georgia, serif;
  font-size: 1.2rem;
  line-height: 1.65;
  color: var(--cream) !important;
}

.essay-lede::first-letter {
  float: left;
  font-family: "Spectral", Georgia, serif;
  font-size: 3.15rem;
  font-weight: 700;
  line-height: 0.82;
  padding: 0.08em 0.14em 0 0;
  color: var(--gold);
}

/* Pattern: plaque */
.essay-plaque,
.wp-block-group.essay-plaque {
  position: relative;
  overflow: visible;
  margin: 0 0 2rem;
  padding: 1.35rem 1.25rem 1.4rem 1.4rem;
  background: var(--navy);
  border: 1px solid var(--gold);
  box-shadow:
    inset 3px 0 0 var(--gold),
    6px 7px 0 rgba(212, 180, 90, 0.18);
}

.essay-plaque p:last-child {
  margin-bottom: 0;
}

.essay-plaque__label {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.75rem !important;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold) !important;
  margin: 0 0 0.55rem !important;
}

.essay-plaque__title {
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.35rem !important;
  font-weight: 600;
  color: var(--cream) !important;
  margin: 0 0 0.65rem !important;
}

/* Pattern: Q&A */
.essay-q {
  font-family: "Spectral", Georgia, serif !important;
  font-style: italic;
  font-size: 1.125rem !important;
  color: var(--gold) !important;
  margin: 1.75rem 0 0.55rem !important;
}

.essay-a {
  margin: 0 0 0.35rem 0 !important;
}

/* Pattern: letter */
.essay-salutation {
  font-style: italic;
}

.essay-signoff {
  margin-top: 2rem !important;
  font-style: italic;
}

html[data-theme="light"] .essay-plaque,
html[data-theme="light"] .wp-block-group.essay-plaque {
  background: #FEFEFE;
  box-shadow:
    inset 3px 0 0 var(--gold),
    6px 7px 0 rgba(143, 98, 18, 0.22);
}

/* Whimsy editorial patterns: fixed geometry, theme-specific surface treatment. */
.single-post__body .pastry-window,
.single-post__body .recipe-draft,
.single-post__body .shelf-ticket,
.single-post__body .margin-dispatch,
.single-post__body .archive-specimen {
  position: relative;
  isolation: isolate;
  max-width: 100%;
  margin: 2rem 0 2.35rem;
  padding: 1.45rem 1.5rem;
  overflow: visible;
  border: 1px solid var(--border-strong);
  background: var(--navy-mid);
  box-shadow: 7px 8px 0 rgba(212, 180, 90, 0.15);
}

.single-post__body .pastry-window p,
.single-post__body .recipe-draft p,
.single-post__body .shelf-ticket p,
.single-post__body .margin-dispatch p,
.single-post__body .archive-specimen p,
.single-post__body .recipe-draft li {
  color: var(--cream-mid) !important;
}

.single-post__body .pastry-window::after,
.single-post__body .recipe-draft::after,
.single-post__body .shelf-ticket::after,
.single-post__body .margin-dispatch::after,
.single-post__body .archive-specimen::after {
  content: "";
  position: absolute;
  inset: 7px;
  z-index: -1;
  pointer-events: none;
  opacity: 0;
  background:
    linear-gradient(var(--gold), var(--gold)) 0 0 / 16px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 0 / 1px 16px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 0 / 16px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 0 / 1px 16px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 100% / 16px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 100% / 1px 16px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 100% / 16px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 100% / 1px 16px no-repeat;
}

.single-post__body .pastry-window__label,
.single-post__body .recipe-draft__label,
.single-post__body .shelf-ticket__label,
.single-post__body .margin-dispatch__label,
.single-post__body .archive-specimen__label,
.single-post__body .pastry-window__date,
.single-post__body .recipe-draft__meta,
.single-post__body .shelf-ticket__byline,
.single-post__body .shelf-ticket__source,
.single-post__body .archive-specimen__meta {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.45;
  text-transform: uppercase;
}

.single-post__body .pastry-window__label,
.single-post__body .recipe-draft__label,
.single-post__body .shelf-ticket__label,
.single-post__body .margin-dispatch__label,
.single-post__body .archive-specimen__label {
  margin: 0 0 0.65rem !important;
  color: var(--gold) !important;
}

.single-post__body .pastry-window__date,
.single-post__body .recipe-draft__meta,
.single-post__body .shelf-ticket__byline,
.single-post__body .shelf-ticket__source,
.single-post__body .archive-specimen__meta,
.single-post__body .pastry-window__meta,
.single-post__body .shelf-ticket__tags,
.single-post__body .archive-specimen__tags {
  color: var(--cream-dim) !important;
}

.single-post__body .pastry-window__title,
.single-post__body .recipe-draft__title,
.single-post__body .shelf-ticket__title,
.single-post__body .margin-dispatch__title,
.single-post__body .archive-specimen__title {
  margin: 0 0 0.45rem !important;
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.45rem !important;
  font-weight: 600;
  line-height: 1.22;
  color: var(--cream) !important;
}

.single-post__body .pastry-window__meta,
.single-post__body .shelf-ticket__tags,
.single-post__body .archive-specimen__tags {
  margin: 0.9rem 0 0 !important;
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.08em;
}

.single-post__body .pastry-window__rule {
  width: 100%;
  height: 2px;
  margin: 1rem 0 0.9rem;
  border: 0;
  background: var(--gold-metallic);
}

.single-post__body .pastry-window::before {
  content: "";
  position: absolute;
  top: -0.4rem;
  right: 1.2rem;
  left: 1.2rem;
  height: 0.65rem;
  pointer-events: none;
  background: var(--gold-metallic);
}

.single-post__body .recipe-draft {
  padding-left: 1.75rem;
}

.single-post__body .recipe-draft::before {
  content: "";
  position: absolute;
  top: 1.1rem;
  bottom: 1.1rem;
  left: 0.55rem;
  width: 3px;
  background: var(--gold-metallic);
}

.single-post__body .recipe-draft__steps {
  margin: 1.15rem 0 1.05rem !important;
  padding: 0 !important;
  list-style: none;
  counter-reset: draft-step;
}

.single-post__body .recipe-draft__steps li {
  position: relative;
  min-height: 2rem;
  margin: 0.65rem 0 !important;
  padding: 0.35rem 0 0.35rem 2.65rem;
  counter-increment: draft-step;
}

.single-post__body .recipe-draft__steps li::before {
  content: counter(draft-step, decimal-leading-zero);
  position: absolute;
  top: 0.15rem;
  left: 0;
  width: 1.9rem;
  min-height: 1.9rem;
  padding-top: 0.45rem;
  border: 1px solid var(--border-strong);
  color: var(--gold);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-align: center;
}

.single-post__body .recipe-draft__reflection,
.single-post__body .margin-dispatch__closing {
  margin: 1rem 0 0 !important;
  padding-top: 0.85rem;
  border-top: 1px solid var(--border);
  font-family: "Spectral", Georgia, serif !important;
  font-style: italic;
  color: var(--cream-soft) !important;
}

.single-post__body .shelf-ticket {
  border-left: 4px solid var(--gold);
}

.single-post__body .shelf-ticket::before {
  content: "";
  position: absolute;
  top: 1.35rem;
  right: 1.35rem;
  width: 1.45rem;
  height: 1.45rem;
  border: 1px solid var(--gold);
  background:
    linear-gradient(var(--gold), var(--gold)) 50% 0 / 1px 100% no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 50% / 100% 1px no-repeat;
  opacity: 0.72;
  transform: rotate(45deg);
}

.single-post__body .shelf-ticket__source {
  margin: 0.3rem 0 1rem !important;
}

.single-post__body .margin-dispatch {
  border-left: 4px solid var(--gold);
  box-shadow: inset 0 1px 0 rgba(212, 180, 90, 0.3), 7px 8px 0 rgba(212, 180, 90, 0.13);
}

.single-post__body .margin-dispatch__date {
  margin: 0 0 1.1rem !important;
}

.single-post__body .archive-specimen {
  border-top: 3px solid transparent;
  border-image: var(--gold-metallic) 1;
}

.single-post__body .archive-specimen::before {
  content: "";
  position: absolute;
  top: 1.2rem;
  right: 1.25rem;
  width: 1.4rem;
  height: 1.4rem;
  border: 1px solid var(--border-strong);
  box-shadow: inset 0 0 0 3px var(--navy-mid);
  background: var(--gold);
}

.single-post__body .shelf-ticket__link a,
.single-post__body .archive-specimen__link a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 0.75rem;
  color: var(--gold) !important;
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.single-post__body .pastry-window a:focus-visible,
.single-post__body .recipe-draft a:focus-visible,
.single-post__body .shelf-ticket a:focus-visible,
.single-post__body .margin-dispatch a:focus-visible,
.single-post__body .archive-specimen a:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

html[data-theme="light"] .single-post__body .pastry-window,
html[data-theme="light"] .single-post__body .recipe-draft,
html[data-theme="light"] .single-post__body .shelf-ticket,
html[data-theme="light"] .single-post__body .margin-dispatch,
html[data-theme="light"] .single-post__body .archive-specimen {
  background: #FFFDF8;
  border-color: #8F6212;
  box-shadow: 7px 8px 0 rgba(143, 98, 18, 0.22);
}

html[data-theme="light"] .single-post__body .pastry-window p,
html[data-theme="light"] .single-post__body .recipe-draft p,
html[data-theme="light"] .single-post__body .shelf-ticket p,
html[data-theme="light"] .single-post__body .margin-dispatch p,
html[data-theme="light"] .single-post__body .archive-specimen p,
html[data-theme="light"] .single-post__body .recipe-draft li {
  color: #60483B !important;
}

html[data-theme="light"] .single-post__body .pastry-window::after,
html[data-theme="light"] .single-post__body .recipe-draft::after,
html[data-theme="light"] .single-post__body .shelf-ticket::after,
html[data-theme="light"] .single-post__body .margin-dispatch::after,
html[data-theme="light"] .single-post__body .archive-specimen::after {
  display: none;
}

html[data-theme="light"] .single-post__body .pastry-window::before {
  top: -0.36rem;
  height: 0.7rem;
  background:
    radial-gradient(circle at 0.55rem 0, #FFFDF8 0 0.37rem, transparent 0.39rem) repeat-x,
    var(--gold-metallic);
  background-size: 1.1rem 0.7rem, 100% 2px;
  background-position: 0 0, 0 0.54rem;
  background-repeat: repeat-x, no-repeat;
}

html[data-theme="light"] .single-post__body .pastry-window__title,
html[data-theme="light"] .single-post__body .recipe-draft__title,
html[data-theme="light"] .single-post__body .shelf-ticket__title,
html[data-theme="light"] .single-post__body .margin-dispatch__title,
html[data-theme="light"] .single-post__body .archive-specimen__title {
  color: #3A241B !important;
}

html[data-theme="light"] .single-post__body .pastry-window__date,
html[data-theme="light"] .single-post__body .recipe-draft__meta,
html[data-theme="light"] .single-post__body .shelf-ticket__byline,
html[data-theme="light"] .single-post__body .shelf-ticket__source,
html[data-theme="light"] .single-post__body .archive-specimen__meta,
html[data-theme="light"] .single-post__body .pastry-window__meta,
html[data-theme="light"] .single-post__body .shelf-ticket__tags,
html[data-theme="light"] .single-post__body .archive-specimen__tags {
  color: #60483B !important;
}

html[data-theme="dark"] .single-post__body .pastry-window,
html[data-theme="dark"] .single-post__body .recipe-draft,
html[data-theme="dark"] .single-post__body .shelf-ticket,
html[data-theme="dark"] .single-post__body .margin-dispatch,
html[data-theme="dark"] .single-post__body .archive-specimen {
  border-color: rgba(212, 180, 90, 0.5);
  box-shadow:
    inset 0 0 0 1px rgba(212, 180, 90, 0.14),
    7px 9px 0 rgba(212, 180, 90, 0.13),
    0 16px 28px rgba(0, 0, 0, 0.22);
}

html[data-theme="dark"] .single-post__body .pastry-window::after,
html[data-theme="dark"] .single-post__body .recipe-draft::after,
html[data-theme="dark"] .single-post__body .shelf-ticket::after,
html[data-theme="dark"] .single-post__body .margin-dispatch::after,
html[data-theme="dark"] .single-post__body .archive-specimen::after {
  opacity: 0.7;
}

@media (max-width: 640px) {
  .single-post__body .pastry-window,
  .single-post__body .recipe-draft,
  .single-post__body .shelf-ticket,
  .single-post__body .margin-dispatch,
  .single-post__body .archive-specimen {
    padding: 1.2rem 1rem;
  }

  .single-post__body .recipe-draft {
    padding-left: 1.45rem;
  }

  .single-post__body .pastry-window__title,
  .single-post__body .recipe-draft__title,
  .single-post__body .shelf-ticket__title,
  .single-post__body .margin-dispatch__title,
  .single-post__body .archive-specimen__title {
    font-size: 1.3rem !important;
  }
}

/* Figma box studies: native WordPress patterns with the same fixed geometry. */
.single-post__body .anna-pattern--figma-desk-card {
  margin-top: 2.5rem;
  border-radius: 4px;
  box-shadow: 8px 9px 0 var(--anna-accent-soft);
}

.single-post__body .anna-pattern--figma-desk-card .anna-pattern__figma-footer {
  gap: 0.8rem;
  margin-top: 1.25rem;
  padding-top: 0.9rem;
  border-top: 1px solid var(--anna-rule);
  color: var(--anna-copy);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.74rem;
  letter-spacing: 0.08em;
}

.single-post__body .anna-pattern--figma-takeaways {
  padding-left: clamp(1.5rem, 4vw, 2.4rem);
  border-left: 5px solid var(--anna-accent);
}

.single-post__body .anna-pattern--figma-takeaways .anna-pattern__figma-list {
  display: grid;
  gap: 0.75rem;
  margin: 1rem 0 0 !important;
  padding: 0 !important;
  list-style: none;
}

.single-post__body .anna-pattern--figma-takeaways .anna-pattern__figma-list li {
  position: relative;
  min-height: 2rem;
  padding: 0.35rem 0 0.35rem 1.65rem;
}

.single-post__body .anna-pattern--figma-takeaways .anna-pattern__figma-list li::before {
  content: "✦";
  position: absolute;
  top: 0.25rem;
  left: 0;
  color: var(--anna-accent);
  font-size: 1rem;
}

.single-post__body .anna-pattern--figma-method .anna-pattern__figma-steps {
  display: grid;
  gap: 0.75rem;
  margin-top: 1rem;
  counter-reset: figma-method;
}

.single-post__body .anna-pattern--figma-method .anna-pattern__figma-step {
  position: relative;
  min-width: 0;
  padding: 0.85rem 1rem 0.85rem 3.25rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
  counter-increment: figma-method;
}

.single-post__body .anna-pattern--figma-method .anna-pattern__figma-step::before {
  content: counter(figma-method, decimal-leading-zero);
  position: absolute;
  top: 0.9rem;
  left: 0.8rem;
  color: var(--anna-accent);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.single-post__body .anna-pattern--figma-method .anna-pattern__figma-step h4,
.single-post__body .anna-pattern--figma-method .anna-pattern__figma-step p:last-child { margin-bottom: 0; }

.single-post__body .anna-pattern--figma-report {
  overflow: hidden;
  border-radius: 4px;
  background-image: linear-gradient(135deg, transparent 0 70%, var(--anna-accent-soft) 70% 71%, transparent 71%);
}

.single-post__body .anna-pattern--figma-report .anna-pattern__figma-report-head {
  gap: 1rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--anna-rule);
}

.single-post__body .anna-pattern--figma-report .anna-pattern__figma-report-facts,
.single-post__body .anna-pattern--figma-report .anna-pattern__figma-report-grid {
  gap: 0.8rem;
  margin: 1rem 0;
}

.single-post__body .anna-pattern--figma-report .anna-pattern__figma-report-facts > .wp-block-column,
.single-post__body .anna-pattern--figma-report .anna-pattern__figma-report-grid > .wp-block-column {
  min-width: 0;
  padding: 0.85rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-pattern--figma-report .anna-pattern__figma-report-lede {
  margin: 1.1rem 0 !important;
  color: var(--anna-ink) !important;
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.18rem !important;
  font-style: italic;
  line-height: 1.5;
}

html[data-theme="light"] .single-post__body .anna-pattern--figma-desk-card { box-shadow: 8px 9px 0 rgba(143, 98, 18, 0.18); }
html[data-theme="dark"] .single-post__body .anna-pattern--figma-desk-card { box-shadow: inset 0 0 0 1px rgba(212, 180, 90, 0.14), 8px 9px 0 rgba(212, 180, 90, 0.14), 0 16px 28px rgba(0, 0, 0, 0.16); }

/* Pattern library 1.15: shared editorial surfaces and composer utilities. */
.single-post__body .anna-pattern,
.single-post__body .is-style-sticky-left,
.single-post__body .is-style-sticky-right,
.single-post__body .is-style-sticky-inline,
.single-post__body .is-style-paper-box,
.single-post__body .is-style-index-card,
.single-post__body .is-style-gilded-aside {
  --anna-accent: var(--gold);
  --anna-accent-soft: rgba(212, 180, 90, 0.12);
  --anna-paper: var(--navy-mid);
  --anna-paper-hi: var(--navy-hi);
  --anna-ink: var(--cream);
  --anna-copy: var(--cream-soft);
  --anna-rule: rgba(212, 180, 90, 0.38);
  position: relative;
  box-sizing: border-box;
  color: var(--anna-ink);
}

.single-post__body .anna-accent--rose {
  --anna-accent: #E28D98;
  --anna-accent-soft: rgba(226, 141, 152, 0.12);
}

.single-post__body .anna-accent--blue {
  --anna-accent: #7FB7D1;
  --anna-accent-soft: rgba(127, 183, 209, 0.12);
}

.single-post__body .anna-accent--sage {
  --anna-accent: #9CBD87;
  --anna-accent-soft: rgba(156, 189, 135, 0.12);
}

html[data-theme="light"] .single-post__body .anna-pattern,
html[data-theme="light"] .single-post__body .is-style-sticky-left,
html[data-theme="light"] .single-post__body .is-style-sticky-right,
html[data-theme="light"] .single-post__body .is-style-sticky-inline,
html[data-theme="light"] .single-post__body .is-style-paper-box,
html[data-theme="light"] .single-post__body .is-style-index-card,
html[data-theme="light"] .single-post__body .is-style-gilded-aside {
  --anna-paper: #FFFDF8;
  --anna-paper-hi: #FEFEFE;
  --anna-ink: #3A241B;
  --anna-copy: #60483B;
  --anna-rule: rgba(143, 98, 18, 0.34);
}

html[data-theme="light"] .single-post__body .anna-accent--rose {
  --anna-accent: #9E4654;
  --anna-accent-soft: rgba(158, 70, 84, 0.09);
}

html[data-theme="light"] .single-post__body .anna-accent--blue {
  --anna-accent: #356A86;
  --anna-accent-soft: rgba(53, 106, 134, 0.09);
}

html[data-theme="light"] .single-post__body .anna-accent--sage {
  --anna-accent: #587149;
  --anna-accent-soft: rgba(88, 113, 73, 0.1);
}

.single-post__body .anna-pattern {
  isolation: isolate;
  width: 100%;
  margin-top: 2rem;
  margin-bottom: 2.25rem;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper);
  box-shadow:
    inset 0 0 0 1px rgba(212, 180, 90, 0.08),
    7px 9px 0 rgba(212, 180, 90, 0.12),
    0 18px 30px rgba(0, 0, 0, 0.16);
}

html[data-theme="light"] .single-post__body .anna-pattern {
  box-shadow: 7px 9px 0 rgba(143, 98, 18, 0.16);
}

.single-post__body .anna-pattern::before,
.single-post__body .anna-pattern::after {
  content: "";
  position: absolute;
  z-index: 2;
  pointer-events: none;
}

.single-post__body .anna-pattern::before {
  top: -1px;
  left: 1.15rem;
  width: 4.5rem;
  height: 3px;
  background: var(--gold-metallic);
}

.single-post__body .anna-pattern::after {
  right: 0.45rem;
  bottom: 0.45rem;
  width: 1.35rem;
  height: 1.35rem;
  border-right: 2px solid var(--gold);
  border-bottom: 2px solid var(--gold);
  opacity: 0.72;
}

.single-post__body .anna-pattern p,
.single-post__body .anna-pattern li {
  color: var(--anna-copy) !important;
}

.single-post__body .anna-pattern h3,
.single-post__body .anna-pattern h4,
.single-post__body .anna-pattern strong {
  color: var(--anna-ink) !important;
  letter-spacing: 0;
}

.single-post__body .anna-pattern h3 {
  margin: 0 0 0.85rem;
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  line-height: 1.22;
}

.single-post__body .anna-pattern h4 {
  margin: 0 0 0.45rem;
  font-family: "Spectral", Georgia, serif;
  font-size: 1.05rem;
  line-height: 1.35;
}

.single-post__body .anna-pattern__label,
.single-post__body .anna-pattern__meta,
.single-post__body .anna-pattern__kicker,
.single-post__body .anna-pattern__number,
.single-post__body .anna-pattern__caption,
.single-post__body .anna-pattern__hint {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.76rem !important;
  line-height: 1.45;
}

.single-post__body .anna-pattern__label,
.single-post__body .anna-pattern__kicker,
.single-post__body .anna-pattern__number {
  margin: 0 0 0.55rem !important;
  color: var(--anna-accent) !important;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.single-post__body .anna-pattern__meta,
.single-post__body .anna-pattern__caption,
.single-post__body .anna-pattern__hint {
  color: var(--anna-copy) !important;
}

.single-post__body .anna-pattern__body,
.single-post__body .anna-pattern__synthesis,
.single-post__body .anna-pattern__reflection {
  min-width: 0;
}

.single-post__body .anna-pattern__panel,
.single-post__body .anna-pattern__source-card,
.single-post__body .anna-pattern__definition,
.single-post__body .anna-pattern__craft-card,
.single-post__body .anna-pattern__sense,
.single-post__body .anna-pattern__synthesis,
.single-post__body .anna-pattern__reflection {
  box-sizing: border-box;
  min-width: 0;
  padding: 1rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-pattern__grid,
.single-post__body .anna-pattern__comparison-grid,
.single-post__body .anna-pattern__record-grid,
.single-post__body .anna-pattern__contact-grid,
.single-post__body .anna-pattern__meta-grid,
.single-post__body .anna-pattern__decision-row {
  gap: 1rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.single-post__body .anna-pattern__grid--two {
  flex-wrap: wrap !important;
}

.single-post__body .anna-pattern__grid--two > .wp-block-column {
  flex-basis: calc(50% - 0.5rem) !important;
}

.single-post__body .anna-pattern__grid--four > .wp-block-column {
  min-width: 9rem;
}

.single-post__body .anna-pattern__card-grid {
  gap: 0.8rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.single-post__body .anna-pattern__field {
  margin-bottom: 0.75rem !important;
  padding-bottom: 0.65rem;
  border-bottom: 1px solid var(--anna-rule);
}

.single-post__body .anna-pattern__field strong {
  color: var(--anna-accent) !important;
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.76rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.single-post__body .anna-pattern__link a,
.single-post__body .anna-pattern__field a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--anna-accent) !important;
  font-family: "Barlow", system-ui, sans-serif;
  font-weight: 600;
}

.single-post__body .anna-pattern a:focus-visible,
.single-post__body .is-style-sticky-left a:focus-visible,
.single-post__body .is-style-sticky-right a:focus-visible,
.single-post__body .is-style-sticky-inline a:focus-visible,
.single-post__body .is-style-paper-box a:focus-visible,
.single-post__body .is-style-index-card a:focus-visible,
.single-post__body .is-style-gilded-aside a:focus-visible {
  outline: 2px solid var(--anna-accent);
  outline-offset: 3px;
}

/* Corner photos reserve a stable area only while an Image block is present. */
.single-post__body .has-corner-photo.photo-tr:has(.anna-pattern__corner-photo) {
  padding-right: clamp(10rem, 25vw, 13rem);
  min-height: 15rem;
}

.single-post__body .has-corner-photo.photo-bl:has(.anna-pattern__corner-photo) {
  padding-left: clamp(10rem, 25vw, 13rem);
  min-height: 15rem;
}

.single-post__body .anna-pattern__corner-photo {
  position: absolute;
  z-index: 3;
  width: 9rem;
  aspect-ratio: 1;
  margin: 0;
  padding: 0.4rem 0.4rem 1.25rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
  box-shadow: 4px 5px 0 var(--anna-accent-soft);
  transform: rotate(1.5deg);
}

.single-post__body .photo-tr .anna-pattern__corner-photo {
  top: 1.25rem;
  right: 1.25rem;
}

.single-post__body .photo-bl .anna-pattern__corner-photo {
  bottom: 1.25rem;
  left: 1.25rem;
  transform: rotate(-1.5deg);
}

.single-post__body .anna-pattern__corner-photo--portrait {
  width: 8rem;
  aspect-ratio: 4 / 5;
}

.single-post__body .anna-pattern__corner-photo--landscape {
  width: 10.5rem;
  aspect-ratio: 3 / 2;
}

.single-post__body .anna-pattern__corner-photo img,
.single-post__body .anna-pattern__contact-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-post__body .anna-pattern__corner-photo img:not([src]),
.single-post__body .anna-pattern__contact-photo img:not([src]) {
  display: none;
}

/* Distinct pattern details. */
.single-post__body .anna-pattern--postcard {
  background-image: linear-gradient(90deg, transparent 0 59%, var(--anna-rule) 59% calc(59% + 1px), transparent calc(59% + 1px));
}

.single-post__body .anna-pattern--correspondence {
  outline: 1px solid var(--anna-rule);
  outline-offset: -0.55rem;
}

.single-post__body .anna-pattern--correspondence .anna-pattern__letter-body {
  max-width: 42rem;
  margin-right: auto;
  margin-left: auto;
}

.single-post__body .anna-pattern__postscript {
  margin-top: 1.2rem !important;
  padding-top: 0.8rem;
  border-top: 1px dashed var(--anna-rule);
}

.single-post__body .anna-pattern--telegram {
  border-style: dashed;
  background-image: repeating-linear-gradient(0deg, transparent 0 2rem, var(--anna-accent-soft) 2rem calc(2rem + 1px));
}

.single-post__body .anna-pattern--telegram .anna-pattern__number {
  display: grid;
  width: 4.3rem;
  min-height: 4.3rem;
  margin: 0 !important;
  place-items: center;
  border: 1px solid var(--anna-accent);
  border-radius: 50%;
}

.single-post__body .anna-pattern--weather .anna-pattern__panel:nth-child(1),
.single-post__body .anna-pattern--senses .anna-pattern__sense:nth-child(1) { border-top: 3px solid var(--anna-accent); }
.single-post__body .anna-pattern--weather .anna-pattern__panel:nth-child(2),
.single-post__body .anna-pattern--senses .anna-pattern__sense:nth-child(2) { border-top: 3px solid var(--gold); }
.single-post__body .anna-pattern--weather .anna-pattern__panel:nth-child(3),
.single-post__body .anna-pattern--senses .anna-pattern__sense:nth-child(3) { border-top: 3px solid #7FB7D1; }
.single-post__body .anna-pattern--senses .anna-pattern__sense:nth-child(4) { border-top: 3px solid #E28D98; }
.single-post__body .anna-pattern--senses .anna-pattern__sense:nth-child(5) { border-top: 3px solid #9CBD87; }

.single-post__body .anna-pattern--docket,
.single-post__body .anna-pattern--accession {
  border-left: 5px solid var(--anna-accent);
}

.single-post__body .anna-pattern--colophon {
  border-right: 0;
  border-left: 0;
  box-shadow: none;
}

.single-post__body .anna-pattern__rule {
  width: 100%;
  height: 3px;
  margin: 0 0 1.3rem;
  background: var(--gold-metallic);
}

.single-post__body .anna-pattern--bibliography .anna-pattern__source-card + .anna-pattern__source-card {
  margin-top: 0.85rem;
  width: calc(100% - 0.4rem);
  margin-left: 0.4rem;
}

.single-post__body .anna-pattern--comparison .anna-pattern__comparison-grid,
.single-post__body .anna-pattern--revision-comparison .anna-pattern__comparison-grid,
.single-post__body .anna-pattern--decision .anna-pattern__comparison-grid {
  position: relative;
}

.single-post__body .anna-pattern--comparison .anna-pattern__comparison-grid::after,
.single-post__body .anna-pattern--revision-comparison .anna-pattern__comparison-grid::after {
  content: "";
  position: absolute;
  top: 12%;
  bottom: 12%;
  left: 50%;
  width: 3px;
  background: var(--gold-metallic);
  transform: translateX(-50%);
}

.single-post__body .anna-pattern--subject-file::before {
  width: 7rem;
  height: 1.5rem;
  background: var(--anna-accent);
  clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
}

.single-post__body .anna-pattern--glossary .anna-pattern__definition {
  display: grid;
  grid-template-columns: minmax(8rem, 0.35fr) 1fr;
  gap: 1rem;
  align-items: baseline;
}

.single-post__body .anna-pattern--glossary .anna-pattern__definition + .anna-pattern__definition {
  margin-top: 0.6rem;
}

.single-post__body .anna-pattern--draft-anatomy .anna-pattern__number {
  font-size: 1.35rem !important;
}

.single-post__body .anna-pattern--revision-comparison .anna-pattern__panel--before {
  border-style: dashed;
}

.single-post__body .anna-pattern--revision-comparison .anna-pattern__panel--after,
.single-post__body .anna-pattern--timeline .is-current {
  box-shadow: inset 4px 0 0 var(--anna-accent);
}

.single-post__body .anna-pattern__timeline-list {
  position: relative;
  padding-left: 2rem;
}

.single-post__body .anna-pattern__timeline-list::before {
  content: "";
  position: absolute;
  top: 0.5rem;
  bottom: 0.5rem;
  left: 0.55rem;
  width: 2px;
  background: var(--gold-metallic);
}

.single-post__body .anna-pattern__milestone {
  position: relative;
  padding: 0.8rem 1rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-pattern__milestone + .anna-pattern__milestone {
  margin-top: 0.75rem;
}

.single-post__body .anna-pattern__milestone::before {
  content: "";
  position: absolute;
  top: 1.1rem;
  left: -1.85rem;
  width: 0.8rem;
  height: 0.8rem;
  border: 2px solid var(--anna-accent);
  border-radius: 50%;
  background: var(--anna-paper);
}

.single-post__body .anna-pattern--weekly .anna-pattern__panel,
.single-post__body .anna-pattern--victories .anna-pattern__reflection {
  background-image: repeating-linear-gradient(0deg, transparent 0 1.7rem, var(--anna-accent-soft) 1.7rem calc(1.7rem + 1px));
}

.single-post__body .anna-pattern--ticket .anna-pattern__ticket-stub {
  margin-bottom: 1.2rem;
  padding: 1rem;
  border: 1px dashed var(--anna-accent);
  background: var(--anna-accent-soft);
}

.single-post__body .anna-pattern--pressed-flower {
  border-radius: 45% 1px 1px;
}

.single-post__body .anna-pattern__contact-frame {
  min-width: 0;
  padding: 0.45rem 0.45rem 1rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper-hi);
}

.single-post__body .anna-pattern__contact-photo {
  width: 100%;
  aspect-ratio: 4 / 5;
  margin: 0 0 0.6rem;
  background: var(--anna-accent-soft);
}

.single-post__body .anna-pattern--map-pin::before {
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50% 50% 50% 0;
  background: var(--anna-accent);
  transform: rotate(-45deg);
}

.single-post__body .anna-pattern--envelope {
  padding-top: 3rem;
  background-image: linear-gradient(155deg, transparent 0 18%, var(--anna-rule) calc(18% + 1px), transparent calc(18% + 2px));
}

.single-post__body .anna-pattern--figma-report {
  background-image: linear-gradient(135deg, transparent 0 70%, var(--anna-accent-soft) 70% 71%, transparent 71%);
}

/* Registered Group styles and utility patterns. */
.single-post__body .is-style-sticky-left,
.single-post__body .is-style-sticky-right,
.single-post__body .is-style-sticky-inline {
  width: min(100%, 19rem);
  margin-top: 1.5rem;
  margin-bottom: 1.75rem;
  padding: 1.1rem 1.15rem 1.2rem;
  border: 1px solid var(--anna-accent);
  background: color-mix(in srgb, var(--anna-paper) 88%, var(--anna-accent) 12%);
  box-shadow: 5px 6px 0 var(--anna-accent-soft);
}

.single-post__body .is-style-sticky-left { margin-right: auto; margin-left: 0; transform: rotate(-0.6deg); }
.single-post__body .is-style-sticky-right { margin-right: 0; margin-left: auto; transform: rotate(0.6deg); }
.single-post__body .is-style-sticky-inline { margin-right: auto; margin-left: auto; }

/* A Group style can be applied to an entire pattern in Gutenberg. Keep those
 * patterns full-size; sticky alignment is reserved for compact utility notes. */
.single-post__body .anna-pattern:is(.is-style-sticky-left, .is-style-sticky-right, .is-style-sticky-inline) {
  float: none;
  clear: both;
  width: 100%;
  margin: 2rem auto 2.25rem;
  transform: none;
}

.single-post__body .is-style-sticky-left::before,
.single-post__body .is-style-sticky-right::before,
.single-post__body .is-style-sticky-inline::before {
  content: "";
  position: absolute;
  top: -0.42rem;
  left: calc(50% - 1.7rem);
  width: 3.4rem;
  height: 0.72rem;
  background: var(--gold-metallic);
  opacity: 0.78;
}

.single-post__body .is-style-paper-box,
.single-post__body .is-style-index-card,
.single-post__body .is-style-gilded-aside {
  width: 100%;
  margin-top: 1.5rem;
  margin-bottom: 1.75rem;
  padding: 1.2rem 1.3rem;
  border: 1px solid var(--anna-rule);
  background: var(--anna-paper);
}

.single-post__body .is-style-paper-box {
  background-image: repeating-linear-gradient(0deg, transparent 0 1.72rem, var(--anna-rule) 1.72rem calc(1.72rem + 1px));
}

.single-post__body .is-style-index-card {
  border-left: 4px solid var(--anna-accent);
  box-shadow: 4px 5px 0 var(--anna-accent-soft);
}

.single-post__body .is-style-gilded-aside {
  border-image: var(--gold-metallic) 1;
  box-shadow: inset 0 0 0 4px var(--anna-paper), inset 0 0 0 5px var(--anna-rule);
}

.single-post__body ul.is-style-checklist,
.single-post__body ul.is-style-starred-list,
.single-post__body ul.is-style-ruled-list,
.single-post__body ol.is-style-numbered-ledger {
  padding-left: 0;
  list-style: none;
}

.single-post__body ul.is-style-checklist li,
.single-post__body ul.is-style-starred-list li,
.single-post__body ol.is-style-numbered-ledger li {
  position: relative;
  padding-left: 2rem;
}

.single-post__body ul.is-style-checklist li::before {
  content: "";
  position: absolute;
  top: 0.48rem;
  left: 0;
  width: 0.95rem;
  height: 0.95rem;
  border: 1px solid var(--anna-accent, var(--gold));
  background: var(--anna-paper-hi, var(--navy-hi));
}

.single-post__body ul.is-style-starred-list li::before {
  content: "\2726";
  position: absolute;
  top: 0;
  left: 0.15rem;
  color: var(--anna-accent, var(--gold));
}

.single-post__body ol.is-style-numbered-ledger {
  counter-reset: anna-ledger;
}

.single-post__body ol.is-style-numbered-ledger li {
  min-height: 2.2rem;
  counter-increment: anna-ledger;
}

.single-post__body ol.is-style-numbered-ledger li::before {
  content: counter(anna-ledger, decimal-leading-zero);
  position: absolute;
  top: 0.05rem;
  left: 0;
  color: var(--anna-accent, var(--gold));
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
}

.single-post__body ul.is-style-ruled-list li {
  padding: 0.45rem 0;
  border-bottom: 1px solid var(--anna-rule, rgba(212, 180, 90, 0.3));
}

@media (max-width: 700px) {
  .single-post__body .anna-pattern {
    padding: 1.2rem 1rem;
  }

  .single-post__body .anna-pattern__grid,
  .single-post__body .anna-pattern__comparison-grid,
  .single-post__body .anna-pattern__record-grid,
  .single-post__body .anna-pattern__contact-grid,
  .single-post__body .anna-pattern__meta-grid,
  .single-post__body .anna-pattern__telegram-head,
  .single-post__body .anna-pattern__decision-row,
  .single-post__body .anna-utility-columns {
    flex-wrap: wrap !important;
  }

  .single-post__body .anna-pattern__grid--two > .wp-block-column,
  .single-post__body .anna-pattern__grid--three > .wp-block-column,
  .single-post__body .anna-pattern__grid--four > .wp-block-column,
  .single-post__body .anna-pattern__comparison-grid > .wp-block-column,
  .single-post__body .anna-pattern__record-grid > .wp-block-column,
  .single-post__body .anna-pattern__contact-grid > .wp-block-column,
  .single-post__body .anna-pattern__meta-grid > .wp-block-column,
  .single-post__body .anna-pattern__telegram-head > .wp-block-column,
  .single-post__body .anna-pattern__decision-row > .wp-block-column,
  .single-post__body .anna-utility-columns > .wp-block-column {
    flex-basis: 100% !important;
  }

  .single-post__body .has-corner-photo.photo-tr:has(.anna-pattern__corner-photo),
  .single-post__body .has-corner-photo.photo-bl:has(.anna-pattern__corner-photo) {
    min-height: 0;
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .single-post__body .anna-pattern__corner-photo {
    position: relative;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: min(10rem, 55vw);
    margin: 0 auto 1rem;
  }

  .single-post__body .anna-pattern--comparison .anna-pattern__comparison-grid::after,
  .single-post__body .anna-pattern--revision-comparison .anna-pattern__comparison-grid::after {
    display: none;
  }

  .single-post__body .anna-pattern--glossary .anna-pattern__definition {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }

  .single-post__body .anna-pattern--postcard {
    background-image: none;
  }

  .single-post__body .anna-pattern--bibliography .anna-pattern__source-card + .anna-pattern__source-card {
    width: 100%;
    margin-left: 0;
  }

  .single-post__body .is-style-sticky-left,
  .single-post__body .is-style-sticky-right,
  .single-post__body .is-style-sticky-inline {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    transform: none;
  }
}

/* Digital journal posts are opt-in through the post presentation control. */
.single-post--journal .single-post__body {
  position: relative;
  isolation: isolate;
  max-width: 54rem;
  margin-right: auto;
  margin-left: auto;
  padding: clamp(2.5rem, 6vw, 4rem) clamp(1.35rem, 5vw, 3.5rem);
  border: 1px solid var(--border-strong);
  background-color: var(--navy-mid);
  background-image:
    linear-gradient(90deg, transparent 0 2.6rem, rgba(212, 180, 90, 0.22) 2.6rem 2.68rem, transparent 2.68rem),
    repeating-linear-gradient(0deg, transparent 0 1.72rem, rgba(212, 180, 90, 0.12) 1.72rem 1.78rem);
  box-shadow:
    inset 0 0 0 1px rgba(212, 180, 90, 0.12),
    9px 11px 0 rgba(212, 180, 90, 0.13),
    0 20px 34px rgba(0, 0, 0, 0.22);
}

.single-post--journal .single-post__body::before,
.single-post--journal .single-post__body::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.single-post--journal .single-post__body::before {
  top: -0.62rem;
  right: clamp(1.25rem, 8vw, 4.75rem);
  width: 5.75rem;
  height: 1.15rem;
  border: 1px solid var(--gold);
  background: var(--gold-metallic);
  opacity: 0.86;
  transform: rotate(1.5deg);
}

.single-post--journal .single-post__body::after {
  inset: 7px;
  z-index: -1;
  opacity: 0.68;
  background:
    linear-gradient(var(--gold), var(--gold)) 0 0 / 17px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 0 / 1px 17px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 0 / 17px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 0 / 1px 17px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 100% / 17px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 0 100% / 1px 17px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 100% / 17px 1px no-repeat,
    linear-gradient(var(--gold), var(--gold)) 100% 100% / 1px 17px no-repeat;
}

.single-post--journal .single-post__body > * {
  position: relative;
  z-index: 1;
}

.single-post--journal .single-post__figure {
  position: relative;
  margin-bottom: 2rem;
  padding: 0.55rem;
  border: 1px solid var(--border-strong);
  background: var(--navy-hi);
  box-shadow: 5px 6px 0 rgba(212, 180, 90, 0.13);
}

.single-post--journal .single-post__figure img {
  border: 1px solid var(--border);
}

html[data-theme="light"] .single-post--journal .single-post__body {
  border-color: #8F6212;
  background-color: #FFFDF8;
  background-image:
    linear-gradient(90deg, transparent 0 2.6rem, rgba(143, 98, 18, 0.22) 2.6rem 2.68rem, transparent 2.68rem),
    repeating-linear-gradient(0deg, transparent 0 1.72rem, rgba(143, 98, 18, 0.12) 1.72rem 1.78rem);
  box-shadow: 9px 11px 0 rgba(143, 98, 18, 0.22);
}

html[data-theme="light"] .single-post--journal .single-post__body::after {
  opacity: 0.48;
}

html[data-theme="light"] .single-post--journal .single-post__figure {
  border-color: #8F6212;
  background: #FEFEFE;
  box-shadow: 5px 6px 0 rgba(143, 98, 18, 0.18);
}

/* Journal and scrapbook blocks. */
.single-post__body .journal-observation,
.single-post__body .commonplace-clipping,
.single-post__body .scrapbook-spread,
.single-post__body .revision-ledger,
.single-post__body .research-trail {
  position: relative;
  isolation: isolate;
  max-width: 100%;
  margin: 2rem 0 2.4rem;
  padding: 1.45rem 1.5rem;
  overflow: visible;
  border: 1px solid var(--border-strong);
  background: var(--navy-mid);
  box-shadow: 7px 8px 0 rgba(212, 180, 90, 0.15);
}

.single-post__body .journal-observation p,
.single-post__body .commonplace-clipping p,
.single-post__body .scrapbook-spread p,
.single-post__body .revision-ledger p,
.single-post__body .research-trail li {
  color: var(--cream-mid) !important;
}

.single-post__body .journal-observation__label,
.single-post__body .commonplace-clipping__label,
.single-post__body .scrapbook-spread__label,
.single-post__body .revision-ledger__label,
.single-post__body .research-trail__label,
.single-post__body .journal-observation__fact-label,
.single-post__body .commonplace-clipping__provenance,
.single-post__body .revision-ledger__date {
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.45;
  text-transform: uppercase;
}

.single-post__body .journal-observation__label,
.single-post__body .commonplace-clipping__label,
.single-post__body .scrapbook-spread__label,
.single-post__body .revision-ledger__label,
.single-post__body .research-trail__label {
  margin: 0 0 0.65rem !important;
  color: var(--gold) !important;
}

.single-post__body .journal-observation__title,
.single-post__body .scrapbook-spread__title,
.single-post__body .revision-ledger__title,
.single-post__body .research-trail__title {
  margin: 0 0 0.55rem !important;
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.45rem !important;
  font-weight: 600;
  line-height: 1.22;
  color: var(--cream) !important;
}

.single-post__body .journal-observation::before,
.single-post__body .commonplace-clipping::before,
.single-post__body .scrapbook-spread::before,
.single-post__body .revision-ledger::before,
.single-post__body .research-trail::before {
  content: "";
  position: absolute;
  top: -0.5rem;
  left: 1.3rem;
  width: 4.8rem;
  height: 0.92rem;
  border: 1px solid var(--gold);
  background: var(--gold-metallic);
  opacity: 0.85;
  transform: rotate(-1deg);
}

.single-post__body .journal-observation__facts,
.single-post__body .revision-ledger__grid,
.single-post__body .scrapbook-spread__grid {
  gap: 0.75rem;
  margin: 1.15rem 0 !important;
}

.single-post__body .journal-observation__facts > .wp-block-column,
.single-post__body .revision-ledger__grid > .wp-block-column {
  min-width: 0;
  padding: 0.75rem;
  border: 1px solid var(--border);
  background: rgba(10, 21, 36, 0.22);
}

.single-post__body .journal-observation__fact-label {
  margin: 0 0 0.32rem !important;
  color: var(--gold) !important;
}

.single-post__body .journal-observation__fact-value,
.single-post__body .revision-ledger__date,
.single-post__body .commonplace-clipping__provenance,
.single-post__body .scrapbook-spread__caption {
  margin: 0 !important;
  color: var(--cream-dim) !important;
}

.single-post__body .journal-observation__notes {
  margin: 1.05rem 0 0 !important;
}

.single-post__body .commonplace-clipping {
  padding-top: 1.7rem;
  border-left: 4px solid var(--gold);
}

.single-post__body .commonplace-clipping__quote {
  margin: 0.25rem 0 1rem !important;
  padding: 0 !important;
  border: 0 !important;
}

.single-post__body .commonplace-clipping__quote p {
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.3rem !important;
  font-style: italic;
  line-height: 1.48;
  color: var(--cream) !important;
}

.single-post__body .commonplace-clipping__response {
  margin: 1rem 0 0 !important;
  padding-top: 0.9rem;
  border-top: 1px solid var(--border);
}

.single-post__body .scrapbook-spread {
  padding: 1rem;
}

.single-post__body .scrapbook-spread__media {
  position: relative;
  min-width: 0;
  padding: 0.55rem;
  border: 1px solid var(--border-strong);
  background: var(--navy-hi);
}

.single-post__body .scrapbook-spread__media::before {
  content: "";
  position: absolute;
  top: -0.45rem;
  left: 28%;
  width: 4rem;
  height: 0.85rem;
  border: 1px solid var(--gold);
  background: var(--gold-metallic);
  opacity: 0.78;
  transform: rotate(2deg);
}

.single-post__body .scrapbook-spread__media .wp-block-image {
  margin: 0;
}

.single-post__body .scrapbook-spread__media img {
  width: 100%;
  height: auto;
  border: 1px solid var(--border);
}

.single-post__body .scrapbook-spread__annotation {
  min-width: 0;
  padding: 0.6rem 0.45rem;
}

.single-post__body .scrapbook-spread__caption {
  margin-top: 1rem !important;
  font-family: "Spectral", Georgia, serif !important;
  font-style: italic;
}

.single-post__body .revision-ledger__date {
  margin: 0 0 1rem !important;
  color: var(--cream-dim) !important;
}

.single-post__body .revision-ledger__heading {
  margin: 0 0 0.55rem !important;
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.08rem !important;
  font-weight: 600;
  color: var(--cream) !important;
}

.single-post__body .revision-ledger__grid p:last-child {
  margin-bottom: 0 !important;
}

.single-post__body .research-trail {
  padding-left: 1.75rem;
}

.single-post__body .research-trail::before {
  top: 1.1rem;
  bottom: 1.1rem;
  left: 0.55rem;
  width: 3px;
  height: auto;
  transform: none;
}

.single-post__body .research-trail__list {
  margin: 1.1rem 0 0.9rem !important;
  padding: 0 !important;
  list-style: none;
  counter-reset: research-trail;
}

.single-post__body .research-trail__list li {
  position: relative;
  min-height: 2.2rem;
  margin: 0.7rem 0 !important;
  padding: 0.35rem 0 0.35rem 2.7rem;
  counter-increment: research-trail;
}

.single-post__body .research-trail__list li::before {
  content: counter(research-trail, decimal-leading-zero);
  position: absolute;
  top: 0.16rem;
  left: 0;
  width: 1.95rem;
  min-height: 1.95rem;
  padding-top: 0.45rem;
  border: 1px solid var(--border-strong);
  color: var(--gold);
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-align: center;
}

.single-post__body .research-trail__list strong {
  color: var(--cream) !important;
}

.single-post__body .scrapbook-spread__link a,
.single-post__body .research-trail__link a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 0.4rem;
  color: var(--gold) !important;
  font-family: "Barlow", system-ui, sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.single-post__body .journal-observation a:focus-visible,
.single-post__body .commonplace-clipping a:focus-visible,
.single-post__body .scrapbook-spread a:focus-visible,
.single-post__body .revision-ledger a:focus-visible,
.single-post__body .research-trail a:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

html[data-theme="light"] .single-post__body .journal-observation,
html[data-theme="light"] .single-post__body .commonplace-clipping,
html[data-theme="light"] .single-post__body .scrapbook-spread,
html[data-theme="light"] .single-post__body .revision-ledger,
html[data-theme="light"] .single-post__body .research-trail {
  border-color: #8F6212;
  background: #FFFDF8;
  box-shadow: 7px 8px 0 rgba(143, 98, 18, 0.22);
}

html[data-theme="light"] .single-post__body .journal-observation p,
html[data-theme="light"] .single-post__body .commonplace-clipping p,
html[data-theme="light"] .single-post__body .scrapbook-spread p,
html[data-theme="light"] .single-post__body .revision-ledger p,
html[data-theme="light"] .single-post__body .research-trail li {
  color: #60483B !important;
}

html[data-theme="light"] .single-post__body .journal-observation__title,
html[data-theme="light"] .single-post__body .scrapbook-spread__title,
html[data-theme="light"] .single-post__body .revision-ledger__title,
html[data-theme="light"] .single-post__body .research-trail__title,
html[data-theme="light"] .single-post__body .commonplace-clipping__quote p,
html[data-theme="light"] .single-post__body .revision-ledger__heading,
html[data-theme="light"] .single-post__body .research-trail__list strong {
  color: #3A241B !important;
}

html[data-theme="light"] .single-post__body .journal-observation__facts > .wp-block-column,
html[data-theme="light"] .single-post__body .revision-ledger__grid > .wp-block-column,
html[data-theme="light"] .single-post__body .scrapbook-spread__media {
  border-color: rgba(143, 98, 18, 0.46);
  background: #FEFEFE;
}

html[data-theme="light"] .single-post__body .journal-observation__fact-value,
html[data-theme="light"] .single-post__body .revision-ledger__date,
html[data-theme="light"] .single-post__body .commonplace-clipping__provenance,
html[data-theme="light"] .single-post__body .scrapbook-spread__caption {
  color: #60483B !important;
}

html[data-theme="dark"] .single-post__body .journal-observation,
html[data-theme="dark"] .single-post__body .commonplace-clipping,
html[data-theme="dark"] .single-post__body .scrapbook-spread,
html[data-theme="dark"] .single-post__body .revision-ledger,
html[data-theme="dark"] .single-post__body .research-trail {
  box-shadow:
    inset 0 0 0 1px rgba(212, 180, 90, 0.14),
    7px 9px 0 rgba(212, 180, 90, 0.13),
    0 16px 28px rgba(0, 0, 0, 0.22);
}

@media (max-width: 640px) {
  .single-post--journal .single-post__body {
    padding: 2.4rem 1rem 1.5rem 1.4rem;
    background-image:
      linear-gradient(90deg, transparent 0 1.4rem, rgba(212, 180, 90, 0.2) 1.4rem 1.46rem, transparent 1.46rem),
      repeating-linear-gradient(0deg, transparent 0 1.72rem, rgba(212, 180, 90, 0.12) 1.72rem 1.78rem);
  }

  html[data-theme="light"] .single-post--journal .single-post__body {
    background-image:
      linear-gradient(90deg, transparent 0 1.4rem, rgba(143, 98, 18, 0.2) 1.4rem 1.46rem, transparent 1.46rem),
      repeating-linear-gradient(0deg, transparent 0 1.72rem, rgba(143, 98, 18, 0.12) 1.72rem 1.78rem);
  }

  .single-post__body .journal-observation,
  .single-post__body .commonplace-clipping,
  .single-post__body .scrapbook-spread,
  .single-post__body .revision-ledger,
  .single-post__body .research-trail {
    padding: 1.2rem 1rem;
  }

  .single-post__body .research-trail {
    padding-left: 1.45rem;
  }

  .single-post__body .journal-observation__facts > .wp-block-column,
  .single-post__body .revision-ledger__grid > .wp-block-column,
  .single-post__body .scrapbook-spread__grid > .wp-block-column {
    flex-basis: 100% !important;
  }

  .single-post__body .journal-observation__title,
  .single-post__body .scrapbook-spread__title,
  .single-post__body .revision-ledger__title,
  .single-post__body .research-trail__title {
    font-size: 1.3rem !important;
  }
}

/* Pattern library 1.20: Astrologer field-note system. */
.single-post__body .anna-pattern--astrologer {
  --anna-paper: var(--ag-bg-card);
  --anna-paper-hi: var(--ag-bg-inner);
  --anna-ink: var(--ag-text);
  --anna-copy: var(--ag-text);
  --anna-rule: var(--ag-border);
  --anna-accent: var(--ag-accent);
  --anna-accent-soft: var(--ag-accent-soft);
  overflow: visible;
  border-color: var(--ag-border);
  background-color: var(--ag-bg-card);
  color: var(--ag-text);
  box-shadow: var(--ag-shadow), 7px 9px 0 var(--ag-accent-soft);
}

html[data-theme="light"] .single-post__body .anna-pattern--astrologer {
  --anna-paper: var(--ag-bg-card);
  --anna-paper-hi: var(--ag-bg-inner);
  --anna-ink: var(--ag-text);
  --anna-copy: var(--ag-text);
  --anna-rule: var(--ag-border);
  border-color: var(--ag-border);
  background-color: var(--ag-bg-card);
  color: var(--ag-text);
  box-shadow: var(--ag-shadow), 7px 9px 0 var(--ag-accent-soft);
}

body.dark-mode .single-post__body .anna-pattern--astrologer,
body.is-dark-theme .single-post__body .anna-pattern--astrologer {
  --anna-paper: var(--ag-bg-card);
  --anna-paper-hi: var(--ag-bg-inner);
  --anna-ink: var(--ag-text);
  --anna-copy: var(--ag-text);
  --anna-rule: var(--ag-border);
  border-color: var(--ag-border);
  background-color: var(--ag-bg-card);
  color: var(--ag-text);
}

.single-post__body .anna-pattern--astrologer.anna-accent--gold {
  --ag-accent: var(--ag-accent-gold);
  --ag-accent-ink: var(--ag-accent-gold-text);
  --ag-accent-soft: var(--ag-accent-gold-soft);
  --anna-accent: var(--ag-accent-gold);
  --anna-accent-soft: var(--ag-accent-gold-soft);
}

.single-post__body .anna-pattern--astrologer.anna-accent--sage {
  --ag-accent: var(--ag-accent-sage);
  --ag-accent-ink: var(--ag-accent-sage-text);
  --ag-accent-soft: var(--ag-accent-sage-soft);
  --anna-accent: var(--ag-accent-sage);
  --anna-accent-soft: var(--ag-accent-sage-soft);
}

.single-post__body .anna-pattern--astrologer.anna-accent--rose {
  --ag-accent: var(--ag-accent-rose);
  --ag-accent-ink: var(--ag-accent-rose-text);
  --ag-accent-soft: var(--ag-accent-rose-soft);
  --anna-accent: var(--ag-accent-rose);
  --anna-accent-soft: var(--ag-accent-rose-soft);
}

.single-post__body .anna-pattern--astrologer.anna-accent--blue {
  --ag-accent: var(--ag-accent-blue);
  --ag-accent-ink: var(--ag-accent-blue-text);
  --ag-accent-soft: var(--ag-accent-blue-soft);
  --anna-accent: var(--ag-accent-blue);
  --anna-accent-soft: var(--ag-accent-blue-soft);
}

.single-post__body .anna-pattern--astrologer .anna-pattern__label,
.single-post__body .anna-pattern--astrologer .anna-pattern__kicker,
.single-post__body .anna-pattern--astrologer .anna-pattern__number {
  color: var(--ag-accent-ink) !important;
}

.single-post__body .anna-pattern--astrologer .anna-pattern__title {
  padding-bottom: 0.65rem;
  border-bottom: 2px solid var(--ag-accent);
}

.single-post__body .anna-pattern--astrologer .anna-pattern__panel,
.single-post__body .anna-pattern--astrologer .anna-pattern__synthesis,
.single-post__body .anna-pattern--astrologer .anna-pattern__graph-note {
  border-color: var(--ag-border-subtle);
  background-color: var(--ag-bg-inner);
}

.single-post__body .anna-pattern.has-tape-grid::before,
.single-post__body .anna-pattern.has-tape-kraft::before,
.single-post__body .anna-pattern.has-tape-striped::before,
.single-post__body .anna-pattern.has-tape-corner-crooked::before {
  content: "";
  position: absolute;
  z-index: 7;
  top: -0.7rem;
  left: 50%;
  width: clamp(7.5rem, 24vw, 11rem);
  height: 1.45rem;
  border: 0;
  background: var(--ag-tape-kraft);
  box-shadow: 0 3px 6px rgba(20, 14, 8, 0.2);
  clip-path: polygon(0 16%, 3% 0, 7% 12%, 11% 2%, 16% 14%, 22% 3%, 29% 13%, 36% 1%, 43% 11%, 51% 2%, 59% 13%, 67% 1%, 75% 12%, 83% 2%, 91% 13%, 97% 1%, 100% 17%, 98% 84%, 94% 100%, 87% 88%, 79% 99%, 70% 87%, 61% 100%, 52% 88%, 43% 99%, 34% 87%, 25% 100%, 16% 88%, 8% 99%, 2% 83%);
  opacity: 0.9;
  transform: translateX(-50%) rotate(-1.2deg);
  pointer-events: none;
}

.single-post__body .anna-pattern.has-tape-grid::before {
  background-color: var(--ag-tape-paper);
  background-image: linear-gradient(rgba(52, 81, 61, 0.34) 1px, transparent 1px), linear-gradient(90deg, rgba(52, 81, 61, 0.34) 1px, transparent 1px);
  background-size: 0.35rem 0.35rem;
}

.single-post__body .anna-pattern.has-tape-striped::before {
  background: repeating-linear-gradient(-45deg, color-mix(in srgb, var(--ag-accent) 72%, transparent) 0 0.34rem, var(--ag-tape-paper) 0.34rem 0.68rem);
}

.single-post__body .anna-pattern.has-tape-corner-crooked {
  transform: rotate(-0.85deg);
  transform-origin: 82% 0;
}

.single-post__body .anna-pattern.has-tape-corner-crooked::before {
  top: -0.15rem;
  right: -1.6rem;
  left: auto;
  width: clamp(6rem, 18vw, 8rem);
  transform: rotate(36deg);
}

.single-post__body .anna-pattern.has-pin-brass::before {
  content: "";
  position: absolute;
  z-index: 8;
  top: -0.6rem;
  left: 50%;
  width: 1.15rem;
  height: 1.15rem;
  border: 1px solid #6e4c0f;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 28%, #fff5ca 0 8%, #e0bd58 32%, #9b6c18 70%, #4b330d 100%);
  box-shadow: 0 0.35rem 0.4rem rgba(0, 0, 0, 0.36), inset 0 1px 1px rgba(255, 255, 255, 0.68);
  transform: translateX(-50%);
  pointer-events: none;
}

.single-post__body .anna-pattern.has-clip::before,
.single-post__body .anna-pattern.has-clip::after {
  content: "";
  position: absolute;
  z-index: 8;
  border: 2px solid #c5a456;
  background: transparent;
  pointer-events: none;
}

.single-post__body .anna-pattern.has-clip::before {
  top: -0.7rem;
  right: 1.8rem;
  left: auto;
  width: 1rem;
  height: 2.8rem;
  border-radius: 0.65rem;
  box-shadow: 1px 3px 4px rgba(0, 0, 0, 0.24);
  transform: rotate(6deg);
}

.single-post__body .anna-pattern.has-clip::after {
  right: 2.02rem;
  bottom: auto;
  top: -0.25rem;
  width: 0.55rem;
  height: 1.75rem;
  border-bottom: 0;
  border-radius: 0.4rem 0.4rem 0 0;
  transform: rotate(6deg);
}

.single-post__body .anna-pattern.has-seal-botanical::after,
.single-post__body .anna-pattern.has-seal-rose::after {
  content: "✦";
  position: absolute;
  z-index: 8;
  right: 1.2rem;
  bottom: -1rem;
  display: grid;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid rgba(20, 14, 8, 0.48);
  border-radius: 46% 54% 51% 49% / 52% 47% 53% 48%;
  place-items: center;
  color: #f6efe2;
  background: radial-gradient(circle at 34% 30%, #6e9274, #34513d 72%, #22372a);
  box-shadow: 0 0.35rem 0.75rem rgba(0, 0, 0, 0.3), inset 0 1px 2px rgba(255, 255, 255, 0.25);
  pointer-events: none;
}

.single-post__body .anna-pattern.has-seal-rose::after {
  background: radial-gradient(circle at 34% 30%, #a85b4d, #733126 72%, #461c16);
}

.single-post__body .anna-pattern__scorecard,
.single-post__body .anna-pattern__specimen-layout,
.single-post__body .anna-pattern__marginalia-grid,
.single-post__body .anna-pattern__task-grid,
.single-post__body .anna-pattern__stamp-layout,
.single-post__body .anna-pattern__gallery-grid {
  display: grid !important;
  gap: 1rem;
  min-width: 0;
}

.single-post__body .anna-pattern__scorecard { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.single-post__body .anna-pattern__specimen-layout { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr); }
.single-post__body .anna-pattern__marginalia-grid { grid-template-columns: minmax(0, 2fr) minmax(12rem, 0.82fr); }
.single-post__body .anna-pattern__task-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.single-post__body .anna-pattern__stamp-layout { grid-template-columns: minmax(8rem, 0.55fr) minmax(0, 1fr); }
.single-post__body .anna-pattern__gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; }

.single-post__body .anna-pattern__scorecard > .wp-block-column,
.single-post__body .anna-pattern__specimen-layout > .wp-block-column,
.single-post__body .anna-pattern__marginalia-grid > .wp-block-column,
.single-post__body .anna-pattern__task-grid > .wp-block-column,
.single-post__body .anna-pattern__stamp-layout > .wp-block-column,
.single-post__body .anna-pattern__gallery-grid > .wp-block-column {
  min-width: 0;
  width: auto;
  flex-basis: auto !important;
}

.single-post__body .anna-pattern__score-item {
  min-height: 6.2rem;
  padding: 0.9rem;
  border: 1px solid var(--ag-border-subtle);
  background: var(--ag-bg-inner);
  text-align: center;
}

.single-post__body .anna-pattern__score-label,
.single-post__body .anna-pattern__score-value {
  margin: 0 !important;
}

.single-post__body .anna-pattern__score-label {
  color: var(--ag-text-muted) !important;
  font-family: "Barlow", system-ui, sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.single-post__body .anna-pattern__score-value {
  color: var(--ag-accent-ink) !important;
  font-family: "Spectral", Georgia, serif !important;
  font-size: 1.65rem !important;
  font-weight: 700;
}

.single-post__body .anna-pattern__format-tracker,
.single-post__body .anna-pattern__ledger-footer {
  margin-top: 1rem;
  padding: 0.9rem 1rem;
  border: 1px dashed var(--ag-border);
  background: var(--ag-accent-soft);
}

.single-post__body .anna-pattern__format-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1.35rem;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}

.single-post__body .anna-pattern__format-list li::before {
  content: "□";
  margin-right: 0.45rem;
  color: var(--ag-accent-ink);
}

.single-post__body .anna-pattern__specimen-mount,
.single-post__body .anna-pattern__stamp-image {
  min-height: 14rem;
  background-image: linear-gradient(135deg, transparent 49.5%, var(--ag-border-subtle) 50%, transparent 50.5%);
}

.single-post__body .anna-pattern__specimen-photo,
.single-post__body .anna-pattern__gallery-image {
  width: 100%;
  margin: 0;
}

.single-post__body .anna-pattern__specimen-photo img,
.single-post__body .anna-pattern__gallery-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-post__body .anna-pattern__taxonomy-row {
  display: grid;
  grid-template-columns: minmax(5.5rem, 0.38fr) minmax(0, 1fr);
  gap: 0.75rem;
  margin: 0 !important;
  padding: 0.62rem 0;
  border-bottom: 1px solid var(--ag-border-subtle);
}

.single-post__body .anna-pattern__taxonomy-row span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.single-post__body .anna-pattern__checklist {
  margin: 0.7rem 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.single-post__body .anna-pattern__checklist li {
  position: relative;
  padding-left: 1.65rem;
}

.single-post__body .anna-pattern__checklist li::before {
  content: "□";
  position: absolute;
  left: 0.1rem;
  color: var(--ag-accent-ink);
}

.single-post__body .anna-pattern__margin-column {
  min-width: 0;
  padding-left: 1rem;
  border-left: 1px dashed var(--ag-border);
}

.single-post__body .anna-pattern--art-deco {
  padding: clamp(1.35rem, 4vw, 2.6rem);
  background-image: linear-gradient(135deg, var(--ag-accent-soft), transparent 30%), linear-gradient(315deg, var(--ag-accent-soft), transparent 30%);
}

.single-post__body .anna-pattern--art-deco::before,
.single-post__body .anna-pattern--art-deco::after {
  width: 3.25rem;
  height: 3.25rem;
  background: none;
  opacity: 1;
}

.single-post__body .anna-pattern--art-deco::before {
  top: 0.7rem;
  left: 0.7rem;
  border-top: 3px double var(--ag-accent);
  border-left: 3px double var(--ag-accent);
}

.single-post__body .anna-pattern--art-deco::after {
  right: 0.7rem;
  bottom: 0.7rem;
  border-right: 3px double var(--ag-accent);
  border-bottom: 3px double var(--ag-accent);
}

.single-post__body .anna-pattern__deco-inset {
  padding: clamp(1rem, 3vw, 2rem);
  border: 1px solid var(--ag-accent);
  outline: 1px solid var(--ag-border-subtle);
  outline-offset: -0.45rem;
}

.single-post__body .anna-pattern--stamp-card {
  border: 0.35rem dotted var(--ag-accent);
  border-radius: 0;
  box-shadow: var(--ag-shadow);
}

.single-post__body .anna-pattern__stamp-inset {
  position: relative;
  padding: 1rem;
  border: 2px solid var(--ag-border);
}

.single-post__body .anna-pattern__stamp-denomination {
  float: right;
  display: grid;
  width: 3.2rem;
  height: 3.2rem;
  margin: 0 0 0.6rem 0.8rem !important;
  border: 1px solid var(--ag-accent);
  border-radius: 50%;
  place-items: center;
  color: var(--ag-accent-ink) !important;
  font-family: "Barlow", system-ui, sans-serif !important;
  font-weight: 700;
}

.single-post__body .anna-pattern--celestial-banner {
  overflow: hidden;
  padding-right: clamp(2rem, 7vw, 5rem);
  padding-left: clamp(2rem, 7vw, 5rem);
  background-color: var(--ag-bg-card);
  background-image: radial-gradient(circle at 50% 130%, transparent 0 29%, var(--ag-border-subtle) 29.2% 29.6%, transparent 29.8% 41%, var(--ag-border-subtle) 41.2% 41.6%, transparent 41.8%), radial-gradient(circle at 16% 24%, var(--ag-accent) 0 0.14rem, transparent 0.16rem), radial-gradient(circle at 83% 68%, var(--ag-accent) 0 0.12rem, transparent 0.14rem);
  clip-path: polygon(3% 0, 97% 0, 100% 50%, 97% 100%, 3% 100%, 0 50%);
}

.single-post__body .anna-pattern--celestial-banner .anna-pattern__title {
  border-bottom: 0;
}

.single-post__body .anna-pattern__gallery-frame {
  display: grid;
  min-height: 12rem;
  padding: 0.5rem;
  border: 0.35rem double var(--ag-accent);
  background: var(--ag-bg-inner);
  box-shadow: 0 0.45rem 0.8rem rgba(0, 0, 0, 0.2);
  place-items: center;
}

.single-post__body .anna-pattern__gallery-frame--oval {
  aspect-ratio: 4 / 5;
  border-radius: 50%;
  overflow: hidden;
}

.single-post__body .anna-pattern__gallery-frame--portrait {
  aspect-ratio: 4 / 5;
  transform: translateY(-0.5rem) rotate(1deg);
}

.single-post__body .anna-pattern__gallery-frame .wp-block-image,
.single-post__body .anna-pattern__gallery-frame img {
  width: 100%;
  height: 100%;
}

.single-post__body .anna-pattern--layered-pad {
  padding-left: clamp(2.2rem, 7vw, 4rem);
  background-color: var(--ag-bg-card);
  background-image: radial-gradient(circle at 0.65rem 1rem, transparent 0 0.2rem, var(--ag-border) 0.22rem 0.27rem, transparent 0.29rem), linear-gradient(var(--ag-border-subtle) 1px, transparent 1px), linear-gradient(90deg, var(--ag-border-subtle) 1px, transparent 1px);
  background-size: 100% 2rem, 1.25rem 1.25rem, 1.25rem 1.25rem;
  box-shadow: var(--ag-shadow), 0.45rem 0.55rem 0 var(--ag-accent-soft), 0.9rem 1rem 0 color-mix(in srgb, var(--ag-border) 38%, transparent);
}

.single-post__body .anna-pattern__graph-note {
  margin: 1rem 0;
  padding: 0.9rem 1rem;
  border-left: 3px solid var(--ag-accent);
}

.single-post__body .anna-pattern__comparison-grid,
.single-post__body .anna-field-guide__key-row {
  min-width: 0;
}

.single-post__body .anna-pattern__comparison-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.single-post__body .anna-pattern__comparison-grid > .wp-block-column {
  min-width: 0;
  flex-basis: auto !important;
}

.single-post__body .anna-field-guide__key-row {
  display: grid !important;
  grid-template-columns: minmax(2.25rem, auto) minmax(0, 1fr) !important;
  align-items: start;
}

.single-post__body .anna-field-guide__key-row > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 680px) {
  .single-post__body .anna-pattern__scorecard,
  .single-post__body .anna-pattern__specimen-layout,
  .single-post__body .anna-pattern__marginalia-grid,
  .single-post__body .anna-pattern__task-grid,
  .single-post__body .anna-pattern__stamp-layout,
  .single-post__body .anna-pattern__gallery-grid,
  .single-post__body .anna-pattern__comparison-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .single-post__body .anna-pattern__scorecard > .wp-block-column,
  .single-post__body .anna-pattern__specimen-layout > .wp-block-column,
  .single-post__body .anna-pattern__marginalia-grid > .wp-block-column,
  .single-post__body .anna-pattern__task-grid > .wp-block-column,
  .single-post__body .anna-pattern__stamp-layout > .wp-block-column,
  .single-post__body .anna-pattern__gallery-grid > .wp-block-column,
  .single-post__body .anna-pattern__comparison-grid > .wp-block-column {
    width: 100% !important;
    flex-basis: 100% !important;
  }

  .single-post__body .anna-pattern__margin-column {
    padding-top: 1rem;
    padding-left: 0;
    border-top: 1px dashed var(--ag-border);
    border-left: 0;
  }

  .single-post__body .anna-pattern__gallery-frame {
    width: min(14rem, 78vw);
    margin-right: auto;
    margin-left: auto;
  }

  .single-post__body .anna-pattern__gallery-frame--portrait,
  .single-post__body .anna-pattern.has-tape-corner-crooked {
    transform: none;
  }

  .single-post__body .anna-pattern--celestial-banner {
    padding-right: 1.2rem;
    padding-left: 1.2rem;
    clip-path: none;
  }

  .single-post__body .anna-pattern--layered-pad {
    padding-left: 2.2rem;
  }

  .single-post__body .anna-field-guide__key-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0.65rem;
  }
}

/* Keep the mobile reading scale authoritative after pattern-specific rules. */
@media (max-width: 767px) {
  .single-post__body p,
  .single-post__body li {
    font-size: 1.075rem;
    line-height: 1.72;
  }

  .single-post__body p.is-style-drop-cap-archival::first-letter,
  .single-post__body p.is-style-drop-cap-fantasy::first-letter {
    font-size: 3.1rem;
    margin-right: 0.15em;
  }
}
