.compact-rich-text {
    position: relative;
    width: 100%;
}

.compact-rich-text-shell {
    display: flex;
    direction: rtl;
    align-items: stretch;
    width: 100%;
}

.tinyedit-view-controls {
    display: flex;
    direction: rtl;
    align-items: stretch;
    flex: 0 0 auto;
}

.tinyedit-view-controls > button {
    display: grid;
    place-items: center;
    width: 36px;
    min-width: 36px;
    padding: 0;
    border: 1px solid #d8dde3;
    border-right: 0;
    border-radius: 0;
    background: #f4f6f8;
    color: #4b5563;
    cursor: pointer;
}

.tinyedit-view-controls > button:last-child {
    border-radius: 4px 0 0 4px;
}

.tinyedit-view-controls > button:hover,
.tinyedit-view-controls > button[aria-pressed="true"] {
    border-color: #3b82f6;
    background: #3b82f6;
    color: #fff;
}

.compact-rich-text-editable {
    flex: 1;
    min-width: 0;
    min-height: 34px;
    max-height: 180px;
    padding: 6px 10px;
    overflow: auto;
    border: 1px solid #d8dde3;
    border-left: 0;
    border-radius: 0 4px 4px 0;
    background: #fff;
    color: #343a40;
    font-size: .875rem;
    line-height: 1.5;
    outline: 0;
}

.compact-rich-text-editable:focus {
    border-color: #82b4f7;
    box-shadow: inset 0 0 0 1px #82b4f7;
}

.compact-rich-text-editable:empty::before {
    content: attr(data-placeholder);
    color: #6c757d;
    pointer-events: none;
}

.compact-rich-text-editable p,
.compact-rich-text-editable h1,
.compact-rich-text-editable h2,
.compact-rich-text-editable h3,
.compact-rich-text-editable h4,
.compact-rich-text-editable h5,
.compact-rich-text-editable h6 {
    margin: 0 0 .35rem;
}

.compact-rich-text-editable > :last-child {
    margin-bottom: 0;
}

.compact-rich-text-toggle {
    display: grid;
    place-items: center;
    width: 36px;
    min-width: 36px;
    padding: 0;
    border: 1px solid #d8dde3;
    border-radius: 0;
    background: #f4f6f8;
    color: #4b5563;
}

.compact-rich-text-toggle:hover,
.compact-rich-text-toggle[aria-expanded="true"] {
    border-color: #3b82f6;
    background: #3b82f6;
    color: #fff;
}

.compact-rich-text-toolbar {
    position: absolute;
    z-index: 1060;
    top: calc(100% + 6px);
    left: 0;
    width: min(1050px, 100%);
    padding: 8px;
    border: 1px solid #d8dde3;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .18);
}

.compact-rich-text-tools {
    display: flex;
    direction: rtl;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
}

.compact-rich-text-font-size {
    display: inline-flex;
    direction: ltr;
    align-items: center;
    height: 32px;
    overflow: hidden;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #fff;
}

.compact-rich-text-font-size:focus-within {
    border-color: #3b82f6;
    box-shadow: 0 0 0 1px #3b82f6;
}

.compact-rich-text-font-size input {
    width: 62px;
    height: 100%;
    padding: 0 5px;
    border: 0;
    background: transparent;
    color: #374151;
    font-size: 12px;
    text-align: center;
    outline: 0;
}

.compact-rich-text-font-size span {
    padding: 0 6px 0 2px;
    color: #6b7280;
    font-size: 10px;
    pointer-events: none;
}

.compact-rich-text-style-number {
    display: inline-flex;
    direction: ltr;
    align-items: center;
    height: 32px;
    overflow: hidden;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #fff;
}

.compact-rich-text-style-number:focus-within {
    border-color: #3b82f6;
    box-shadow: 0 0 0 1px #3b82f6;
}

.compact-rich-text-style-number input {
    width: 42px;
    height: 100%;
    padding: 0 4px;
    border: 0;
    background: transparent;
    color: #374151;
    font-size: 11px;
    text-align: center;
    outline: 0;
}

.compact-rich-text-style-number span {
    padding: 0 5px 0 1px;
    color: #6b7280;
    font-size: 9px;
    pointer-events: none;
}

.compact-rich-text-tools > button,
.compact-rich-text-color {
    display: grid;
    place-items: center;
    width: 34px;
    height: 32px;
    margin: 0;
    padding: 0;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #fff;
    color: #374151;
    cursor: pointer;
}

.compact-rich-text-tools > button:hover,
.compact-rich-text-tools > button.is-active,
.compact-rich-text-color:hover {
    border-color: #3b82f6;
    background: #eff6ff;
    color: #1d4ed8;
}

.compact-rich-text-select {
    height: 32px;
    max-width: 138px;
    padding: 3px 8px;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #fff;
    color: #374151;
    font-size: 12px;
}

.compact-rich-text-size {
    width: 76px;
}

.compact-rich-text-line-height-select {
    width: 60px;
}

.compact-rich-text-number-control,
.compact-rich-text-background {
    display: inline-flex;
    direction: rtl;
    align-items: center;
    gap: 4px;
    min-height: 32px;
    padding: 2px 4px;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #f8fafc;
}

.compact-rich-text-number-control input,
.compact-rich-text-background input[type="number"] {
    width: 54px;
    height: 26px;
    padding: 2px 5px;
    border: 1px solid #d8dde3;
    border-radius: 3px;
    background: #fff;
    color: #374151;
    font-size: 11px;
}

.compact-rich-text-number-control span,
.compact-rich-text-background span {
    color: #6b7280;
    font-size: 10px;
    white-space: nowrap;
}

.compact-rich-text-number-control button,
.compact-rich-text-background button {
    height: 26px;
    padding: 2px 7px;
    border: 1px solid #bfdbfe;
    border-radius: 3px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 10px;
    cursor: pointer;
}

.compact-rich-text-background .compact-rich-text-color {
    width: 28px;
    height: 26px;
}

.compact-rich-text-color {
    position: relative;
    overflow: hidden;
}

.compact-rich-text-color input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.compact-rich-text-link-panel {
    margin-top: 8px;
    padding: 9px;
    border-top: 1px solid #e5e7eb;
    background: #f8fafc;
}

.compact-rich-text-link-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 8px;
}

.compact-rich-text-link-grid label {
    display: grid;
    gap: 4px;
    color: #4b5563;
    font-size: 11px;
}

.compact-rich-text-link-grid input {
    height: 32px;
    padding: 4px 8px;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #fff;
}

.compact-rich-text-link-options,
.compact-rich-text-link-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 8px;
}

.compact-rich-text-link-options {
    color: #4b5563;
    font-size: 12px;
}

.compact-rich-text-output > :first-child {
    margin-top: 0;
}

.compact-rich-text-output > :last-child {
    margin-bottom: 0;
}

.compact-rich-text-output p {
    margin: 0;
}

footer .compact-rich-text-output h1,
footer .compact-rich-text-output h2,
footer .compact-rich-text-output h3,
footer .compact-rich-text-output h4,
footer .compact-rich-text-output h5,
footer .compact-rich-text-output h6 {
    margin: .25em 0;
    color: inherit;
    line-height: 1.45;
}

footer .compact-rich-text-output h1::after,
footer .compact-rich-text-output h2::after,
footer .compact-rich-text-output h3::after,
footer .compact-rich-text-output h4::after,
footer .compact-rich-text-output h5::after,
footer .compact-rich-text-output h6::after {
    display: none;
    content: none;
}

.footer-design5-bottom .compact-rich-text-output {
    padding: 23px 0;
}

.footer-design5-bottom .compact-rich-text-output p {
    padding: 0;
}

.compact-rich-text-output a {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.tinyedit-media { display: flex; position: relative; direction: rtl; align-items: flex-start; gap: var(--tinyedit-media-gap, 24px); margin: 1rem 0; }
.tinyedit-media--right { flex-direction: row-reverse; }
.tinyedit-media__asset { position: relative; flex: 0 0 var(--tinyedit-media-width, 45%); max-width: var(--tinyedit-media-width, 45%); }
.tinyedit-media__asset > .img-fluid, .tinyedit-media__asset > img, .tinyedit-media__asset > video, .tinyedit-media__asset > iframe { display: block; width: 100%; max-width: 100%; height: var(--tinyedit-media-height, auto); border: 0; object-fit: contain; }
.tinyedit-media__asset > iframe { aspect-ratio: 16 / 9; }
.tinyedit-media__text { flex: 1 1 0; min-width: 0; }
.tinyedit-media--float-left,
.tinyedit-media--float-right {
    display: block;
    width: var(--tinyedit-media-width, 45%);
    max-width: min(var(--tinyedit-media-width, 45%), 720px);
    margin-top: .25rem;
    margin-bottom: 1rem;
}

.compact-rich-text-tools > button[data-tool="direction"] {
    width: 42px;
    font-size: 10px;
    font-weight: 700;
}
.tinyedit-media--float-left { float: left; margin-right: var(--tinyedit-media-gap, 24px); margin-left: 0; }
.tinyedit-media--float-right { float: right; margin-right: 0; margin-left: var(--tinyedit-media-gap, 24px); }
.tinyedit-media--float-left .tinyedit-media__asset,
.tinyedit-media--float-right .tinyedit-media__asset { width: 100%; max-width: 100%; }
.tinyedit-media--float-left .tinyedit-media__text,
.tinyedit-media--float-right .tinyedit-media__text { margin-top: .5rem; }
.compact-rich-text-editable figure.tinyedit-media { cursor: grab; }
.compact-rich-text-editable figure.tinyedit-media:active { cursor: grabbing; }
.compact-rich-text-editable figure.tinyedit-media:hover { outline: 2px dashed rgba(37, 99, 235, .55); outline-offset: 3px; }
.tinyedit-media-resize-handle {
    position: absolute;
    z-index: 5;
    display: none;
    width: 12px;
    height: 12px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #2563eb;
    box-shadow: 0 1px 4px rgba(15, 23, 42, .45);
    touch-action: none;
}
.tinyedit-media--selected .tinyedit-media-resize-handle,
.tinyedit-media--resizing .tinyedit-media-resize-handle { display: block; }
.tinyedit-media-resize-handle--nw { top: -6px; left: -6px; cursor: nwse-resize; }
.tinyedit-media-resize-handle--n { top: -6px; left: calc(50% - 6px); cursor: ns-resize; }
.tinyedit-media-resize-handle--ne { top: -6px; right: -6px; cursor: nesw-resize; }
.tinyedit-media-resize-handle--e { top: calc(50% - 6px); right: -6px; cursor: ew-resize; }
.tinyedit-media-resize-handle--se { right: -6px; bottom: -6px; cursor: nwse-resize; }
.tinyedit-media-resize-handle--s { bottom: -6px; left: calc(50% - 6px); cursor: ns-resize; }
.tinyedit-media-resize-handle--sw { bottom: -6px; left: -6px; cursor: nesw-resize; }
.tinyedit-media-resize-handle--w { top: calc(50% - 6px); left: -6px; cursor: ew-resize; }
.tinyedit-media--resizing { user-select: none; }
.compact-rich-text-editable figure.tinyedit-media::before {
    position: absolute;
    z-index: 2;
    top: 8px;
    right: 8px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 6px;
    background: rgba(15, 23, 42, .78);
    color: #fff;
    content: "\f047";
    font-family: "Font Awesome 5 Free", FontAwesome, sans-serif;
    font-weight: 900;
    pointer-events: none;
}
.compact-rich-text-editable .tinyedit-media--dragging { opacity: .45; }
.compact-rich-text-editable .tinyedit-media-drop-left,
.compact-rich-text-editable .tinyedit-media-drop-right { position: relative; }
.compact-rich-text-editable .tinyedit-media-drop-left { box-shadow: inset 5px 0 #2563eb; }
.compact-rich-text-editable .tinyedit-media-drop-right { box-shadow: inset -5px 0 #2563eb; }
.tinyedit-media-clear { display: block; clear: both; width: 100%; height: 0; overflow: hidden; }

.tinyedit-media-dialog { position: fixed; z-index: 2100; inset: 0; display: grid; place-items: center; padding: 16px; background: rgba(15, 23, 42, .55); }
.tinyedit-media-card { width: min(820px, 100%); max-height: calc(100vh - 32px); overflow: auto; padding: 16px; border-radius: 9px; background: #fff; color: #374151; }
.tinyedit-media-heading, .tinyedit-media-tabs, .tinyedit-media-actions { display: flex; align-items: center; gap: 8px; }
.tinyedit-media-heading { justify-content: space-between; margin-bottom: 14px; }
.tinyedit-media-heading button { border: 0; background: transparent; font-size: 18px; }
.tinyedit-media-tabs { margin-bottom: 12px; border-bottom: 1px solid #e5e7eb; }
.tinyedit-media-tabs button { padding: 7px 10px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #4b5563; }
.tinyedit-media-tabs button.is-active { border-color: #3b82f6; color: #1d4ed8; }
.tinyedit-media-library { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 10px; min-height: 80px; }
.tinyedit-media-file { min-height: 108px; padding: 6px; overflow: hidden; border: 1px solid #d8dde3; border-radius: 5px; background: #fff; color: #374151; font-size: 11px; text-align: right; }
.tinyedit-media-file.is-selected { border-color: #2563eb; box-shadow: 0 0 0 2px #bfdbfe; }
.tinyedit-media-file img { display: block; width: 100%; height: 72px; margin-bottom: 5px; object-fit: cover; }
.tinyedit-media-video-icon { display: grid; height: 72px; place-items: center; margin-bottom: 5px; background: #111827; color: #fff; font-size: 22px; }
.tinyedit-media-drop { display: grid; min-height: 120px; place-items: center; border: 2px dashed #93c5fd; border-radius: 6px; background: #eff6ff; cursor: pointer; }
.tinyedit-media-drop input { display: none; }
.tinyedit-media-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 15px; }
.tinyedit-media-options label { display: grid; gap: 4px; font-size: 12px; }
.tinyedit-media-options input, .tinyedit-media-options select, [data-panel="url"] input { width: 100%; height: 34px; padding: 4px 8px; border: 1px solid #d8dde3; border-radius: 4px; }
.tinyedit-media-options .tinyedit-media-check { display: flex; align-items: center; gap: 6px; }
.tinyedit-media-options .tinyedit-media-check input { width: auto; height: auto; }
.tinyedit-media-actions { justify-content: space-between; margin-top: 15px; }

.tinyedit-size-large .compact-rich-text-editable {
    min-height: 380px;
    max-height: 65vh;
}

.tinyedit-focus-header {
    display: none;
}

body.tinyedit-focus-open {
    overflow: hidden !important;
}

.compact-rich-text.tinyedit-focus {
    position: fixed !important;
    z-index: 1900;
    inset: 12px;
    display: flex;
    width: auto;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #d8dde3;
    border-radius: 10px;
    background: #f4f6f8;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .3);
}

.tinyedit-focus .tinyedit-focus-header {
    display: flex;
    direction: rtl;
    align-items: center;
    justify-content: space-between;
    flex: 0 0 auto;
    min-height: 46px;
    padding: 7px 12px;
    border-bottom: 1px solid #d8dde3;
    background: #fff;
    color: #374151;
    font-weight: 600;
}

.tinyedit-focus .tinyedit-focus-close {
    display: grid;
    place-items: center;
    width: 34px;
    height: 32px;
    padding: 0;
    border: 1px solid #d8dde3;
    border-radius: 4px;
    background: #fff;
    color: #4b5563;
    cursor: pointer;
}

.tinyedit-focus .compact-rich-text-toolbar {
    position: static;
    z-index: auto;
    order: 1;
    width: auto;
    flex: 0 0 auto;
    border-width: 0 0 1px;
    border-radius: 0;
    box-shadow: none;
}

.tinyedit-focus .compact-rich-text-shell {
    order: 2;
    flex: 1 1 auto;
    min-height: 0;
    padding: 12px;
}

.tinyedit-focus .compact-rich-text-editable {
    min-height: 0;
    max-height: none;
    height: auto;
    border: 1px solid #d8dde3;
    border-radius: 0 5px 5px 0;
}

@media (max-width: 575px) {
    .compact-rich-text-toolbar {
        position: fixed;
        z-index: 1080;
        inset: auto 8px 8px;
        width: auto;
        max-height: 70vh;
        overflow: auto;
    }

    .compact-rich-text-link-grid {
        grid-template-columns: 1fr;
    }

    .tinyedit-size-large .compact-rich-text-editable {
        min-height: 300px;
        max-height: 70vh;
    }

    .compact-rich-text.tinyedit-focus {
        inset: 0;
        border: 0;
        border-radius: 0;
    }

    .tinyedit-focus .compact-rich-text-toolbar {
        position: static;
        inset: auto;
        width: auto;
        max-height: 34vh;
    }

    .tinyedit-focus .compact-rich-text-shell {
        padding: 8px;
    }

    .tinyedit-media { flex-direction: column; }
    .tinyedit-media--text-first { flex-direction: column-reverse; }
    .tinyedit-media__asset { flex-basis: auto; width: 100%; max-width: 100%; }
    .tinyedit-media--float-left,
    .tinyedit-media--float-right {
        float: none;
        width: 100%;
        max-width: 100%;
        margin: 1rem 0;
    }
    .tinyedit-media-options { grid-template-columns: 1fr; }

    .footer-design5-bottom .compact-rich-text-output {
        padding: 18px 12px;
    }
}
