/*
 * DGxOne UI v25 — Shell Foundation
 * Owns only application geometry.
 * Workspace-specific design remains separate.
 */

html,
body {
    width: 100%;
    height: 100%;
}

body.dgx-v2 {
    min-height: 100vh;
    overflow: hidden;
}

body.dgx-v2 .dgx-app-shell,
body.dgx-v2 .dgx-shell,
body.dgx-v2 #app {
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
}

/* Main application frame */

body.dgx-v2 .dgx-app-shell,
body.dgx-v2 .dgx-shell {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
}

/* Sidebar remains independently scrollable */

body.dgx-v2 .dgx-sidebar {
    min-width: 0;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
}

/* Top bar must never overlap a workspace */

body.dgx-v2 .dgx-topbar {
    position: relative;
    min-width: 0;
    z-index: 20;
}

/* Workspace owns all remaining available space */

body.dgx-v2 .dgx-workspace-host,
body.dgx-v2 .dgx-main,
body.dgx-v2 main {
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

body.dgx-v2 #workspaceCanvas,
body.dgx-v2 .dgx-workspace-canvas {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Dynamically loaded workspace root */

body.dgx-v2 #workspaceCanvas > * {
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
}

/* Prevent legacy fixed layers from covering the shell */

body.dgx-v2 .dgx-command-overlay,
body.dgx-v2 .dgx-intelligence-drawer {
    max-height: calc(100vh - 24px);
}

/* Compact desktop spacing */

@media (min-width: 901px) {
    body.dgx-v2 .dgx-topbar {
        min-height: 58px;
    }
}

/* Responsive shell */

@media (max-width: 900px) {
    body.dgx-v2 .dgx-app-shell,
    body.dgx-v2 .dgx-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    body.dgx-v2 .dgx-sidebar {
        position: fixed;
        inset: 0 auto 0 0;
        z-index: 100;
    }
}

/* ============================================================
   DGxOne v26 — Docked Intelligence Sidebar
   Active only in the DGx Command workspace.
   ============================================================ */

body.dgx-v2 .dgx-app {
    display: grid;
    grid-template-columns:
        auto
        minmax(0, 1fr);
    grid-template-rows:
        auto
        minmax(0, 1fr);

    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;

    overflow: hidden;
}

body.dgx-v2 #topbarHost {
    grid-column: 1 / -1;
    grid-row: 1;

    min-width: 0;
    min-height: 0;
}

body.dgx-v2 #sidebarHost {
    grid-column: 1;
    grid-row: 2;

    min-width: 0;
    min-height: 0;
}

body.dgx-v2 .dgx-main {
    grid-column: 2;
    grid-row: 2;

    min-width: 0;
    min-height: 0;
}

body.dgx-v2 #brainPanelHost {
    display: none;

    grid-column: 3;
    grid-row: 2;

    min-width: 0;
    min-height: 0;

    overflow: hidden;
}

body.dgx-v2[data-active-workspace="brain"] .dgx-app,
body.dgx-v2[data-kernel-workspace="brain"] .dgx-app {
    grid-template-columns:
        auto
        minmax(0, 1fr)
        clamp(260px, 19vw, 310px);
}

body.dgx-v2[data-active-workspace="brain"]
#brainPanelHost,
body.dgx-v2[data-kernel-workspace="brain"]
#brainPanelHost {
    display: block;
}

/* Prevent the old Mission Operations panel from occupying the dock. */

body.dgx-v2[data-active-workspace="brain"]
#brainPanelHost
#dgxMissionDock,
body.dgx-v2[data-kernel-workspace="brain"]
#brainPanelHost
#dgxMissionDock {
    display: none !important;
}

@media (max-width: 1180px) {
    body.dgx-v2[data-active-workspace="brain"] .dgx-app,
    body.dgx-v2[data-kernel-workspace="brain"] .dgx-app {
        grid-template-columns:
            auto
            minmax(0, 1fr)
            250px;
    }
}

@media (max-width: 980px) {
    body.dgx-v2[data-active-workspace="brain"] .dgx-app,
    body.dgx-v2[data-kernel-workspace="brain"] .dgx-app {
        grid-template-columns:
            auto
            minmax(0, 1fr);
    }

    body.dgx-v2[data-active-workspace="brain"]
    #brainPanelHost,
    body.dgx-v2[data-kernel-workspace="brain"]
    #brainPanelHost {
        display: none;
    }
}



/* DGxOne Contextual Intelligence Shell v38 */

/*
 * DGx Command owns the complete center workspace.
 * Intelligence is an activity overlay, not a permanent column.
 */

body.dgx-v2[data-active-workspace="brain"] .dgx-app,
body.dgx-v2[data-kernel-workspace="brain"] .dgx-app {
    grid-template-columns:
        auto
        minmax(0, 1fr) !important;
}

body.dgx-v2[data-active-workspace="brain"] .dgx-main,
body.dgx-v2[data-kernel-workspace="brain"] .dgx-main {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
}

/* Override the legacy global force-visible rule. */

body.dgx-v2[data-active-workspace="brain"]
#brainPanelHost,
body.dgx-v2[data-kernel-workspace="brain"]
#brainPanelHost {
    position: fixed !important;
    top: 72px !important;
    right: 18px !important;
    bottom: 18px !important;
    left: auto !important;
    z-index: 80 !important;

    display: none !important;
    width: min(340px, calc(100vw - 36px)) !important;
    min-width: 0 !important;
    min-height: 0 !important;

    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/*
 * Runtime activity adds is-active. Only then does the
 * Intelligence workspace appear.
 */

body.dgx-v2[data-active-workspace="brain"]
#brainPanelHost:has(#dgxIntelligenceDrawer.is-active),
body.dgx-v2[data-kernel-workspace="brain"]
#brainPanelHost:has(#dgxIntelligenceDrawer.is-active) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

body.dgx-v2[data-active-workspace="brain"]
#dgxIntelligenceDrawer.is-active,
body.dgx-v2[data-kernel-workspace="brain"]
#dgxIntelligenceDrawer.is-active {
    position: relative !important;
    inset: auto !important;

    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;

    border: 1px solid rgba(105, 190, 238, .16) !important;
    border-radius: 16px !important;

    background:
        linear-gradient(
            155deg,
            rgba(13, 28, 43, .97),
            rgba(6, 15, 26, .96)
        ) !important;

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .04),
        0 24px 70px rgba(0, 4, 14, .46) !important;

    opacity: 1 !important;
    transform: none !important;
    backdrop-filter: blur(28px) saturate(125%) !important;
    -webkit-backdrop-filter:
        blur(28px) saturate(125%) !important;
}

/* Never reserve drawer space on smaller screens. */

@media (max-width: 980px) {
    body.dgx-v2[data-active-workspace="brain"] .dgx-app,
    body.dgx-v2[data-kernel-workspace="brain"] .dgx-app {
        grid-template-columns:
            auto
            minmax(0, 1fr) !important;
    }

    body.dgx-v2[data-active-workspace="brain"]
    #brainPanelHost,
    body.dgx-v2[data-kernel-workspace="brain"]
    #brainPanelHost {
        top: 66px !important;
        right: 10px !important;
        bottom: 10px !important;
        width: min(360px, calc(100vw - 20px)) !important;
    }
}
