/* Kindly Edit: what the text toolbar can put on words. Colours are theme roles (token contract v1), never
   raw values, so text stays on-brand and follows its section's tone: accent on navy is not accent on white.
   !important because a colour someone picked for these words beats the theme's heading/link rules. */
.cb-color-heading { color: var(--cb-heading) !important; }
.cb-color-ink { color: var(--cb-ink) !important; }
.cb-color-muted { color: var(--cb-muted) !important; }
.cb-color-accent { color: var(--cb-accent) !important; }
.cb-align-left { text-align: left; }
.cb-align-center { text-align: center; }
.cb-align-right { text-align: right; }

/* A pasted URL or long word wraps instead of pushing the page sideways. Zero specificity: any theme rule wins. */
/* "anywhere", not "break-word": only anywhere lowers the min-content width, which is what a flex or grid item
   sizes by, so a URL in a card or CTA row can't stretch the page. Table cells keep break-word: with anywhere the
   table would squeeze narrow columns to a letter wide and break every word. */
:where(main) :where(h1, h2, h3, h4, h5, h6, p, li, figcaption, blockquote, dd) { overflow-wrap: anywhere; }
:where(main) :where(td, th) { overflow-wrap: break-word; }
