:root {
    --dara-layout-header: #171a1d;
    --dara-layout-header-border: #343a40;
    --dara-layout-tab: #202428;
    --dara-layout-tab-hover: #292e33;
    --dara-layout-text: #c7cdd3;
    --dara-layout-splitter: #353b41;
    --dara-layout-grip: #77818b;
    --dara-layout-splitter-hover: #aeb6be;
}

/* Empty workbench */
.lm_stack > .lm_items:empty {
    position: relative;
    overflow: hidden;
    background-color: #090c0e;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.012) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.012) 1px, transparent 1px);
    background-size: 32px 32px, 32px 32px;
}

.lm_stack.dara-main-stack > .lm_items:empty {
    background-image:
        radial-gradient(circle at center, rgba(111, 126, 138, 0.08), transparent 42%),
        linear-gradient(rgba(255, 255, 255, 0.012) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.012) 1px, transparent 1px);
    background-size: auto, 32px 32px, 32px 32px;
}

.lm_stack.dara-main-stack > .lm_items:empty::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: clamp(180px, 30%, 340px);
    aspect-ratio: 778 / 799;
    background: url("../images/daraLogo.png") center / contain no-repeat;
    opacity: 0.055;
    filter: drop-shadow(0 0 24px rgba(164, 180, 192, 0.12));
    transform: translate(-50%, -54%);
    pointer-events: none;
}

/* Stack chrome */
.lm_header {
    height: 22px;
    background: var(--dara-layout-header);
    border-bottom: 1px solid var(--dara-layout-header-border);
    box-sizing: border-box;
}

.lm_header .lm_tabs {
    height: 100%;
}

.lm_header .lm_tab {
    height: 21px;
    margin-top: 0;
    padding-top: 3px;
    color: var(--dara-layout-text);
    background: transparent;
    border-right: 1px solid #2c3136;
    box-sizing: border-box !important;
    box-shadow: none;
    transition: background-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}

.lm_header .lm_tab:hover {
    color: #fff;
    background: var(--dara-layout-tab-hover);
    filter: none;
    opacity: 1;
}

.lm_header .lm_tab.lm_active,
.lm_header .lm_tab.lm_active:hover {
    color: #fff;
    background: var(--dara-layout-tab);
    box-shadow: none;
    filter: none;
    opacity: 1;
    padding-bottom: 3px;
}

.lm_header .lm_tab .lm_close_tab {
    top: 50% !important;
    bottom: auto;
    height: 12px !important;
    transform: translateY(-50%);
}

/* Persistent resize rails. The existing drag handles remain wider than the
   visible rail, so the divider is easy to acquire without looking heavy. */
.lm_splitter {
    overflow: visible;
    background: var(--dara-layout-header);
    opacity: 1;
    transition: background-color 140ms ease;
}

.lm_splitter::before,
.lm_splitter::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 1;
}

.lm_splitter.lm_horizontal::before {
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: var(--dara-layout-splitter);
    transform: translateX(-50%);
}

.lm_splitter.lm_horizontal::after {
    top: 50%;
    left: 50%;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    color: var(--dara-layout-grip);
    background: currentColor;
    box-shadow: 0 -5px currentColor, 0 5px currentColor;
    transform: translate(-50%, -50%);
}

.lm_splitter.lm_vertical::before {
    top: 50%;
    right: 0;
    left: 0;
    height: 1px;
    background: var(--dara-layout-splitter);
    transform: translateY(-50%);
}

.lm_splitter.lm_vertical::after {
    top: 50%;
    left: 50%;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    color: var(--dara-layout-grip);
    background: currentColor;
    box-shadow: -5px 0 currentColor, 5px 0 currentColor;
    transform: translate(-50%, -50%);
}

.lm_splitter:hover,
.lm_splitter.lm_dragging {
    background: #242a2f;
    opacity: 1;
}

.lm_splitter:hover::before,
.lm_splitter.lm_dragging::before {
    background: var(--dara-layout-splitter-hover);
}

.lm_splitter:hover::after,
.lm_splitter.lm_dragging::after {
    color: var(--dara-layout-splitter-hover);
}

@media (pointer: coarse) {
    .lm_splitter.lm_horizontal .lm_drag_handle {
        width: 18px;
        left: -6px;
    }

    .lm_splitter.lm_vertical .lm_drag_handle {
        height: 18px;
        top: -6px;
    }
}
