﻿/* Fluent Design Theme for Golden Layout */

:root {
    /* Fluent Color Palette */
    --fluent-primary: #0078d4;
    --fluent-primary-hover: #106ebe;
    --fluent-primary-pressed: #005a9e;
    --fluent-surface-1: #ffffff;
    --fluent-surface-2: #f7f7f7;
    --fluent-surface-3: #efefef;
    --fluent-text-primary: #201f1e;
    --fluent-text-secondary: #605e5c;
    --fluent-divider: #d2d0ce;
    --fluent-stroke: #c5c5c5;
    --fluent-shadow-1: 0 1px 2px rgba(0, 0, 0, 0.05);
    --fluent-shadow-2: 0 4px 8px rgba(0, 0, 0, 0.1);
    --fluent-shadow-3: 0 8px 16px rgba(0, 0, 0, 0.15);
}

/* Main Layout Container */
.lm_goldenlayout {
    background-color: var(--fluent-surface-2) !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif !important;
    color: var(--fluent-text-primary) !important;
}

/* Headers/Tabs Container */
.lm_header {
    background-color: var(--fluent-surface-1) !important;
    border-bottom: 1px solid var(--fluent-divider) !important;
    box-shadow: var(--fluent-shadow-1) !important;
    height: 40px !important;
    padding: 0 !important;
}

/* Tab Styling */
.lm_tab {
    background-color: transparent !important;
    color: var(--fluent-text-secondary) !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    height: 40px !important;
    line-height: 40px !important;
    padding: 0 16px !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}

.lm_tab:hover {
    background-color: var(--fluent-surface-2) !important;
    color: var(--fluent-text-primary) !important;
}

.lm_tab.lm_active {
    background-color: transparent !important;
    color: var(--fluent-primary) !important;
    border-bottom-color: var(--fluent-primary) !important;
}

.lm_tab.lm_active:hover {
    background-color: var(--fluent-surface-2) !important;
}

/* Close Button */
/* Fluent Design Theme for Golden Layout */

:root {
    /* Fluent Color Palette */
    --fluent-primary: #0078d4;
    --fluent-primary-hover: #106ebe;
    --fluent-primary-pressed: #005a9e;
    --fluent-surface-1: #ffffff;
    --fluent-surface-2: #f7f7f7;
    --fluent-surface-3: #efefef;
    --fluent-text-primary: #201f1e;
    --fluent-text-secondary: #605e5c;
    --fluent-divider: #d2d0ce;
    --fluent-stroke: #c5c5c5;
    --fluent-shadow-1: 0 1px 2px rgba(0, 0, 0, 0.05);
    --fluent-shadow-2: 0 4px 8px rgba(0, 0, 0, 0.1);
    --fluent-shadow-3: 0 8px 16px rgba(0, 0, 0, 0.15);
}

/* Main Layout Container */
.lm_goldenlayout {
    background-color: var(--fluent-surface-2) !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif !important;
    color: var(--fluent-text-primary) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
    width: 100%;
    overflow: hidden !important;
}

/* Headers/Tabs Container */
.lm_header {
    background-color: var(--fluent-surface-1) !important;
    border-bottom: 1px solid var(--fluent-divider) !important;
    box-shadow: var(--fluent-shadow-1) !important;
    height: 40px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
}

/* Tab Styling */
.lm_tab {
    background-color: transparent !important;
    color: var(--fluent-text-secondary) !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    height: 40px !important;
    line-height: 1 !important;
    padding: 0 16px !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

.lm_tab:hover {
    background-color: var(--fluent-surface-2) !important;
    color: var(--fluent-text-primary) !important;
}

.lm_tab.lm_active {
    background-color: transparent !important;
    color: var(--fluent-primary) !important;
    border-bottom-color: var(--fluent-primary) !important;
}

.lm_tab.lm_active:hover {
    background-color: var(--fluent-surface-2) !important;
}

/* Close Button */
.lm_close_tab {
    color: var(--fluent-text-secondary) !important;
    opacity: 0.6 !important;
    font-size: 14px !important;
    transition: opacity 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    position: initial !important;
}


.lm_close_tab:hover {
    opacity: 1 !important;
    color: var(--fluent-primary) !important;
}

/* Content Area */
.lm_content {
    background-color: var(--fluent-surface-1) !important;
    overflow: hidden !important;
}

/* Item/Panel Borders */
.lm_item {
    /*box-sizing: content-box !important;*/
    /*border: 1px solid var(--fluent-divider) !important;*/
}

.lm_splitter {
    background-color: var(--fluent-divider) !important;
    transition: background-color 0.2s ease !important;
}

.lm_splitter:hover {
    background-color: var(--fluent-primary) !important;
}

/* Row and Column Splitters */
.lm_row > .lm_splitter {
    width: 1px !important;
}

.lm_column > .lm_splitter {
    height: 1px !important;
}

/* Focused Items */
.lm_focused .lm_header {
    background-color: var(--fluent-surface-1) !important;
    border-bottom-color: var(--fluent-primary) !important;
    border-bottom-width: 2px !important;
}

/* Stack Component */
.lm_stack {
    background-color: transparent !important;
}

/* Popout Icon */
.lm_popout {
    width: 16px !important;
    height: 16px !important;
    margin: 0 8px !important;
    opacity: 0.6 !important;
    transition: opacity 0.2s ease !important;
}

.lm_tab:hover .lm_popout {
    opacity: 1 !important;
    color: var(--fluent-primary) !important;
}

/* Title Text */
.lm_title {
    font-size: 13px !important;
    font-weight: 500 !important;
}

/* Settings Panel */
.lm_drop_indicator {
    background-color: var(--fluent-primary) !important;
    opacity: 0.2 !important;
}

/* Smooth Transitions */
.lm_header,
.lm_tab,
.lm_splitter {
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

/* Remove default shadows/borders for cleaner look */
.lm_goldenlayout > .lm_row > .lm_item,
.lm_goldenlayout > .lm_column > .lm_item {
    border: 1px solid var(--fluent-divider) !important;
    box-shadow: none !important;
}

/* Better spacing */
.lm_header {
    margin: 0 !important;
}

.lm_tab {
    position: relative !important;
}

/* Tab indicator accent */
.lm_tab.lm_active::before {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background-color: var(--fluent-primary) !important;
}

/* Reduce padding for compact look */
.lm_header .lm_controls {
    padding: 0 4px !important;
}

/* Active tab underline cleanup */
.lm_tab.lm_active {
    border-bottom: none !important;
}

/* Icon styling */
.lm_icon {
    font-size: 12px !important;
}