/* Books section (/books, /books/{slug}). Uses the main.css tokens; logical properties keep it RTL-safe. */
.tp-crumbs{ display:flex; flex-wrap:wrap; gap:8px; font-size:.85rem; color:var(--text-muted); margin-block-end:var(--space-500); }
.tp-crumbs a{ color:var(--text-muted); text-decoration:underline; text-underline-offset:3px; }
.tp-crumbs a:hover{ color:var(--accent); }

.tp-books-hero__role{ margin-block-start:var(--space-200); color:var(--accent); font-weight:500; }
.tp-books-hero__role a{ color:inherit; }
.tp-books-hero__actions{ display:flex; flex-wrap:wrap; gap:var(--space-300); margin-block-start:var(--space-700); }
.tp-books-hero{ background:linear-gradient(180deg,var(--bg-secondary),var(--bg-primary)); }

.tp-books-prose{ max-width:760px; }
.tp-books-prose p{ line-height:2; color:var(--text-muted); margin-block:var(--space-400) 0; }
.tp-books-prose h3{ margin-block:var(--space-700) var(--space-300); font-size:1.15rem; }
.tp-books-prose a{ color:var(--accent); text-underline-offset:3px; }
.tp-books-note{ color:var(--text-muted); margin-block:var(--space-300) var(--space-600); max-width:70ch; line-height:1.9; }

.tp-books-list{ list-style:none; padding:0; margin:var(--space-400) 0 0; display:grid; gap:var(--space-300); }
.tp-books-list li{ position:relative; padding-inline-start:var(--space-600); color:var(--text-muted); line-height:1.9; }
.tp-books-list li::before{ content:""; position:absolute; inset-inline-start:0; inset-block-start:.8em; width:8px; height:8px; border-radius:50%; background:var(--accent-strong); }

.tp-books-expertise{ list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:var(--space-500); }
.tp-books-expertise__item{ background:var(--bg-card); border:1px solid var(--border-soft); border-radius:var(--radius-300); padding:var(--space-600); }
.tp-books-expertise__item h3{ font-size:1.05rem; margin:0 0 var(--space-200); color:var(--accent); }
.tp-books-expertise__item p{ margin:0; color:var(--text-muted); line-height:1.9; font-size:.95rem; }

.tp-books-grid{ list-style:none; padding:0; margin:var(--space-700) 0 0; display:grid; gap:var(--space-800); }
.tp-book-card{ display:grid; grid-template-columns:minmax(0,240px) 1fr; gap:var(--space-800); align-items:start; background:var(--bg-card); border:1px solid var(--border-soft); border-radius:var(--radius-400); padding:var(--space-800); box-shadow:var(--shadow-card); }
.tp-book-card__cover{ display:block; }
.tp-book-cover{ display:block; }
.tp-book-cover img{ display:block; width:100%; height:auto; border-radius:var(--radius-100); box-shadow:var(--elevation-3); background:var(--bg-deep); }
.tp-book-card__title{ font-size:1.5rem; margin:0; }
.tp-book-card__title a{ color:inherit; text-decoration:none; }
.tp-book-card__title a:hover{ color:var(--accent); }
.tp-book-card__en{ margin:var(--space-100) 0 0; color:var(--accent); font-size:.95rem; text-align:start; }
.tp-book-card__sub{ margin:var(--space-200) 0 0; font-weight:500; }
.tp-book-card__body p{ color:var(--text-muted); line-height:1.9; }
.tp-book-card__body .tp-tag-list{ margin-block:var(--space-300); }
.tp-book-card__aud{ font-size:.9rem; }
.tp-book-card__actions{ display:flex; flex-wrap:wrap; gap:var(--space-300); margin-block-start:var(--space-500); }

.tp-book-hero__grid{ display:grid; grid-template-columns:minmax(0,340px) 1fr; gap:var(--space-1000); align-items:center; }
.tp-book-hero__cover{ max-width:340px; }
.tp-book-hero__en{ margin:var(--space-200) 0 0; color:var(--accent); font-size:1.1rem; text-align:start; }
.tp-book-hero__sub{ margin-block-start:var(--space-400); color:var(--text-muted); line-height:1.9; max-width:60ch; }

.tp-book-two{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-1000); }

.tp-book-toc{ display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:var(--space-600); margin-block-start:var(--space-700); }
.tp-book-toc__part{ background:var(--bg-card); border:1px solid var(--border-soft); border-radius:var(--radius-300); padding:var(--space-600); }
.tp-book-toc__part h3{ font-size:1rem; margin:0 0 var(--space-300); color:var(--accent); }
.tp-book-toc__part ol, .tp-book-toc__part ul{ margin:0; padding-inline-start:var(--space-600); color:var(--text-muted); line-height:1.9; }
.tp-book-toc__part li{ margin-block-end:var(--space-100); }

.tp-book-files{ list-style:none; padding:0; margin:var(--space-400) 0 0; }
.tp-book-files li{ display:flex; flex-wrap:wrap; gap:var(--space-400); align-items:center; justify-content:space-between; background:var(--bg-card); border:1px solid var(--border-strong); border-radius:var(--radius-300); padding:var(--space-500); }
.tp-book-files strong{ display:block; }
.tp-book-files span{ color:var(--text-muted); font-size:.85rem; }
.tp-book-details{ margin:var(--space-400) 0 0; display:grid; gap:var(--space-300); }
.tp-book-details div{ display:flex; gap:var(--space-400); border-block-end:1px solid var(--border-soft); padding-block-end:var(--space-300); }
.tp-book-details dt{ min-width:9rem; color:var(--text-muted); }
.tp-book-details dd{ margin:0; }

@media (max-width:860px){
	.tp-book-card{ grid-template-columns:1fr; padding:var(--space-600); }
	.tp-book-card__cover{ max-width:220px; }
	.tp-book-hero__grid, .tp-book-two{ grid-template-columns:1fr; gap:var(--space-800); }
	.tp-book-hero__cover{ max-width:240px; }
	.tp-book-details div{ flex-direction:column; gap:var(--space-100); }
}
