html, body {
    height: 100%;
}

app {
    display: block;
    height: 100%;
}

/*.header-logo {
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask: url('../images/Logo.svg');
    mask: url('../images/Logo.svg');
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    width: 28px;
    height: 24px;
}*/

.header-logo {
    background-image: url(../images/Logo.svg);
    width: 200px;
    height: 44px;
    background-position: left center;
    background-size: contain;
    background-repeat: no-repeat;
}

[data-ice-theme="dark"] .header-logo,
[data-bs-theme="dark"] .header-logo {
    background-image: url(../images/Logo-dark.svg);
}

#blazor-error-ui {
    background: inherit;
    bottom: 0;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 100001;
}

.workbench-operations-grid {
    height: 55vh;
    overflow: auto;
}

.workbench-operations-grid .dxbl-grid {
    height: 49vh !important;
}

.workbench-components-grid {
    height: 17.5vh;
}

.workbench-components-grid .dxbl-grid {
    height: 18vh !important;
}

/* WorkBench right action panel compact spacing */
.workbench-button-panel .dxbl-fl-group-content,
.workbench-button-panel .dxbl-fl-item-content,
.workbench-button-panel .dxbl-fl-item {
    padding: 2px !important;
}

.workbench-button-panel .workbench-operation-buttons .dxbl-fl-group-content,
.workbench-button-panel .workbench-operation-buttons .dxbl-fl-item-content {
    gap: 4px !important;
}

/* External Operation Delivery highlight group rows */
.eod-green-groups .dxbl-group-row,
.eod-green-groups .dxbl-grid-group-row {
    background-color: #e8f5e9 !important;
}

.eod-green-groups .dxbl-group-row .dxbl-group-cell,
.eod-green-groups .dxbl-grid-group-row .dxbl-group-cell {
    font-weight: 600;
}

.workorder-planning-main {
    --workorder-planning-gap: 8px;
    height: calc(100dvh - 140px);
    min-height: 0;
    overflow: hidden;
}

.workorder-planning-main,
.workorder-planning-main > .dxbl-fl-group-content,
.workorder-planning-grid-area,
.workorder-planning-grid-area > .dxbl-fl-group-content,
.workorder-planning-top-row,
.workorder-planning-top-row > .dxbl-fl-group-content,
.workorder-planning-bottom-row,
.workorder-planning-bottom-row > .dxbl-fl-group-content,
.workorder-planning-top-row > .dxbl-fl-group-content > .dxbl-fl-group,
.workorder-planning-bottom-row > .dxbl-fl-group-content > .dxbl-fl-group,
.workorder-planning-grid-panel,
.workorder-planning-grid-panel > .dxbl-fl-group-content,
.workorder-planning-grid-panel .dxbl-fl-item,
.workorder-planning-grid-panel .dxbl-fl-item-content {
    min-height: 0 !important;
}

.workorder-planning-main > .dxbl-fl-group-content {
    display: flex;
    flex-direction: column;
    gap: var(--workorder-planning-gap);
    height: 100%;
    overflow: hidden;
}

.workorder-planning-filter {
    flex: 0 0 auto;
    overflow: visible;
}

.workorder-planning-grid-area {
    flex: 1 1 auto !important;
    overflow: hidden;
}

.workorder-planning-grid-area > .dxbl-fl-group-content {
    display: grid;
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--workorder-planning-gap);
    height: 100%;
    overflow: hidden;
}

.workorder-planning-top-row,
.workorder-planning-bottom-row {
    height: 100% !important;
    max-height: 100% !important;
    overflow: hidden;
}

.workorder-planning-top-row > .dxbl-fl-group-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--workorder-planning-gap);
    height: 100%;
    overflow: hidden;
}

.workorder-planning-bottom-row > .dxbl-fl-group-content,
.workorder-planning-top-row > .dxbl-fl-group-content > .dxbl-fl-group,
.workorder-planning-bottom-row > .dxbl-fl-group-content > .dxbl-fl-group {
    height: 100%;
    overflow: hidden;
}

.workorder-planning-top-row .workorder-planning-planned-panel {
    order: 2;
}

.workorder-planning-top-row .workorder-planning-unplanned-panel {
    order: 1;
}

.workorder-planning-grid-panel {
    height: 100%;
    overflow: hidden;
}

.workorder-planning-grid-panel > .dxbl-fl-group-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.workorder-planning-analysis-panel > .dxbl-fl-group-content {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 6px;
    height: 100%;
    overflow: hidden;
}

.workorder-planning-analysis-panel > .dxbl-fl-group-content > .dxbl-fl-group,
.workorder-planning-analysis-panel > .dxbl-fl-group-content > .dxbl-fl-item {
    min-height: 0 !important;
}

.workorder-planning-grid-panel .dxbl-grid,
.workorder-planning-grid-panel .dxbl-grid-root,
.workorder-planning-grid-panel .dxbl-grid-table,
.workorder-planning-grid-panel .workorder-planning-pivot,
.workorder-planning-grid-panel .workorder-planning-pivot-table,
.workorder-planning-grid-panel .dxbl-pivot-grid,
.workorder-planning-grid-panel .dxbl-pivotgrid,
.workorder-planning-grid-panel .dxbl-pivottable {
    height: 100% !important;
    min-height: 0 !important;
}

.workorder-planning-grid-panel .dxbl-grid,
.workorder-planning-grid-panel .workorder-planning-pivot-table,
.workorder-planning-grid-panel .dxbl-pivot-grid,
.workorder-planning-grid-panel .dxbl-pivotgrid,
.workorder-planning-grid-panel .dxbl-pivottable {
    overflow: auto;
}

.workorder-planning-pivot {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 6px;
    height: 100%;
    min-height: 0;
}

.workorder-planning-pivot-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.workorder-planning-pivot-record-count {
    font-size: 12px;
    opacity: 0.8;
}

.workorder-planning-pivot-table {
    min-height: 0;
    overflow: auto;
}

.workorder-pivot-progress-cell {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 120px;
}

.workorder-pivot-progress-track {
    position: relative;
    flex: 1 1 auto;
    min-width: 72px;
    height: 8px;
    border-radius: 999px;
    overflow: hidden;
    background-color: var(--dxbl-disabled-color, rgba(0, 0, 0, 0.15));
}

.workorder-pivot-progress-fill {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2383e2 0%, #20a464 100%);
}

.workorder-pivot-progress-text {
    min-width: 50px;
    text-align: right;
    white-space: nowrap;
    font-size: 11px;
}

@media (max-width: 1200px) {
    .workorder-planning-main {
        height: calc(100dvh - 120px);
    }
}

@media (max-width: 992px) {
    .workorder-planning-top-row > .dxbl-fl-group-content {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}

@media (max-width: 768px) {
    .workorder-planning-main {
        height: calc(100dvh - 96px);
    }
}
