:is(.cms-page-content, trix-editor) { display: flow-root; }
.fi-fo-rich-editor:has([data-content-editor-ready]) [data-content-editor-loading] { display: none; }
:is(.cms-page-content, trix-editor) .attachment-gallery:has(.cms-content-image) { display: contents; }
:is(.cms-page-content, trix-editor) figure.cms-content-image {
    display: block;
    width: var(--content-image-width, 100%) !important;
    max-width: 100%;
    margin: 0 auto 1rem;
    padding: 0;
    box-sizing: border-box;
}
:is(.cms-page-content, trix-editor) figure.cms-content-image img { display: block; width: 100%; max-width: 100%; height: auto !important; }
:is(.cms-page-content, trix-editor) figure.cms-content-image[data-image-align="left"] { float: left; margin: 0 1.25rem 1rem 0; }
:is(.cms-page-content, trix-editor) figure.cms-content-image[data-image-align="right"] { float: right; margin: 0 0 1rem 1.25rem; }
:is(.cms-page-content, trix-editor) figure.cms-content-image[data-image-align="center"] { float: none; clear: both; margin-left: auto; margin-right: auto; }
.cms-page-content > section, .cms-page-content > hr { clear: both; }
.cms-page-content figure:has(img) figcaption.attachment__caption:not(.attachment__caption--edited),
.cms-page-content figure:has(img) :is(.attachment__name, .attachment__size) { display: none; }
.cms-image-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; padding: .65rem 0; font: 13px/1.4 system-ui, sans-serif; }
.cms-image-controls span { flex-basis: 100%; }
.cms-image-controls button { border: 1px solid #94a3b8; border-radius: 5px; padding: .3rem .55rem; }
.cms-image-controls button[aria-pressed="true"] { background: #166534; color: white; }
.cms-image-controls :disabled { opacity: .4; cursor: default; }
.cms-image-controls label { display: flex; align-items: center; gap: .5rem; }
.cms-image-controls input { width: 100px; }
.cms-image-resize-handle { position: fixed; z-index: 9999; width: 24px; height: 24px; border: 2px solid white; border-radius: 4px; background: #166534; color: white; cursor: ew-resize; touch-action: none; }
.cms-image-resize-handle[hidden] { display: none; }
@media (max-width: 575px) {
    .cms-page-content figure.cms-content-image { float: none !important; width: 100% !important; margin: 0 0 1rem !important; }
}
