.rt-c-red { color: #e5484d; }
.rt-c-orange { color: #f76b15; }
.rt-c-yellow { color: #d9a400; }
.rt-c-green { color: #2f9e62; }
.rt-c-teal { color: #12a594; }
.rt-c-blue { color: #2f7de1; }
.rt-c-purple { color: #8e4ec6; }
.rt-c-gray { color: #8b8d98; }
.rt-bg-yellow { background: rgb(250 204 21 / .35); }
.rt-bg-green { background: rgb(48 164 108 / .3); }
.rt-bg-blue { background: rgb(59 130 246 / .3); }
.rt-bg-red { background: rgb(229 72 77 / .3); }
.rt-bg-yellow, .rt-bg-green, .rt-bg-blue, .rt-bg-red { padding: 0 .15em; border-radius: .2em; }
.rt-center { text-align: center; }
.rt-right { text-align: right; }
.rt-big { font-size: 1.25em; }
.rt-small { font-size: .85em; }

.rte { border: 1.5px solid currentColor; border-color: rgb(127 127 127 / .55); border-radius: 6px; overflow: hidden; max-width: 100%; }
.rte-toolbar { display: flex; flex-wrap: wrap; gap: .25rem; padding: .4rem; border-bottom: 1px solid rgb(127 127 127 / .4); background: rgb(127 127 127 / .1); }
.rte-button { min-width: 2.1rem; height: 2.1rem; padding: 0 .45rem; border: 1px solid rgb(127 127 127 / .45); border-radius: 4px; background: transparent; color: inherit; font: inherit; font-size: .9rem; cursor: pointer; line-height: 1; }
.rte-button:hover, .rte-button:focus-visible { background: rgb(127 127 127 / .2); }
.rte-button[aria-pressed="true"] { background: #1674d1; border-color: #1674d1; color: #ffffff; }
.rte-bold { font-weight: 800; }
.rte-italic { font-style: italic; }
.rte-underline { text-decoration: underline; }
.rte-strike { text-decoration: line-through; }
.rte .rte-select { width: auto; max-width: 12rem; height: 2.1rem; padding: 0 .4rem; font-size: .88rem; }
.rte-area { padding: .75rem 1rem; outline: none; overflow-wrap: anywhere; }
.rte-area:focus { box-shadow: inset 0 0 0 2px #1674d1; }
.rte-area p { margin: 0 0 .6em; }
.rte .rte-source { width: 100%; max-width: none; border: 0; border-radius: 0; min-height: 16em; font-family: ui-monospace, Consolas, monospace; }
