6 --editor-color-primary: #206ea7;
11 @include mixins.lightDark(background-color, #FFF, #222);
18 .editor-toolbar-main {
21 justify-content: center;
22 border-top: 1px solid #DDD;
23 border-bottom: 1px solid #DDD;
24 @include mixins.lightDark(border-color, #DDD, #000);
27 @include mixins.smaller-than(vars.$bp-xl) {
28 .editor-toolbar-main {
31 justify-content: start;
35 body.editor-is-fullscreen {
41 .editor-content-area {
48 .editor-content-wrap {
51 padding-inline: vars.$s;
55 // Variation specific styles
56 .comment-editor-container,
57 .basic-editor-container {
58 border-left: 1px solid #DDD;
59 border-right: 1px solid #DDD;
60 border-bottom: 1px solid #DDD;
62 @include mixins.lightDark(border-color, #DDD, #000);
64 .editor-toolbar-main {
65 border-radius: 3px 3px 0 0;
70 .basic-editor-container .editor-content-area {
79 @include mixins.lightDark(color, #444, #999);
83 justify-content: center;
86 .editor-button:hover {
87 background-color: #EEE;
88 @include mixins.lightDark(background-color, #EEE, #333);
92 .editor-button[disabled] {
97 .editor-button-active, .editor-button-active:hover {
98 @include mixins.lightDark(background-color, #ceebff, #444);
101 .editor-button-long {
102 display: flex !important;
105 justify-content: start;
108 .editor-button-text {
110 @include mixins.lightDark(color, #000, #AAA);
113 padding-inline-end: 4px;
115 .editor-button-format-preview {
119 .editor-button-long .editor-button-icon {
123 .editor-button-icon svg {
130 .editor-menu-button-icon {
137 .editor-container[dir="rtl"] .editor-menu-button-icon {
140 .editor-button-with-menu-container {
144 align-items: stretch;
146 .editor-dropdown-menu-container {
149 .editor-dropdown-menu-container > .editor-dropdown-menu {
152 .editor-dropdown-menu-container > .editor-button {
154 margin-inline-start: -3px;
162 @include mixins.lightDark(outline-color, #DDD, #111);
163 outline-offset: -3px;
168 .editor-dropdown-menu-container {
171 .editor-dropdown-menu {
174 @include mixins.lightDark(background-color, #FFF, #292929);
175 @include mixins.lightDark(border-color, #FFF, #333);
176 @include mixins.lightDark(box-shadow, 0 0 6px 0 rgba(0, 0, 0, 0.15), 0 1px 4px 0 rgba(0, 0, 0, 0.4));
182 .editor-dropdown-menu-vertical {
184 flex-direction: column;
185 align-items: stretch;
188 .editor-dropdown-menu-vertical .editor-button {
194 .editor-dropdown-menu-vertical > .editor-dropdown-menu-container .editor-dropdown-menu {
195 inset-inline-start: 100%;
203 @include mixins.lightDark(background-color, #DDD, #000);
206 .editor-format-menu-toggle {
211 padding-inline: 12px;
212 justify-content: start;
213 background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23666" d="M7.41 8L12 12.58 16.59 8 18 9.41l-6 6-6-6z"/></svg>');
214 background-repeat: no-repeat;
215 background-position: 98% 50%;
216 background-size: 28px;
218 .editor-container[dir="rtl"] .editor-format-menu-toggle {
219 background-position: 2% 50%;
221 .editor-format-menu .editor-dropdown-menu {
223 .editor-dropdown-menu {
226 .editor-button-icon {
230 .editor-format-menu .editor-dropdown-menu .editor-dropdown-menu-container > .editor-button {
234 .editor-overflow-container {
236 border-inline: 1px solid #DDD;
238 @include mixins.lightDark(border-color, #DDD, #000);
240 border-inline-start: none;
243 border-inline-end: none;
245 + .editor-overflow-container {
246 border-inline-start: none;
250 .editor-context-toolbar {
252 border: 1px solid #DDD;
253 @include mixins.lightDark(background-color, #FFF, #222);
254 @include mixins.lightDark(border-color, #DDD, #333);
255 @include mixins.lightDark(box-shadow, 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 4px 0 rgba(0, 0, 0, 0.4));
267 @include mixins.lightDark(background-color, #FFF, #222);
268 border-top: 1px solid #DDD;
269 border-left: 1px solid #DDD;
270 @include mixins.lightDark(border-color, #DDD, #333);
271 transform: rotate(45deg);
277 top: calc(100% - 5px);
278 transform: rotate(225deg);
283 .editor-modal-wrapper {
287 justify-content: center;
289 background-color: rgba(0, 0, 0, 0.5);
294 @include mixins.lightDark(background-color, #FFF, #222);
297 box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.3);
302 .editor-modal-header {
304 justify-content: space-between;
305 align-items: stretch;
306 background-color: var(--color-primary);
309 .editor-modal-title {
310 padding: 8px vars.$m;
312 .editor-modal-close {
314 padding: 8px vars.$m;
316 justify-content: center;
319 background-color: rgba(255, 255, 255, 0.1);
332 // Specific UI elements
333 .editor-color-select-row {
336 .editor-color-select-option {
342 justify-content: center;
344 .editor-color-select-option:hover {
346 box-sizing: border-box;
348 box-shadow: 0 0 4px 1px rgba(0, 0, 0, 0.25);
350 .editor-color-select-option[data-color=""] svg {
355 .editor-table-creator-row {
358 .editor-table-creator-cell {
360 @include mixins.lightDark(border-color, #DDD, #000);
365 background-color: var(--editor-color-primary);
368 .editor-table-creator-display {
372 .editor-external-content {
380 // In-editor elements
383 display: inline-flex;
385 .editor-node-resizer {
389 display: inline-block;
390 outline: 2px dashed var(--editor-color-primary);
392 pointer-events: none;
394 .editor-node-resizer-handle {
395 pointer-events: auto;
400 border: 2px solid var(--editor-color-primary);
402 @include mixins.lightDark(background-color, #FFF, #000);
405 inset-inline-start: -5px;
406 inset-block-start: -5px;
410 inset-inline-end: -5px;
411 inset-block-start: -5px;
415 inset-inline-end: -5px;
416 inset-block-end: -5px;
420 inset-inline-start: -5px;
421 inset-block-end: -5px;
425 .editor-node-resizer-ghost {
434 pointer-events: none;
435 background-color: var(--editor-color-primary);
437 .editor-node-resizer.active .editor-node-resizer-ghost {
440 .editor-content-area details[contenteditable="false"],
441 .editor-content-area summary[contenteditable="false"] {
444 .editor-content-area details[contenteditable="false"] > details * {
445 pointer-events: none;
447 .editor-content-area details summary {
448 caret-color: transparent;
451 .editor-table-marker {
453 background-color: var(--editor-color-primary);
461 .editor-table-marker-column {
465 .editor-table-marker-row {
470 .editor-code-block-wrap {
473 pointer-events: none;
475 &.selected .cm-editor {
476 border: 1px dashed var(--editor-color-primary);
479 .editor-diagram.selected {
480 outline: 2px dashed var(--editor-color-primary);
484 display: inline-block;
487 pointer-events: none;
502 * Fake task list checkboxes
504 .editor-content-area .task-list-item {
508 .editor-content-area .task-list-item > input[type="checkbox"] {
511 .editor-content-area .task-list-item:before {
513 display: inline-block;
514 border: 2px solid #CCC;
519 vertical-align: text-top;
525 .editor-content-area .task-list-item[checked]:before {
526 background-color: #CCC;
527 background-image: url('data:image/svg+xml;utf8,<svg fill="%23FFFFFF" version="1.1" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m8.4856 20.274-6.736-6.736 2.9287-2.7823 3.8073 3.8073 10.836-10.836 2.9287 2.9287z" stroke-width="1.4644"/></svg>');
528 background-position: 50% 50%;
529 background-size: 100% 100%;
537 .editor-form-field-wrapper {
538 margin-bottom: .5rem;
540 .editor-form-field-input {
546 @include mixins.lightDark(border-color, #DDD, #000);
549 @include mixins.lightDark(color, #444, #BBB);
552 @include mixins.smaller-than(vars.$bp-xs) {
553 .editor-form-field-input {
558 textarea.editor-form-field-input {
559 font-family: var(--font-code);
564 .editor-form-field-label {
569 .editor-form-actions {
571 justify-content: end;
575 .editor-form-actions > button {
579 padding: vars.$xs*1.3 vars.$m;
585 outline: 1px dotted currentColor;
586 outline-offset: -(vars.$xs);
588 filter: brightness(90%);
591 .editor-form-action-primary {
592 background-color: var(--color-primary);
594 border: 1px solid var(--color-primary);
596 @include mixins.lightDark(box-shadow, vars.$bs-light, vars.$bs-dark);
597 filter: brightness(110%);
600 .editor-form-action-secondary {
602 @include mixins.lightDark(border-color, #CCC, #666);
603 @include mixins.lightDark(color, #666, #AAA);
604 &:hover, &:focus, &:active {
605 @include mixins.lightDark(color, #444, #BBB);
606 border: 1px solid #CCC;
607 box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1);
608 background-color: #F2F2F2;
609 @include mixins.lightDark(background-color, #f8f8f8, #444);
614 background-color: #DDD;
616 box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.1);
619 .editor-form-tab-container {
624 .editor-form-tab-controls {
626 flex-direction: column;
627 align-items: stretch;
631 @include mixins.smaller-than(vars.$bp-m) {
632 .editor-form-tab-container {
633 flex-direction: column;
636 .editor-form-tab-controls {
641 .editor-form-tab-control {
644 @include mixins.lightDark(color, #444, #666);
645 border-bottom: 2px solid transparent;
648 padding: .25rem .5rem;
650 &[aria-selected="true"] {
651 border-color: var(--editor-color-primary);
652 color: var(--editor-color-primary) !important;
654 &[aria-selected="true"]:after, &:hover:after {
655 background-color: var(--editor-color-primary);
666 .editor-form-tab-contents {
670 .editor-action-input-container {
674 justify-content: space-between;
680 width: $inputWidth - 40px;
683 .editor-color-field-container {
688 .editor-dropdown-menu-container {
694 // Specific field styles
695 textarea.editor-form-field-input[name="source"] {
702 // Editor theme styles
706 .editor-theme-italic {
709 .editor-theme-strikethrough {
710 text-decoration-line: line-through;
712 .editor-theme-underline {
713 text-decoration-line: underline;
715 .editor-theme-underline-strikethrough {
716 text-decoration: underline line-through;