.cb-lesson { --cb-ink:#153f46; --cb-teal:#006c68; --cb-line:#d5e4e5; color:var(--cb-ink); font:400 1rem/1.75 system-ui,sans-serif; max-width:1100px; margin:auto; }
.cb-lesson * { box-sizing:border-box; }
.cb-lesson h2 { font-size:clamp(1.65rem,3.5vw,2.5rem); line-height:1.2; letter-spacing:-.035em; margin:.5rem 0 1rem; }
.cb-lesson h3 { font-size:1.3rem; line-height:1.4; margin:0 0 .8rem; }
.cb-lesson h4 { font-size:1.05rem; margin:.5rem 0; }
.cb-lesson p { margin:.8rem 0; }
.cb-lesson section { margin:2rem 0; }
.cb-intro { background:#edf8f5; border:1px solid var(--cb-line); border-radius:22px; padding:clamp(1rem,3vw,2rem); }
.cb-eyebrow,.cb-tag { color:#00635d; font-size:.78rem; font-weight:750; letter-spacing:.07em; text-transform:uppercase; }
.cb-takeaway { background:#fff7df; border-left:4px solid #d99b1c; padding:1rem 1.2rem; border-radius:0 10px 10px 0; }
.cb-figure { margin:1.4rem 0; border:1px solid var(--cb-line); border-radius:18px; overflow:hidden; background:#fff; }
.cb-figure img { display:block; width:100%; height:auto; }
.cb-figure figcaption { padding:.8rem 1.1rem; font-size:.86rem; line-height:1.55; color:#46626a; border-top:1px solid var(--cb-line); background:#f5f9fa; }
.cb-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.cb-card { border:1px solid var(--cb-line); border-radius:16px; padding:1.2rem; background:#fff; }
.cb-reveal { border:1px solid #b5d8d0; border-radius:12px; margin:1rem 0; background:#f6fcfa; }
.cb-reveal summary { cursor:pointer; padding:1rem; font-weight:700; color:#005e58; }
.cb-reveal>div { padding:0 1rem 1rem; }
.cb-lesson :focus-visible { outline:3px solid #0b7978; outline-offset:3px; }
.cb-definitions dt { font-weight:750; margin-top:1rem; }.cb-definitions dd { margin:.3rem 0 1rem; }
.cb-lesson label { display:block; font-weight:650; margin-bottom:.5rem; }
.cb-lesson textarea { width:100%; border:1px solid #78989c; border-radius:10px; padding:1rem; font:inherit; background:#fff; color:#153f46; resize:vertical; }
.cb-note { font-size:.85rem; color:#526b70; }
.cb-lesson blockquote { background:#fff5df; margin:1rem 0; padding:1rem; border-left:4px solid #c58a16; }
.cb-table-wrap { overflow:auto; }.cb-lesson table { border-collapse:collapse; width:100%; min-width:560px; font-size:.92rem; }
.cb-lesson th,.cb-lesson td { border:1px solid var(--cb-line); padding:.8rem; text-align:left; vertical-align:top; }.cb-lesson th { background:#edf8f5; }
.cb-lesson caption { text-align:left; padding:.5rem 0; font-weight:650; }
.cb-sources { border-top:1px solid var(--cb-line); padding-top:1.5rem; margin-top:2rem; font-size:.9rem; }.cb-sources a { color:#00635d; text-decoration:underline; }.cb-sources li { margin:.5rem 0; }
.dls-topic-menu-critical { --topic-menu-bg:#6d4894; }
@media(max-width:640px) { .cb-grid { grid-template-columns:1fr; }.cb-lesson { font-size:.96rem; }.cb-figure { margin-inline:0; } }
