/* L02–L05 listening companions: topic-specific residuals over frozen v2.3. */
.b3-intro__actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.b3-intro__actions .btn{min-height:44px;text-align:center}
.b3-intro .btn--secondary{background:#fff;color:#22334a;border-color:#fff}
.b3-article .b3-section{border-block-start:1px solid var(--line-gold,#d8d6cf);padding-block-start:.2rem}
.b3-article .b3-section h2{margin-block-start:2.6rem}
.b3-article .b3-points{margin:0 0 1.3rem;padding-inline-start:1.35rem;color:var(--ink,#22334a);line-height:1.8}
.b3-article .b3-points li{margin-block:.4rem}
.b3-article .b3-depth{background:#f4f2ec;border-inline-start:3px solid #c18725;padding:.8rem 1rem;color:#22334a}
.b3-article .b3-related{font-size:.9rem;border-block-start:1px solid var(--line-gold,#d8d6cf);padding-top:.6rem}
.b3-article .b3-related a{text-decoration:underline;text-underline-offset:3px}
.b3-method{margin:1.5rem 0;padding:1rem;display:grid;grid-template-columns:minmax(0,220px) 1fr;gap:1rem;align-items:center;background:#f5f3ed;border:1px solid #d8d6cf}
.b3-method img{max-width:100%;height:auto}
.b3-method figcaption{display:grid;gap:.55rem;font-size:.88rem;line-height:1.7;color:#22334a}
.b3-method__labels{display:flex;flex-wrap:wrap;gap:.35rem}
.b3-method__labels span{display:inline-block;padding:.15rem .45rem;background:#fff;border:1px solid #d8d6cf;font-size:.75rem;line-height:1.6}
.b3-example{margin:1.2rem 0;padding:.8rem 1rem;background:#f5f3ed;border-inline-start:3px solid #c18725;break-inside:avoid;color:#22334a}
.b3-example>strong{display:block;font-size:.84rem}
.b3-example p,.b3-article .b3-example p{margin:.35rem 0;color:#22334a;font-size:.94rem;line-height:1.65}
.b3-example__instruction,.b3-example__passage{font-family:var(--font-en,Arial,sans-serif);text-align:left}
.b3-example__passage{border-block-end:1px solid #d8d6cf;padding-block-end:.4rem}
.b3-example__answer{font-weight:700}
.b3-companion{max-width:760px;margin:1rem auto;padding:1rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem;border:1px solid #d8d6cf;background:#fff;color:#22334a;line-height:1.7}
.b3-companion .btn{min-height:44px}
.b3-nojs{padding:1rem;background:#fff;color:#22334a}
.b3-ebook .ebook-page .b3-example{font-size:.9rem}
.b3-ebook .ebook-page .b3-example p{font-size:.88rem}
.b3-ebook .lfig .b3-method__labels{display:flex;gap:.25rem;margin-top:.35rem}
.b3-ebook .lfig .b3-method__labels span{font-size:.7rem}
.b3-ebook .practice-stimuli p{font-family:var(--font-en,Arial,sans-serif);direction:ltr;text-align:left}
.b3-ebook .practice-sheet textarea{font-size:16px}
@media(max-width:560px){.b3-intro__actions .btn{width:100%}.b3-method{grid-template-columns:1fr}.b3-method img{margin:auto}}
@media print{.b3-example,.b3-method{break-inside:avoid}.b3-ebook .b3-example{padding:.5rem .7rem}.b3-ebook .b3-example p{margin:.22rem 0}.b3-ebook .practice-stimuli{gap:.2rem}.b3-ebook .practice-stimuli p{padding:.1rem .35rem}.b3-ebook .lfig .b3-method__labels span{padding:.05rem .3rem}.b3-ebook .practice-sheet textarea{font-size:10pt}}
