/* Article-specific layout; typography and navigation inherit main.css. */
.article-body{max-width:900px;padding-top:26px;padding-bottom:50px;font-size:1rem;line-height:1.95}.article-body section{padding:22px 0}.article-body h2{text-align:left;font-size:1.6rem;line-height:1.6;margin:20px 0;padding-bottom:14px;border-bottom:2px solid var(--light-gray)}.article-body h2::after{display:none}.article-body h3{margin:25px 0 12px}.article-body p{margin:14px 0}.article-body ul,.article-body ol{padding-left:1.6em}.article-body a{overflow-wrap:anywhere}.article-body .table-scroll{margin:22px 0}.article-body table{width:100%;min-width:560px;border-collapse:collapse;background:var(--white)}.article-body th,.article-body td{padding:14px;border:1px solid var(--light-gray);text-align:left;vertical-align:top}.article-body th{background:var(--bg)}.breadcrumb{font-size:.85rem;margin:20px 0}.toc{padding:24px;border:1px solid var(--light-gray);border-radius:16px;background:var(--white);margin:24px 0}.code{font-family:Consolas,monospace;white-space:pre;overflow-x:auto;background:#172033;color:#edf2ff;border-radius:12px;padding:22px;line-height:1.8;font-size:.9rem}.code-label,.book-meta{font-size:.85rem;color:var(--gray)}.cta,.book-item{padding:26px;border:1px solid var(--light-gray);border-radius:16px;background:var(--white);margin:22px 0}.book-disclosure{padding:16px;background:var(--bg);border-left:4px solid var(--primary)}.book-item{display:flex;gap:20px}.book-index{color:var(--primary);font-size:1.5rem;font-weight:700}.book-copy{min-width:0}.book-copy h3{margin-top:0}.book-link,.button{display:inline-block;background:var(--primary);color:white;padding:13px 20px;border-radius:12px;text-decoration:none;font-weight:700;line-height:1.7}.book-link:hover,.button:hover{background:var(--primary-dark);color:white}.author{padding:25px 0;border-top:1px solid var(--light-gray);margin-top:25px}.note{font-size:.9rem;color:var(--gray)}section[id]{scroll-margin-top:100px}@media(max-width:640px){.article-body h2{font-size:1.3rem}.book-item{padding:18px;gap:12px}.code{font-size:.8rem}.article-body{padding-top:16px}.book-link{width:100%;text-align:center}}

/* Book number and optional cover layout */
.book-index{flex:0 0 2ch;white-space:nowrap;line-height:1.5;align-self:flex-start}.book-cover{display:block;width:140px;max-width:100%;height:auto;object-fit:contain}.book-cover-link{flex:0 0 140px;align-self:flex-start}.book-copy{flex:1;min-width:0}@media(max-width:640px){.book-item{flex-wrap:wrap}.book-cover-link{flex-basis:100px}.book-cover{width:100px}.book-copy{flex-basis:calc(100% - 150px)}}

/* Book covers and two merchant links */
.book-item{display:grid;grid-template-columns:2ch 150px minmax(0,1fr);gap:20px;align-items:start}.book-cover-link{display:block;min-width:0}.book-cover{width:150px;height:210px;max-width:100%;object-fit:contain;object-position:top center}.book-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.book-actions .book-link{margin:0;text-align:center}.book-link-rakuten{background:#bf0000}.book-link-rakuten:hover{background:#930000}@media(max-width:640px){.book-item{grid-template-columns:2ch minmax(0,1fr);gap:14px}.book-cover-link{grid-column:2;grid-row:1}.book-cover{width:120px;height:168px}.book-copy{grid-column:1 / -1}.book-actions{flex-direction:column}.book-actions .book-link{width:100%;box-sizing:border-box}}

/* Explicit book layout and button separation */
.article-body .book-item{grid-template-columns:48px 150px minmax(0,1fr);text-align:left}
.article-body .book-index{display:block;width:48px;min-width:48px;white-space:nowrap;word-break:normal;overflow-wrap:normal;writing-mode:horizontal-tb;font-variant-numeric:tabular-nums}
.article-body .book-actions{display:flex;flex-wrap:wrap;column-gap:24px;row-gap:16px;justify-content:flex-start}
.article-body .book-actions .book-link{display:inline-flex;align-items:center;justify-content:center;margin:0;min-height:48px}
.article-body .book-actions .book-link-rakuten{background:#bf0000;color:#fff}
@media(max-width:640px){.article-body .book-item{grid-template-columns:48px minmax(0,1fr)}.article-body .book-actions{flex-direction:column;gap:16px}.article-body .book-actions .book-link{width:100%}}
