/* Book article table: preserve legibility on narrow screens with horizontal scrolling. */
.hero-art { background: none; }
.book-cover-image { border: 1px solid #e5e0d5; box-shadow: 0 12px 24px #302d321c; }
.table-title { margin-top: 28px; font-size: 18px; }
.table-scroll-hint { margin: 0 0 8px; color: var(--muted); font-size: 13px; }
.finance-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; border: 1px solid var(--line); border-radius: 10px; background: #fffdfa; }
.finance-table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 14px; line-height: 1.75; }
.finance-table caption { padding: 12px; color: var(--muted); text-align: left; }
.finance-table th, .finance-table td { padding: 13px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.finance-table thead { background: #eee6d7; }
.finance-table thead th { color: var(--plum-deep); }
.finance-table tbody th { width: 155px; color: var(--plum-deep); background: #faf6ef; }
.table-note { padding: 14px 16px; border-left: 3px solid #ad8c62; background: #f3eee4; font-size: 14px; }
.sources li + li { margin-top: 10px; }
.sources li strong { display: block; color: var(--ink); }
.sources li p { margin: 3px 0 0; }
@media (max-width: 720px) {
  .hero-art { padding: 6px 0 14px; }
  .book-cover-image { width: min(100%, 250px); }
  .finance-table-scroll { max-width: calc(100vw - 32px); }
  .finance-table { min-width: 720px; font-size: 13px; }
}
/* Purchase links for the 2023 edition; the displayed cover matches the linked book. */
.purchase-panel { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 22px; align-items: center; margin: 18px 0 24px; }
.purchase-cover { display: block; width: 96px; height: auto; box-shadow: 0 5px 12px #4b3d2a20; }
.purchase-content { min-width: 0; }
.purchase-book-title { margin: 0 0 14px; font-size: 16px; font-weight: 700; line-height: 1.7; }
.purchase-book-title span { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; font-weight: 400; }
.book-purchase .purchase-scope-note { margin: 0 0 14px; color: var(--muted); font-size: 13px; line-height: 1.85; }
@media (max-width: 540px) {
  .purchase-panel { grid-template-columns: 72px minmax(0, 1fr); gap: 15px; align-items: start; }
  .purchase-cover { width: 72px; }
  .purchase-book-title { font-size: 14px; }
}
/* Book supplied diagrams: preserve the full image on desktop and mobile. */
.finance-diagram { max-width: 850px; margin: 24px auto; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fffdfa; }
.finance-diagram-link { display: block; text-align: center; }
.finance-diagram img { display: block; width: 100%; max-width: 850px; height: auto; max-height: none; margin: 0 auto; object-fit: contain; }
.finance-diagram figcaption { margin: 10px 2px 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.finance-diagram-zoom { display: inline-block; margin-left: 10px; font-weight: 700; }
.finance-subheading { margin: 26px 0 10px; font-size: 18px; line-height: 1.5; }
@media (max-width: 720px) { .finance-diagram { margin: 18px 0; padding: 8px; } .finance-diagram figcaption { font-size: 12px; } .finance-diagram-zoom { margin: 6px 0 0; } }
