@lonli-lokli/react-mosaic-component
Version:
A React Tiling Window Manager
800 lines (799 loc) • 23.6 kB
CSS
/**
* @license
* Copyright 2019 Kevin Verdieck, originally developed at Palantir Technologies, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
.mosaic {
height: 100%;
width: 100%;
}
.mosaic,
.mosaic > * {
box-sizing: border-box;
}
.mosaic .mosaic-zero-state {
position: absolute;
top: 6px;
right: 6px;
bottom: 6px;
left: 6px;
width: auto;
height: auto;
z-index: 1;
}
.mosaic-root {
position: absolute;
top: 3px;
right: 3px;
bottom: 3px;
left: 3px;
}
.mosaic-split {
position: absolute;
z-index: 1;
touch-action: none;
}
.mosaic-split:hover {
background: black;
}
.mosaic-split .mosaic-split-line {
position: absolute;
}
.mosaic-split.-row {
margin-left: -3px;
width: 6px;
cursor: ew-resize;
}
.mosaic-split.-row .mosaic-split-line {
top: 0;
bottom: 0;
left: 3px;
right: 3px;
}
.mosaic-split.-column {
margin-top: -3px;
height: 6px;
cursor: ns-resize;
}
.mosaic-split.-column .mosaic-split-line {
top: 3px;
bottom: 3px;
left: 0;
right: 0;
}
.mosaic-tile {
position: absolute;
margin: 3px;
}
.mosaic-tile > * {
height: 100%;
width: 100%;
}
.mosaic-drop-target {
position: relative;
}
.mosaic-drop-target.drop-target-hover .drop-target-container {
display: block;
}
.mosaic-drop-target.mosaic > .drop-target-container .drop-target.left {
right: calc(100% - 10px );
}
.mosaic-drop-target.mosaic > .drop-target-container .drop-target.right {
left: calc(100% - 10px );
}
.mosaic-drop-target.mosaic > .drop-target-container .drop-target.bottom {
top: calc(100% - 10px );
}
.mosaic-drop-target.mosaic > .drop-target-container .drop-target.top {
bottom: calc(100% - 10px );
}
.mosaic-drop-target .drop-target-container {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: none;
}
.mosaic-drop-target .drop-target-container.-dragging {
display: block;
}
.mosaic-drop-target .drop-target-container .drop-target {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(0, 0, 0, 0.2);
border: 2px solid black;
opacity: 0;
z-index: 5;
}
.mosaic-drop-target .drop-target-container .drop-target.left {
right: calc(100% - 30% );
}
.mosaic-drop-target .drop-target-container .drop-target.right {
left: calc(100% - 30% );
}
.mosaic-drop-target .drop-target-container .drop-target.bottom {
top: calc(100% - 30% );
}
.mosaic-drop-target .drop-target-container .drop-target.top {
bottom: calc(100% - 30% );
}
.mosaic-drop-target .drop-target-container .drop-target.drop-target-hover {
opacity: 1;
}
.mosaic-drop-target .drop-target-container .drop-target.drop-target-hover.left {
right: calc(100% - 50% );
}
.mosaic-drop-target .drop-target-container .drop-target.drop-target-hover.right {
left: calc(100% - 50% );
}
.mosaic-drop-target .drop-target-container .drop-target.drop-target-hover.bottom {
top: calc(100% - 50% );
}
.mosaic-drop-target .drop-target-container .drop-target.drop-target-hover.top {
bottom: calc(100% - 50% );
}
.mosaic-tabs-container {
position: absolute;
display: flex;
flex-direction: column;
overflow: hidden;
}
.mosaic-tabs-container .mosaic-preview {
height: 100%;
width: 100%;
position: absolute;
z-index: 0;
border: 1px solid black;
max-height: 400px;
pointer-events: none;
opacity: 0;
visibility: hidden;
}
.mosaic-tabs-container .mosaic-tab-bar {
display: flex;
align-items: center;
justify-content: space-between;
position: relative;
flex-shrink: 0;
z-index: 4;
gap: 4px;
}
.mosaic-tabs-container .mosaic-tab-bar-tabs {
display: flex;
align-items: center;
gap: 4px;
flex: 1;
min-width: 0;
overflow-x: hidden;
overflow-y: hidden;
scroll-behavior: smooth;
-webkit-overflow-scrolling: touch;
scrollbar-width: thin;
scrollbar-color: transparent transparent;
}
.mosaic-tabs-container .mosaic-tab-bar-tabs:hover {
overflow-x: auto;
}
.mosaic-tabs-container .mosaic-tab-bar-tabs::-webkit-scrollbar {
height: 8px;
}
.mosaic-tabs-container .mosaic-tab-bar-tabs::-webkit-scrollbar-track {
background: transparent;
}
.mosaic-tabs-container .mosaic-tab-bar-tabs::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.3);
border-radius: 4px;
transition: background 0.2s ease;
}
.mosaic-tabs-container .mosaic-tab-bar-tabs::-webkit-scrollbar-thumb:hover {
background: rgba(0, 0, 0, 0.5);
}
.mosaic-tabs-container .mosaic-tab-bar-tabs:hover {
scrollbar-color: rgba(0, 0, 0, 0.3) transparent;
}
.mosaic-tabs-container .mosaic-tab-bar-controls {
display: flex;
align-items: center;
gap: 4px;
flex-shrink: 0;
}
.mosaic-tabs-container .mosaic-tab-drag-handle {
flex: 1;
min-width: 20px;
height: 100%;
cursor: move;
display: flex;
align-items: center;
justify-content: center;
transition: background-color 0.15s ease;
}
.mosaic-tabs-container .mosaic-tab-drag-handle:hover {
background-color: rgba(0, 0, 0, 0.05);
}
.mosaic-tabs-container .mosaic-tab-drag-handle:active {
background-color: rgba(0, 0, 0, 0.1);
}
.mosaic-tabs-container .mosaic-tab-toolbar-controls {
display: flex;
align-items: center;
gap: 2px;
flex-shrink: 0;
}
.mosaic-tabs-container .mosaic-tile {
position: relative;
flex: 1;
height: 0;
overflow: hidden;
z-index: 1;
}
@-webkit-keyframes pulse {
0% {
-webkit-transform: scale(1);
transform: scale(1);
opacity: 0.9;
}
50% {
-webkit-transform: scale(1.05);
transform: scale(1.05);
opacity: 1;
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
opacity: 0.9;
}
}
@keyframes pulse {
0% {
-webkit-transform: scale(1);
transform: scale(1);
opacity: 0.9;
}
50% {
-webkit-transform: scale(1.05);
transform: scale(1.05);
opacity: 1;
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
opacity: 0.9;
}
}
.mosaic-tab-button {
background: transparent;
border: none;
padding: 0;
margin: 0;
font-size: 12px;
font-weight: normal;
cursor: pointer;
outline: none ;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
transition: color 0.1s ease;
display: flex;
align-items: center;
gap: 4px;
}
.mosaic-tab-button.-dragging {
opacity: 0.5;
}
.mosaic-tab-button:focus {
outline: none ;
}
.mosaic-tab-button.focus-visible {
outline: 2px solid currentColor ;
outline-offset: 2px;
}
.mosaic-tab-button .mosaic-tab-button-content {
display: flex;
align-items: center;
}
.mosaic-tab-button .mosaic-tab-close-button {
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
border-radius: 2px;
margin-left: 2px;
opacity: 0.5;
transition: all 0.1s ease;
cursor: pointer;
font-size: 10px;
}
.mosaic-tab-button .mosaic-tab-close-button:hover {
opacity: 1;
}
.mosaic-tab-button .mosaic-tab-close-button.-cannot-close {
opacity: 0.3;
cursor: not-allowed;
}
.mosaic-tab-button .mosaic-tab-close-button.-cannot-close:hover {
opacity: 0.3;
background: transparent;
}
.mosaic-tab-add-button {
background: transparent;
border: none;
padding: 4px 8px;
margin-left: 8px;
cursor: pointer;
font-size: 14px;
font-weight: normal;
outline: none ;
}
.mosaic-tab-add-button:focus {
outline: none ;
}
.mosaic-tab-add-button.focus-visible {
outline: 2px solid currentColor ;
outline-offset: 2px;
}
.tab-drop-target {
height: 100%;
min-height: 28px;
position: relative;
background: transparent;
transition: all 0.2s ease;
flex-shrink: 0;
cursor: pointer;
display: none;
align-items: center;
justify-content: center;
z-index: 1000;
width: 2px;
}
.tab-drop-target.tab-drop-target-hover {
width: 40px;
}
.tab-drop-target.dragging {
display: flex;
width: 20px;
}
.tab-drop-target .tab-drop-placeholder {
width: 32px;
height: 24px;
background: linear-gradient(135deg, #007acc, #0099ff);
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 2px 8px rgba(0, 122, 204, 0.3);
border: 2px dashed white;
opacity: 0.9;
-webkit-animation: pulse 1s infinite;
animation: pulse 1s infinite;
}
.tab-drop-target .tab-drop-placeholder .tab-drop-arrow {
width: 0;
height: 0;
border-left: 4px solid transparent;
border-right: 4px solid transparent;
border-top: 6px solid white;
opacity: 0.8;
}
.tab-drop-target .tab-drop-indicator {
width: 2px;
height: 20px;
border-radius: 1px;
transition: all 0.2s ease;
}
.tab-drop-target .tab-drop-indicator.can-drop {
background: rgba(0, 122, 204, 0.2);
}
.tab-drop-target .tab-drop-indicator.default {
background: rgba(0, 0, 0, 0.1);
}
@keyframes pulse {
0% {
-webkit-transform: scale(1);
transform: scale(1);
}
50% {
-webkit-transform: scale(1.05);
transform: scale(1.05);
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
}
}
.mosaic-window,
.mosaic-preview {
position: relative;
display: flex;
flex-direction: column;
overflow: hidden;
box-shadow: 0 0 1px rgba(0, 0, 0, 0.2);
}
.mosaic-window .mosaic-window-toolbar,
.mosaic-preview .mosaic-window-toolbar {
z-index: 4;
display: flex;
justify-content: space-between;
align-items: center;
flex-shrink: 0;
height: 30px;
background: white;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}
.mosaic-window .mosaic-window-toolbar.draggable,
.mosaic-preview .mosaic-window-toolbar.draggable {
cursor: move;
}
.mosaic-window .mosaic-window-title,
.mosaic-preview .mosaic-window-title {
display: flex;
align-items: center;
height: 100%;
padding-left: 15px;
flex: 1;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
min-height: 18px;
}
.mosaic-window .mosaic-window-controls,
.mosaic-preview .mosaic-window-controls {
display: flex;
height: 100%;
}
.mosaic-window .mosaic-window-controls .separator,
.mosaic-preview .mosaic-window-controls .separator {
height: 20px;
border-left: 1px solid black;
margin: 5px 4px;
}
.mosaic-window .mosaic-window-body,
.mosaic-preview .mosaic-window-body {
position: relative;
flex: 1;
height: 0;
background: white;
z-index: 1;
overflow: hidden;
}
.mosaic-window .mosaic-window-additional-actions-bar,
.mosaic-preview .mosaic-window-additional-actions-bar {
position: absolute;
top: 30px;
right: 0;
bottom: initial;
left: 0;
height: 0;
overflow: hidden;
background: white;
justify-content: flex-end;
display: flex;
z-index: 3;
}
.mosaic-window .mosaic-window-additional-actions-bar .bp5-button,
.mosaic-preview .mosaic-window-additional-actions-bar .bp5-button {
margin: 0;
}
.mosaic-window .mosaic-window-additional-actions-bar .bp5-button:after,
.mosaic-preview .mosaic-window-additional-actions-bar .bp5-button:after {
display: none;
}
.mosaic-window .mosaic-window-body-overlay,
.mosaic-preview .mosaic-window-body-overlay {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
opacity: 0;
background: white;
display: none;
z-index: 2;
}
.mosaic-window.additional-controls-open .mosaic-window-additional-actions-bar,
.mosaic-preview.additional-controls-open .mosaic-window-additional-actions-bar {
height: 30px;
}
.mosaic-window.additional-controls-open .mosaic-window-body-overlay,
.mosaic-preview.additional-controls-open .mosaic-window-body-overlay {
display: block;
}
.mosaic-window .mosaic-preview,
.mosaic-preview .mosaic-preview {
height: 100%;
width: 100%;
position: absolute;
z-index: 0;
border: 1px solid black;
max-height: 400px;
}
.mosaic-window .mosaic-preview .mosaic-window-body,
.mosaic-preview .mosaic-preview .mosaic-window-body {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.mosaic-window .mosaic-preview h4,
.mosaic-preview .mosaic-preview h4 {
margin-bottom: 10px;
}
.mosaic:not(.mosaic-blueprint-theme) .mosaic-default-control.close-button:before {
content: 'Close';
}
.mosaic:not(.mosaic-blueprint-theme) .mosaic-default-control.split-button:before {
content: 'Split';
}
.mosaic:not(.mosaic-blueprint-theme) .mosaic-default-control.replace-button:before {
content: 'Replace';
}
.mosaic:not(.mosaic-blueprint-theme) .mosaic-default-control.expand-button:before {
content: 'Expand';
}
/*
* Copyright 2023 Palantir Technologies, Inc. All rights reserved.
*/
.mosaic.mosaic-blueprint-theme {
background: #abb3bf;
}
.mosaic.mosaic-blueprint-theme .mosaic-zero-state {
background: #e5e8eb;
border-radius: 2px;
box-shadow: 0 0 0 1px rgba(17, 20, 24, 0.15);
}
.mosaic.mosaic-blueprint-theme .mosaic-zero-state .default-zero-state-icon {
font-size: 120px;
}
.mosaic.mosaic-blueprint-theme .mosaic-split:hover {
background: none;
}
.mosaic.mosaic-blueprint-theme .mosaic-split:hover .mosaic-split-line {
box-shadow: 0 0 0 1px #4c90f0;
}
.mosaic.mosaic-blueprint-theme.mosaic-drop-target .drop-target-container .drop-target,
.mosaic.mosaic-blueprint-theme .mosaic-drop-target .drop-target-container .drop-target {
background: rgba(138, 187, 255, 0.2);
border: 2px solid #4c90f0;
transition: opacity 100ms;
border-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-window,
.mosaic.mosaic-blueprint-theme .mosaic-preview {
box-shadow: 0 0 0 1px rgba(17, 20, 24, 0.15);
border-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-toolbar,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-toolbar {
box-shadow: 0 1px 1px rgba(17, 20, 24, 0.15);
border-top-right-radius: 2px;
border-top-left-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-toolbar.draggable:hover,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-toolbar.draggable:hover {
background: linear-gradient(to bottom, #ffffff, #f6f7f9);
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-toolbar.draggable:hover .mosaic-window-title,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-toolbar.draggable:hover .mosaic-window-title {
color: #111418;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-title,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-title {
font-weight: 600;
color: #404854;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-controls .separator,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-controls .separator {
border-left: 1px solid #dce0e5;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-controls .bp5-button,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-controls .bp5-button,
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-controls .bp5-button:before,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-controls .bp5-button:before {
color: #738091;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .default-preview-icon,
.mosaic.mosaic-blueprint-theme .mosaic-preview .default-preview-icon {
font-size: 72px;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-body,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-body {
border-top-width: 0;
background: #f6f7f9;
border-bottom-right-radius: 2px;
border-bottom-left-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-additional-actions-bar,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-additional-actions-bar {
transition: height 250ms;
box-shadow: 0 1px 1px rgba(17, 20, 24, 0.15);
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-additional-actions-bar .bp5-button,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-additional-actions-bar .bp5-button,
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-window-additional-actions-bar .bp5-button:before,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-window-additional-actions-bar .bp5-button:before {
color: #738091;
}
.mosaic.mosaic-blueprint-theme .mosaic-window.additional-controls-open .mosaic-window-toolbar,
.mosaic.mosaic-blueprint-theme .mosaic-preview.additional-controls-open .mosaic-window-toolbar {
box-shadow: 0 1px 0 0 0 0 1px rgba(17, 20, 24, 0.15);
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-preview,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-preview {
border: 1px solid #8f99a8;
}
.mosaic.mosaic-blueprint-theme .mosaic-window .mosaic-preview h4,
.mosaic.mosaic-blueprint-theme .mosaic-preview .mosaic-preview h4 {
color: #404854;
}
.mosaic.mosaic-blueprint-theme .mosaic-tabs-container {
box-shadow: 0 0 0 1px rgba(17, 20, 24, 0.15);
border-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-tabs-container .mosaic-tab-bar {
box-shadow: 0 1px 1px rgba(17, 20, 24, 0.15);
border-top-right-radius: 2px;
border-top-left-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-tabs-container .mosaic-tab-drag-handle:hover {
background: linear-gradient(to bottom, #ffffff, #f6f7f9);
}
.mosaic.mosaic-blueprint-theme .mosaic-tabs-container .mosaic-tile {
background: #f6f7f9;
border-bottom-right-radius: 2px;
border-bottom-left-radius: 2px;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button {
color: #5f6b7c;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button:hover {
color: #404854;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button.-active {
color: #404854;
border-bottom-color: #2d72d2;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button .mosaic-tab-close-button {
color: #5f6b7c;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button .mosaic-tab-close-button:hover {
background: rgba(0, 0, 0, 0.1);
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button .mosaic-tab-close-button.-can-close:hover {
color: #404854;
background: rgba(205, 66, 70, 0.1);
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-button .mosaic-tab-close-button.-cannot-close {
color: #8f99a8;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-add-button {
color: #5f6b7c;
}
.mosaic.mosaic-blueprint-theme .mosaic-tab-add-button:hover {
color: #2d72d2;
}
.mosaic.mosaic-blueprint-theme.bp5-dark {
background: #252a31;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-zero-state {
background: #383e47;
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-split:hover .mosaic-split-line {
box-shadow: 0 0 0 1px #2d72d2;
}
.mosaic.mosaic-blueprint-theme.bp5-dark.mosaic-drop-target .drop-target-container .drop-target,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-drop-target .drop-target-container .drop-target {
background: rgba(33, 93, 176, 0.2);
border-color: #2d72d2;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window-toolbar,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window-additional-actions-bar {
background: #383e47;
box-shadow: 0 1px 1px rgba(17, 20, 24, 0.4);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview {
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-toolbar.draggable:hover,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-toolbar.draggable:hover {
background: linear-gradient(to bottom, #404854, #383e47);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-toolbar.draggable:hover .mosaic-window-title,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-toolbar.draggable:hover .mosaic-window-title {
color: #ffffff;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-title,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-title {
color: #dce0e5;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-controls .separator,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-controls .separator {
border-color: #5f6b7c;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-controls .bp5-button,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-controls .bp5-button,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-controls .bp5-button:before,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-controls .bp5-button:before {
color: #abb3bf;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-body,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-body {
background: #1c2127;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-additional-actions-bar .bp5-button,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-additional-actions-bar .bp5-button,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-window-additional-actions-bar .bp5-button:before,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-window-additional-actions-bar .bp5-button:before {
color: #c5cbd3;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window.additional-controls-open .mosaic-window-toolbar,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview.additional-controls-open .mosaic-window-toolbar {
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-preview,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-preview {
border-color: #5f6b7c;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-window .mosaic-preview h4,
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-preview .mosaic-preview h4 {
color: #edeff2;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tabs-container {
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tabs-container .mosaic-tab-bar {
box-shadow: 0 1px 1px rgba(17, 20, 24, 0.4);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tabs-container .mosaic-tab-drag-handle:hover {
background: linear-gradient(to bottom, #404854, #383e47);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tabs-container .mosaic-tile {
background: #1c2127;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button {
color: #abb3bf;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button:hover {
color: #dce0e5;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button.-active {
color: #dce0e5;
border-bottom-color: #2d72d2;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button .mosaic-tab-close-button {
color: #abb3bf;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button .mosaic-tab-close-button:hover {
background: rgba(255, 255, 255, 0.1);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button .mosaic-tab-close-button.-can-close:hover {
color: #dce0e5;
background: rgba(205, 66, 70, 0.2);
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-button .mosaic-tab-close-button.-cannot-close {
color: #738091;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-add-button {
color: #abb3bf;
}
.mosaic.mosaic-blueprint-theme.bp5-dark .mosaic-tab-add-button:hover {
color: #2d72d2;
}