/* Authored image choices. Legacy images match none of these rules. */
.rt-richtext:has(.rt-image) { display: flow-root; }
.rt-image { display:block; max-width:100%; }
.rt-image img { display:block; width:100%; height:auto; max-width:100%; }
.rt-image--size-small { width:33.333333%; }
.rt-image--size-medium { width:50%; }
.rt-image--size-large { width:75%; }
.rt-image--size-full { width:100%; }
.rt-image--position-left { float:left; margin:0 1.5rem 1rem 0; }
.rt-image--position-center { float:none; margin:0 auto 1rem; }
.rt-image--position-right { float:right; margin:0 0 1rem 1.5rem; }
.rt-richtext figure:has(> .rt-image, > a > .rt-image) { margin:0; max-width:100%; }
.rt-richtext figure:has(> .rt-image--size-small, > a > .rt-image--size-small) { width:33.333333%; }
.rt-richtext figure:has(> .rt-image--size-medium, > a > .rt-image--size-medium) { width:50%; }
.rt-richtext figure:has(> .rt-image--size-large, > a > .rt-image--size-large) { width:75%; }
.rt-richtext figure:has(> .rt-image--size-full, > a > .rt-image--size-full) { width:100%; }
.rt-richtext figure:has(> .rt-image--position-left, > a > .rt-image--position-left) { float:left; margin:0 1.5rem 1rem 0; }
.rt-richtext figure:has(> .rt-image--position-center, > a > .rt-image--position-center) { float:none; margin:0 auto 1rem; }
.rt-richtext figure:has(> .rt-image--position-right, > a > .rt-image--position-right) { float:right; margin:0 0 1rem 1.5rem; }
.rt-richtext figure > .rt-image, .rt-richtext figure > a > .rt-image { width:100%; margin:0; float:none; }
.rt-image-toolbar { position:fixed; z-index:10000; box-sizing:border-box; padding:10px 14px; border:1px solid #c5ccd5; border-radius:10px; background:var(--bs-body-bg, Canvas); color:var(--bs-body-color, CanvasText); box-shadow:0 6px 20px #141e2d24; max-height:90vh; overflow:auto; }
.rt-image-toolbar[hidden], .rt-image-toolbar [hidden] { display:none; }
/* Close sits in the top-right corner, outside the fieldset (a disabled fieldset never disables it). */
.rt-image-toolbar { padding-right:62px; }
.rt-image-toolbar .rt-image-toolbar-close { position:absolute; top:8px; right:8px; display:inline-flex; align-items:center; justify-content:center; padding:0; border-color:transparent; background:transparent; }
.rt-image-toolbar .rt-image-toolbar-close:hover { border-color:#c5ccd5; }
.rt-image-toolbar fieldset { display:flex; flex-wrap:wrap; align-items:end; gap:12px; border:0; margin:0; padding:0; min-width:0; }
.rt-image-toolbar-group { display:flex; flex-direction:column; gap:4px; margin:0; }
.rt-image-toolbar-group > span { font-size:.75rem; }
.rt-image-toolbar button, .rt-image-toolbar select, .rt-image-toolbar input[type=text] { min-height:44px; max-width:100%; border:1px solid #c5ccd5; border-radius:6px; background:var(--bs-body-bg, Canvas); color:var(--bs-body-color, CanvasText); padding:0 10px; font:inherit; }
.rt-image-toolbar button { min-width:44px; }
.rt-image-toolbar button[aria-pressed=true] { background:Highlight; color:HighlightText; }
.rt-image-toolbar button:focus-visible, .rt-image-toolbar input:focus-visible, .rt-image-toolbar select:focus-visible { outline:2px solid Highlight; outline-offset:2px; }
.rt-image-toolbar small { display:block; max-width:16rem; }
.rt-image-segments { display:flex; flex-wrap:wrap; }
.rt-image-segments button { border-radius:0; }
.rt-image-alt { padding-top:12px; }
@media(max-width:48rem) {
 .rt-image--size-small.rt-image--position-center { width:50%; }
 .rt-image--size-medium,.rt-image--size-large,.rt-image--size-full,.rt-image--position-left,.rt-image--position-right { width:100%; float:none; margin:0 0 1rem; }
 .rt-richtext figure:has(> .rt-image--size-small.rt-image--position-center, > a > .rt-image--size-small.rt-image--position-center) { width:50%; }
 .rt-richtext figure:has(> .rt-image--size-medium, > a > .rt-image--size-medium), .rt-richtext figure:has(> .rt-image--size-large, > a > .rt-image--size-large), .rt-richtext figure:has(> .rt-image--size-full, > a > .rt-image--size-full), .rt-richtext figure:has(> .rt-image--position-left, > a > .rt-image--position-left), .rt-richtext figure:has(> .rt-image--position-right, > a > .rt-image--position-right) { width:100%; float:none; margin:0 0 1rem; }
 .rt-image-toolbar { left:8px!important; right:8px; width:calc(100vw - 16px); }
}

.rt-image-toolbar :is(label, small, span) { color:inherit; }

.rt-richtext figure > a:has(> .rt-image) { display:block; }

.rt-image-toolbar fieldset > :is(label, .rt-image-toolbar-group) { min-width:0; max-width:100%; }

.rt-richtext img[data-rt-image-placeholder] { min-width:48px; min-height:48px; border:1px dashed currentColor; background:var(--bs-secondary-bg, #e5e7eb); }

/* Native floating layer uses the viewport coordinates declared by its controller. */
.rt-image-toolbar[popover] { margin:0; inset:auto; max-height:calc(100dvh - 16px); }
