.resourceDetail[data-type="text"] {
    background-color: transparent;
    color: var(--primary-fg-color);
}

.resourceDetail[data-type="text"] .resourceContent {
    padding: 10px;
    box-sizing: border-box;
    overflow-y: auto;
}

.resourcePreviewDialog .resourceDetail[data-type="text"] {
    color: var(--primary-bg-color);
}

.overlayElement .resourceDetail[data-type="text"] .resourceContent {
    padding: 0px;
    color: #000;
}

.resourceDetail[data-type="text"] ol, .resourceDetail[data-type="text"] ul {
    margin: 0;
    padding-left: 20px;
}

.resourceThumb[data-type="text"] .resourceTextPreview {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    padding: 8px;
    box-sizing: border-box;
    color: var(--primary-fg-color) !important;
    line-height: 1.2em !important;
    opacity: .6;
    overflow: hidden;
}

.resourceThumb[data-type="text"] .resourceTextPreview * {
    font-size: 100% !important;
    color: var(--primary-fg-color) !important;
    line-height: 1.2em !important;
}

.resourceThumb[data-type="text"] .resourceTextPreview:after {
    content: '';
    position: absolute;
    left: 0px;
    bottom: 0px;
    height: 40%;
    background-image: linear-gradient(to top, var(--primary-bg-color) 0%, var(--primary-bg-color) 30%, transparent 100%);
    width: 100%;
}

.resourceThumb[data-type="text"] .resourceOverlay {
    background: transparent;
}

.resourceThumb[data-type="text"] .resourceTitle {
    display: none;
}

.contentViewContainer[data-size="small"] .resourceThumb[data-type="text"] .resourceTextPreview {
    display: none;
}

/* Edit Text Overlay Properties */

.editPropertiesContainer .propertiesTypeIcon[data-type="text"] [class^="icon-"]::before, .editPropertiesContainer .propertiesTypeIcon[data-type="text"] [class*=" icon-"]::before {
    content: "\f0f6";
}

.editPropertiesContainer .textEditorTab {
    display: inline-block;
    padding: 3px 6px;
    margin-right: 2px;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: var(--primary-bg-color);
    border-radius: 5px 5px 0 0;
}

.editPropertiesContainer .textEditorTab:hover, .editPropertiesContainer .textEditorTab.active {
    cursor: pointer;
    background: var(--primary-bg-color);
    color: var(--primary-fg-color);
}

.editPropertiesContainer .textEditorContent {
    border-top: 4px solid var(--primary-bg-color);
    height: calc(100% - 35px);
}

.editPropertiesContainer .textEditorContent.visualEditorContent {
    padding-top: 0px;
    box-sizing: border-box;
}

/* Quill inserts .ql-toolbar as a sibling BEFORE the passed element (.quillEditorContainer),
   so .visualEditorWrapper is the correct flex container for the toolbar + editor layout. */
.editPropertiesContainer .visualEditorWrapper {
    clear: both;
    position: relative;
    background: #cfcfcf;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.editPropertiesContainer .visualEditorWrapper .ql-toolbar {
    flex-shrink: 0;
    background: var(--secondary-fg-color);
    border-color: #555;
}

.editPropertiesContainer .visualEditorWrapper .ql-toolbar .ql-stroke {
    stroke: var(--primary-bg-color);
}

.editPropertiesContainer .visualEditorWrapper .ql-toolbar .ql-fill {
    fill: var(--primary-fg-color);
}

.editPropertiesContainer .visualEditorWrapper .ql-toolbar .ql-picker {
    color: var(--primary-bg-color);
}

.editPropertiesContainer .visualEditorWrapper .ql-toolbar .ql-formats {
    margin-right: 10px;
}

.ql-snow .ql-picker-options {
    background: var(--primary-fg-color);
    max-height: 200px;
    overflow: auto;
}

.ql-snow .ql-picker.ql-size {
    width: 70px;
}

/* .quillEditorContainer receives ql-container + ql-snow from Quill; it is the editor area */
.editPropertiesContainer .quillEditorContainer {
    flex: 1;
    min-height: 0;
    background: var(--secondary-fg-color);;
    font-size: 14px;
    border-color: #555;
}

.editPropertiesContainer .quillEditorContainer .ql-editor {
    min-height: 100%;
}

/* Show actual font name / size value in the picker label and dropdown items.
   Quill Snow only has ::before rules for its 3 built-in fonts; all custom
   fonts fall back to "Sans Serif". Override at the .ql-snow level (same scope
   as Quill's own CSS) so the selector always matches regardless of ancestor. */
.ql-snow .ql-picker.ql-font .ql-picker-label[data-value]::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value]::before {
    content: attr(data-value) !important;
}

.ql-snow .ql-picker.ql-size .ql-picker-label[data-value]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value]::before {
    content: attr(data-value) !important;
}

