/* Copyright © 2026 Christopher Snow. */
/* Shared visual roles for the opening book chapters. */
.book-chapter .intro { padding-bottom:20px; margin-bottom:24px; }
.chapter-opening-code { margin:16px 0 24px; padding:20px; background:var(--accent-soft); color:var(--accent); border:0; border-left:4px solid var(--accent); border-radius:0 6px 6px 0; white-space:pre-wrap; overflow-wrap:anywhere; font:600 18px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace; }
.chapter-opening-code code { font:inherit; }
.chapter-browser-note { color:var(--muted); font-size:14px; line-height:1.65; margin:24px 0; }
.book-chapter .hello-section,.book-chapter .book-section { border-top:1px solid var(--line); margin:40px 0; padding-top:28px; scroll-margin-top:90px; }
.book-chapter .hello-section h2,.book-chapter .book-section h2 { font-size:clamp(25px,3vw,32px); }
.book-chapter .hello-concept { font-size:inherit; }
.book-chapter .hello-note,.book-chapter .book-note { font-size:14px; }

.book-chapter { --cuda-ink:#245b91; --cuda-soft:#e9f0f8; }
:root[data-theme="dark"] .book-chapter { --cuda-ink:#b2d3ff; --cuda-soft:#20354c; }
.chapter-code-label { margin:16px 0 0; padding:8px 16px; font-size:14px; font-weight:650; }
.chapter-code-panel[data-language="pytorch"]>.chapter-code-label { color:var(--accent); background:var(--accent-soft); border-left:4px solid var(--accent); }
.chapter-code-panel[data-language="cuda"]>.chapter-code-label { color:var(--cuda-ink); background:var(--cuda-soft); border-left:4px solid var(--cuda-ink); }
.book-chapter .chapter-code-panel>pre { margin-top:0; border-radius:0 0 6px 0; }
.book-chapter .chapter-code-panel[data-language="cuda"]>pre { border:0; border-left:4px solid var(--cuda-ink); background:var(--cuda-soft); color:var(--cuda-ink); padding:16px; font:16px/1.7 ui-monospace,monospace; white-space:pre-wrap; overflow-wrap:anywhere; }
.chapter-code-panel>pre code { font:inherit; }

.chapter-code-panel.is-selected-thread { outline:2px solid var(--accent); outline-offset:2px; border-radius:6px; }

.chapter-definition { margin:20px 0; padding:16px 20px; border-left:4px solid var(--muted); border-radius:0 6px 6px 0; background:var(--soft); color:var(--ink); }
.chapter-definition-label { margin:0 0 10px; color:var(--muted); font-size:14px; font-weight:650; }
.chapter-definition dl { margin:0; }
.chapter-definition dt { margin:14px 0 2px; font-weight:700; }
.chapter-definition dt:first-child { margin-top:0; }
.chapter-definition dfn { font-style:normal; }
.chapter-definition dd { margin:0; line-height:1.65; }

.chapter-task { margin:20px 0; padding:16px 20px; border:1px solid var(--accent); border-radius:6px; background:var(--accent-soft); }
.chapter-task-label { display:flex; gap:10px; color:var(--accent); font-weight:700; }
.chapter-task p { margin:0; }
.chapter-task .chapter-task-label { margin-bottom:8px; }
