7 // System wide notifications
13 padding: vars.$m vars.$l;
14 background-color: #FFF;
15 @include mixins.lightDark(background-color, #fff, #444);
17 border-inline-start: 6px solid currentColor;
18 box-shadow: vars.$bs-large;
22 transition: transform ease-in-out 280ms;
23 transform: translateX(580px);
25 grid-template-columns: 42px 1fr 12px;
29 vertical-align: middle;
36 padding-inline-end: vars.$s;
43 @include mixins.lightDark(color, #444, #888);
47 vertical-align: middle;
49 @include mixins.whenDark {
54 color: var(--color-positive);
57 color: var(--color-negative);
60 color: var(--color-warning);
63 transform: translateX(0);
66 transform: translate3d(0, -2px, 0);
70 .chapter-contents-toggle {
73 transition: all ease-in-out 180ms;
75 svg[data-icon="caret-right"] {
78 transition: all ease-in-out 180ms;
79 transform: rotate(0deg);
80 transform-origin: 50% 50%;
82 &.open svg[data-icon="caret-right"] {
83 transform: rotate(90deg);
85 svg[data-icon="caret-right"] + * {
86 margin-inline-start: vars.$xxs;
90 [overlay], .popup-background {
91 @include mixins.lightDark(background-color, rgba(0, 0, 0, 0.333), rgba(0, 0, 0, 0.6));
103 justify-content: center;
112 @include mixins.lightDark(background-color, #fff, #333);
119 box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.3);
123 flex-direction: column;
137 align-self: flex-start;
147 .popup-header button, .popup-footer button {
152 padding: vars.$xs vars.$m;
156 .popup-header button:not(.popup-header-close) {
160 .popup-header button:hover {
161 background-color: rgba(255, 255, 255, 0.1);
165 justify-content: end;
166 background-color: var(--color-primary-light);
169 padding: 10px vars.$m;
173 .popup-header-close {
183 .popup-header, .popup-footer {
190 margin-inline-end: auto;
191 padding: 8px vars.$m;
193 &.flex-container-row {
194 display: flex !important;
197 body.flexbox-support #entity-selector-wrap .popup-body .form-group {
201 #entity-selector-wrap .popup-body .form-group {
204 .popup-body .entity-selector-container {
211 justify-content: center;
219 border: 1px dashed var(--color-primary);
221 box-sizing: content-box;
222 background-clip: padding-box;
223 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23a9a9a9' fill-opacity='0.52' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
224 background-color: var(--color-primary);
228 pointer-events: none;
229 animation: dzAnimIn 240ms ease-in-out;
232 .dropzone-landing-area {
233 background-color: var(--color-primary-light);
234 padding: vars.$m vars.$l;
236 border: 1px dashed var(--color-primary);
237 color: var(--color-primary);
241 @keyframes dzAnimIn {
244 transform: scale(.7);
247 transform: scale(1.1);
255 @keyframes dzFileItemIn {
258 transform: translateY(28px);
262 transform: translateY(0);
265 @keyframes dzFileItemOut {
268 transform: translateY(0);
272 transform: translateY(28px);
276 .dropzone-file-item {
283 @include mixins.lightDark(background, #FFF, #444);
284 box-shadow: vars.$bs-large;
288 animation: dzFileItemIn ease-in-out 240ms;
289 transition: transform ease-in-out 120ms, box-shadow ease-in-out 120ms;
292 transform: translateY(-3px);
293 box-shadow: 0 3px 8px 1px rgba(22, 22, 22, 0.2);
296 .dropzone-file-item.dismiss {
297 animation: dzFileItemOut ease-in-out 240ms;
299 .dropzone-file-item .loading-container {
300 text-align: start !important;
303 .dropzone-file-item-image-wrap {
306 background-color: var(--color-primary-light);
314 .dropzone-file-item-text-wrap {
320 .dropzone-file-item-progress {
326 background-color: var(--color-primary);
327 transition: width ease-in-out 240ms;
329 .dropzone-file-item-label {
331 margin-bottom: .2rem;
333 .dropzone-file-item-label,
334 .dropzone-file-item-status {
339 .dropzone-file-item-status[data-status] {
345 .dropzone-file-item-status[data-status="success"] {
346 color: var(--color-positive);
348 .dropzone-file-item-status[data-status="error"] {
349 color: var(--color-negative);
351 .dropzone-file-item-status[data-status] + .dropzone-file-item-label {
355 .image-manager-body {
358 .image-manager-filter-bar {
362 @include mixins.lightDark(background-color, rgba(255, 255, 255, 0.85), rgba(80, 80, 80, 0.85));
364 .image-manager-filter-bar-bg {
374 .image-manager-filters {
375 box-shadow: vars.$bs-med;
378 border-bottom: 0 !important;
379 @include mixins.whenDark {
380 border: 1px solid #000 !important;
384 @include mixins.lightDark(background-color, #FFF, #333);
391 .image-manager-list {
394 grid-template-columns: repeat( auto-fill, minmax(max(140px, 17%), 1fr) );
402 .image-manager-list .image {
412 @include mixins.lightDark(border-color, #ddd, #000);
413 transition: all linear 80ms;
416 background-color: var(--color-primary-light);
417 outline: currentColor 3px solid;
419 transform: scale3d(0.95, 0.95, 0.95);
435 background-color: rgba(0, 0, 0, 0.7);
438 pointer-events: none;
439 transition: opacity ease-in-out 80ms;
444 &.selected .image-meta,
446 &:focus .image-meta {
449 @include mixins.smaller-than(vars.$bp-m) {
456 .image-manager .load-more {
458 padding: vars.$s vars.$m;
465 .image-manager .loading-container {
469 .image-manager-list .image-manager-list-warning {
474 .image-manager-warning {
475 @include mixins.lightDark(background, #FFF, #333);
476 color: var(--color-warning);
478 border-inline: 3px solid var(--color-warning);
481 .image-manager-sidebar {
486 border-inline-start: 1px solid #DDD;
487 @include mixins.lightDark(border-color, #ddd, #000);
492 .image-manager-viewer img {
496 margin: 0 auto vars.$m auto;
497 box-shadow: 0 1px 21px 1px rgba(76, 76, 76, 0.3);
499 .image-manager-viewer {
503 justify-content: center;
505 display: inline-block;
509 @include mixins.smaller-than(vars.$bp-m) {
510 .image-manager-sidebar {
511 border-inline-start: 0;
515 .image-manager-content {
517 flex-direction: column;
528 .tab-container.bordered [role="tablist"] button[role="tab"] {
529 border-inline-end: 1px solid #DDD;
530 @include mixins.lightDark(border-inline-end-color, #DDD, #000);
532 border-inline-end: none;
536 .tab-container [role="tablist"] {
539 justify-items: start;
541 border-bottom: 1px solid #DDD;
542 @include mixins.lightDark(border-color, #ddd, #444);
543 margin-bottom: vars.$m;
546 .tab-container [role="tablist"] button[role="tab"] {
547 display: inline-block;
549 @include mixins.lightDark(color, rgba(0, 0, 0, .5), rgba(255, 255, 255, .5));
551 border-bottom: 2px solid transparent;
553 &[aria-selected="true"] {
554 color: var(--color-link) !important;
555 border-bottom-color: var(--color-link) !important;
556 outline: 0 !important;
559 @include mixins.lightDark(color, rgba(0, 0, 0, .8), rgba(255, 255, 255, .8));
560 @include mixins.lightDark(border-bottom-color, rgba(0, 0, 0, .2), rgba(255, 255, 255, .2));
563 outline: 1px dotted var(--color-primary);
564 outline-offset: -2px;
567 .tab-container [role="tablist"].controls-card {
572 .tab-container [role="tabpanel"].no-outline:focus {
576 .image-picker .none {
580 .code-editor .CodeMirror {
586 .code-editor .lang-options {
592 .code-editor .lang-options button {
594 padding: vars.$xs vars.$m;
595 border-bottom: 1px solid;
596 @include mixins.lightDark(color, #333, #AAA);
597 @include mixins.lightDark(border-bottom-color, #EEE, #000);
601 font-family: var(--font-code);
603 padding-left: 24px + vars.$xs;
605 background-color: var(--color-primary-light);
606 color: var(--color-primary);
610 .code-editor button.lang-option-favorite-toggle {
622 color: var(--color-primary);
628 .code-editor button[data-favourite="true"] ~ .action-favourite,
629 .code-editor button[data-favourite="false"] ~ .action-unfavourite {
633 .code-editor .action-favourite {
636 .code-editor button:hover ~ .action-favourite {
641 background-color: var(--color-primary-light);
643 color: var(--color-primary);
644 padding: vars.$xxs vars.$s;
648 .code-editor-language-list {
652 align-items: stretch;
655 .code-editor-language-list input {
658 border-bottom: 1px solid #DDD;
659 padding: vars.$xs vars.$s;
674 .code-editor-body-wrap {
678 @include mixins.smaller-than(vars.$bp-s) {
679 .code-editor .lang-options {
682 .code-editor-body-wrap {
683 flex-direction: column;
685 .code-editor-language-list, .code-editor-language-list input {
690 .comments-container {
691 padding-inline: vars.$xl;
692 @include mixins.smaller-than(vars.$bp-m) {
693 padding-inline: vars.$xs;
698 border: 1px solid #DDD;
699 @include mixins.lightDark(border-color, #ddd, #000);
700 @include mixins.lightDark(background-color, #FFF, #222);
703 padding: vars.$xs vars.$s;
705 font-size: vars.$fs-m;
711 transition: opacity ease-in-out 120ms;
713 &:hover .actions, &:focus-within .actions {
716 .actions button:focus {
717 outline: 1px dotted var(--color-primary);
719 @include mixins.smaller-than(vars.$bp-m) {
726 .comment-box .header {
727 border-bottom: 1px solid #DDD;
728 padding: vars.$xs vars.$s;
729 @include mixins.lightDark(border-color, #DDD, #000);
736 .meta a, .meta span {
739 .right-meta .text-muted {
744 .comment-thread-indicator {
745 border-inline-start: 3px dotted #DDD;
746 @include mixins.lightDark(border-color, #DDD, #444);
747 margin-inline-start: vars.$xs;
749 height: calc(100% - vars.$m);
752 .comment-reference-indicator-wrap a {
754 margin-top: vars.$xs;
756 display: inline-block;
761 padding: 2px 6px 2px 0;
762 margin-inline-end: vars.$xs;
763 color: var(--color-link);
771 color: var(--color-warning);
772 pointer-events: none;
776 margin-inline-end: 0;
779 background-color: currentColor;
790 pointer-events: none;
794 .comment-branch .comment-box {
795 margin-bottom: vars.$m;
798 .comment-branch .comment-branch .comment-branch .comment-branch .comment-thread-indicator {
804 margin: 0 !important;
805 margin-bottom: -(vars.$xxs) !important;
808 .comment-branch .comment-branch .comment-branch .comment-branch .comment-reply {
812 .comment-container .empty-state {
815 .comment-container:not(:has([component="page-comment"])) .empty-state {
819 .comment-container-compact .comment-box {
820 margin-bottom: vars.$xs;
831 padding: vars.$xs vars.$s;
834 .comment-container-compact .comment-thread-indicator {
838 .comment-container-super-compact .comment-box {
845 margin-inline-end: 2px !important;
848 padding: vars.$xxs vars.$s;
856 .comment-container-super-compact .comment-thread-indicator {
857 width: (vars.$xs + 3px);
858 margin-inline-start: 3px;
861 #tag-manager .drag-card {
868 &:hover, .template-item-actions button:hover {
869 background-color: #F2F2F2;
871 .template-item-actions {
878 flex-direction: column;
879 border-inline-start: 1px solid;
880 @include mixins.lightDark(border-color, #ddd, #000);
882 .template-item-actions button {
885 @include mixins.lightDark(background-color, #FFF, #222);
887 border-top: 1px solid;
888 @include mixins.lightDark(border-color, #DDD, #000);
890 .template-item-actions button svg {
893 .template-item-actions button:first-child {
902 .dropdown-search-toggle-breadcrumb {
903 border: 1px solid transparent;
911 @include mixins.lightDark(border-color, #DDD, #444);
914 margin-inline-end: 0;
917 .dropdown-search-toggle-select {
933 text-overflow: ellipsis;
936 .dropdown-search-toggle-caret {
940 .dropdown-search-toggle-select-label {
944 .dropdown-search-toggle-select-caret {
952 .dropdown-search-dropdown {
953 box-shadow: vars.$bs-med;
963 @include mixins.rtl {
967 .dropdown-search-search .svg-icon {
970 @include mixins.rtl {
976 pointer-events: none;
978 .dropdown-search-list {
983 .dropdown-search-item {
984 padding: vars.$s vars.$m;
986 background-color: #F2F2F2;
987 text-decoration: none;
991 padding-inline-start: vars.$xl;
994 border-bottom: 1px solid #DDD;
1001 @include mixins.smaller-than(vars.$bp-l) {
1002 .dropdown-search-dropdown {
1003 inset-inline: vars.$m auto;
1005 .dropdown-search-dropdown .dropdown-search-list {
1011 box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
1014 border: 1.5px solid;
1015 @include mixins.lightDark(border-color, #E2E2E2, #444);
1016 border-bottom-width: 0;
1021 @include mixins.lightDark(background-color, #F6F6F6, #333);
1024 .item-list-row:first-child {
1025 border-radius: 4px 4px 0 0;
1027 .item-list-row:last-child {
1028 border-radius: 0 0 4px 4px;
1029 border-bottom-width: 1.5px;
1031 .item-list-row:first-child:last-child {
1034 .item-list-row-toggle-all {
1037 .item-list-row:hover .item-list-row-toggle-all {
1038 visibility: visible;
1041 .status-indicator-active, .status-indicator-inactive {
1045 display: inline-block;
1047 .status-indicator-active {
1048 background-color: var(--color-positive);
1050 .status-indicator-inactive {
1051 background-color: var(--color-negative);
1054 .shortcut-container {
1055 background-color: rgba(0, 0, 0, 0.25);
1056 pointer-events: none;
1066 box-shadow: 0 0 4px 0 #FFF;
1071 padding: vars.$xxs vars.$xxs;
1075 background-color: #eee;
1077 border: 1px solid #b4b4b4;
1078 box-shadow: 0 1px 1px rgba(0, 0, 0, .2), 0 2px 0 0 rgba(255, 255, 255, .7) inset;
1085 background-color: var(--color-primary);
1094 width: math.div($btt-size, 1.5);
1095 height: math.div($btt-size, 1.5);
1096 margin-inline-end: 4px;
1100 border-radius: $btt-size;
1101 transition: all ease-in-out 180ms;
1106 width: $btt-size*3.4;
1107 opacity: 1 !important;
1110 width: $btt-size*3.4;
1114 vertical-align: top;
1119 // Sortable scroll boxes
1127 @include mixins.lightDark(border-color, #DDD, #000);
1130 @include mixins.lightDark(background-color, #EEE, #000);
1133 border-bottom: 1px solid;
1134 border-top: 1px solid;
1135 @include mixins.lightDark(border-color, #DDD, #000);
1137 @include mixins.lightDark(background-color, #FFF, #222);
1139 align-items: flex-start;
1146 @include mixins.lightDark(background-color, #f8f8f8, #333);
1149 align-items: center;
1163 padding: vars.$xs vars.$m;
1169 @include mixins.lightDark(color, #444, #FFF);
1175 text-decoration: none;
1179 input.scroll-box-search, .scroll-box-header-item {
1182 @include mixins.lightDark(border-color, #DDD, #000);
1183 @include mixins.lightDark(background-color, #FFF, #222);
1184 margin-bottom: -1px;
1185 border-radius: 3px 3px 0 0;
1193 .scroll-box-search + .scroll-box,
1194 .scroll-box-header-item + .scroll-box {
1195 border-radius: 0 0 3px 3px;
1198 .scroll-box.configured-option-list [data-action="add"] {
1201 .scroll-box.available-option-list [data-action="remove"],
1202 .scroll-box.available-option-list [data-action="move_up"],
1203 .scroll-box.available-option-list [data-action="move_down"],
1208 .scroll-box > li.empty-state {
1211 .scroll-box > li.empty-state:last-child {
1215 details.section-expander summary {
1216 border-top: 1px solid #DDD;
1217 @include mixins.lightDark(border-color, #DDD, #000);
1222 padding-block: vars.$xs;
1224 details.section-expander:open summary {
1225 margin-bottom: vars.$s;
1227 details.section-expander {
1228 border-bottom: 1px solid #DDD;
1229 @include mixins.lightDark(border-color, #DDD, #000);