/* DGX OS Runtime / Mission Graph v2 */
.dgx-mission-map-shell {
    min-height: 360px !important;
    padding: 22px !important;
    overflow: hidden !important;
}

.dgx-mission-graph-v2 {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(96px, 1fr)) !important;
    grid-template-rows: 116px 116px !important;
    gap: 38px 28px !important;
    margin-top: 24px !important;
    padding: 12px 8px 0 !important;
}

.dgx-mission-graph-v2 .mission-node {
    width: 100% !important;
    max-width: 118px !important;
    height: 104px !important;
    justify-self: center !important;
    border-radius: 14px !important;
    border: 1px solid rgba(125,211,252,.22) !important;
    background: rgba(5,10,24,.80) !important;
    display: grid !important;
    place-items: center !important;
    padding: 9px !important;
    text-align: center !important;
    z-index: 3 !important;
    cursor: pointer !important;
    transition: .25s ease !important;
}

.dgx-mission-graph-v2 .mission-node em {
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    font-style: normal !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    color: #7dd3fc !important;
    border: 1px solid rgba(125,211,252,.45) !important;
    background: rgba(2,6,23,.75) !important;
}

.dgx-mission-graph-v2 .mission-node b {
    font-size: 21px !important;
}

.dgx-mission-graph-v2 .mission-node span {
    margin-top: 4px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
}

.dgx-mission-graph-v2 .mission-node small {
    min-height: auto !important;
    margin-top: 4px !important;
    font-size: 10px !important;
}

.dgx-mission-graph-v2 .node-1 { grid-column: 1 !important; grid-row: 1 !important; }
.dgx-mission-graph-v2 .node-2 { grid-column: 2 !important; grid-row: 1 !important; }
.dgx-mission-graph-v2 .node-3 { grid-column: 3 !important; grid-row: 1 !important; }
.dgx-mission-graph-v2 .node-4 { grid-column: 4 !important; grid-row: 1 !important; }
.dgx-mission-graph-v2 .node-5 { grid-column: 2 !important; grid-row: 2 !important; }
.dgx-mission-graph-v2 .node-6 { grid-column: 3 !important; grid-row: 2 !important; }
.dgx-mission-graph-v2 .node-7 { grid-column: 4 !important; grid-row: 2 !important; }

.dgx-mission-graph-v2 .mission-node.complete {
    border-color: rgba(34,197,94,.78) !important;
    background: rgba(9,55,39,.72) !important;
    box-shadow: 0 0 28px rgba(34,197,94,.24) !important;
}

.dgx-mission-graph-v2 .mission-node.active {
    border-color: rgba(56,189,248,.85) !important;
    background: rgba(12,45,70,.72) !important;
    box-shadow: 0 0 34px rgba(56,189,248,.32) !important;
}

.dgx-mission-graph-v2 .mission-node:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 0 36px rgba(125,211,252,.28) !important;
}

.dgx-mission-graph-v2 .mission-wire {
    position: absolute !important;
    height: 3px !important;
    border-radius: 999px !important;
    z-index: 1 !important;
    background: linear-gradient(90deg,#22c55e,#38bdf8,#8b5cf6,#22c55e) !important;
    background-size: 260% 100% !important;
    animation: dgxWireFlow 2.2s linear infinite !important;
    box-shadow: 0 0 16px rgba(56,189,248,.55) !important;
    opacity: .72 !important;
}

.dgx-mission-graph-v2 .wire-1 { left: 16% !important; top: 60px !important; width: 18% !important; }
.dgx-mission-graph-v2 .wire-2 { left: 39% !important; top: 60px !important; width: 18% !important; }
.dgx-mission-graph-v2 .wire-3 { left: 62% !important; top: 60px !important; width: 18% !important; }
.dgx-mission-graph-v2 .wire-4 { left: 79% !important; top: 60px !important; width: 3px !important; height: 130px !important; }
.dgx-mission-graph-v2 .wire-5 { left: 35% !important; top: 190px !important; width: 24% !important; }
.dgx-mission-graph-v2 .wire-6 { left: 58% !important; top: 190px !important; width: 24% !important; }

@keyframes dgxWireFlow {
    from { background-position: 0% 50%; }
    to { background-position: 260% 50%; }
}

.dgx-mission-node-details {
    margin-top: 12px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(125,211,252,.14) !important;
    background: rgba(2,6,23,.46) !important;
    color: #94a3b8 !important;
    font-size: 13px !important;
    text-align: left !important;
    display: grid !important;
    gap: 8px !important;
}

.dgx-node-detail-title {
    color: #7dd3fc !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

.dgx-node-detail-main {
    color: #f8fafc !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.dgx-node-detail-list {
    margin: 0 !important;
    padding-left: 18px !important;
    color: #cbd5e1 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
}

.dgx-node-detail-empty {
    color: #94a3b8 !important;
    font-size: 13px !important;
}

@media(max-width:1200px) {
    .dgx-mission-graph-v2 {
        grid-template-columns: repeat(2, minmax(96px, 1fr)) !important;
        grid-template-rows: auto !important;
    }

    .dgx-mission-graph-v2 .mission-node {
        grid-column: auto !important;
        grid-row: auto !important;
    }

    .dgx-mission-graph-v2 .mission-wire {
        display: none !important;
    }
}

/* DGX OS v18.1.1 exact wire alignment fix */
.dgx-mission-graph-v2 .wire-1 {
    left: 19.5% !important;
    top: 64px !important;
    width: 16.5% !important;
}

.dgx-mission-graph-v2 .wire-2 {
    left: 43.5% !important;
    top: 64px !important;
    width: 16.5% !important;
}

.dgx-mission-graph-v2 .wire-3 {
    left: 67.5% !important;
    top: 64px !important;
    width: 16.5% !important;
}

.dgx-mission-graph-v2 .wire-4 {
    left: calc(87.5% - 2px) !important;
    top: 64px !important;
    width: 4px !important;
    height: 142px !important;
}

.dgx-mission-graph-v2 .wire-5 {
    left: 43.5% !important;
    top: 206px !important;
    width: 16.5% !important;
}

.dgx-mission-graph-v2 .wire-6 {
    left: 67.5% !important;
    top: 206px !important;
    width: 16.5% !important;
}

/* remove old node-side stub wires that cause misalignment */
.dgx-mission-graph-v2 .mission-node::after {
    display: none !important;
}

/* v18.1.2 Fine tune Knowledge + Report alignment */

.dgx-mission-graph-v2 .node-4{
    transform: translateX(-24px) !important;
}

.dgx-mission-graph-v2 .node-7{
    transform: translateX(-24px) !important;
}


/* ==========================================================
   DGX OS v18.1.3
   Fine alignment of Knowledge + Engineering Report
   ========================================================== */

.dgx-mission-graph-v2 .node-4{
    transform: translateX(-28px) !important;
}

.dgx-mission-graph-v2 .node-7{
    transform: translateX(-28px) !important;
}

/* Re-center the vertical trunk */

.dgx-mission-graph-v2 .wire-4{
    left: calc(84% - 2px) !important;
}


/* DGX OS v18.1.4 move vertical trunk right */
.dgx-mission-graph-v2 .wire-4 {
    left: calc(88.5% - 2px) !important;
}

/* DGX OS v18.1.4 move vertical trunk right */
.dgx-mission-graph-v2 .wire-4 {
    left: calc(88.5% - 2px) !important;
}

/* DGX OS v18.1.5 pixel-stable right trunk alignment */
.dgx-mission-graph-v2 {
    grid-template-columns: repeat(4, 1fr) !important;
}

/* Undo node shifting */
.dgx-mission-graph-v2 .node-4,
.dgx-mission-graph-v2 .node-7 {
    transform: none !important;
}

/* Move vertical trunk to center of column 4 */
.dgx-mission-graph-v2 .wire-4 {
    left: calc(87.5% - 2px) !important;
    top: 64px !important;
    width: 4px !important;
    height: 142px !important;
}

/* top wire enters Knowledge center */
.dgx-mission-graph-v2 .wire-3 {
    left: 62.5% !important;
    top: 64px !important;
    width: 25% !important;
}

/* bottom wire enters Report center */
.dgx-mission-graph-v2 .wire-6 {
    left: 62.5% !important;
    top: 206px !important;
    width: 25% !important;
}

/* DGX OS v18.2 mathematically aligned SVG mission links */
.dgx-mission-graph-v2 {
    position: relative !important;
}

.dgx-mission-graph-v2 .mission-wire {
    display: none !important;
}

.dgx-mission-links {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: visible;
    z-index: 1;
}

.dgx-mission-graph-v2 .mission-node {
    position: relative !important;
    z-index: 3 !important;
}

.dgx-link-line {
    stroke: url(#dgxLinkGradient);
    stroke-width: 3.5;
    stroke-linecap: round;
    filter: drop-shadow(0 0 8px rgba(56,189,248,.9));
    animation: dgxLinkPulse 1.9s ease-in-out infinite;
}

.dgx-link-dot {
    fill: #7dd3fc;
    filter: drop-shadow(0 0 8px rgba(56,189,248,.95));
}

.dgx-mission-links::before {
    content: "";
}

/* fallback because SVG gradients are not declared in HTML */
.dgx-link-line {
    stroke: #38dffc;
}

@keyframes dgxLinkPulse {
    0%, 100% {
        opacity: .65;
        stroke-width: 3;
    }

    50% {
        opacity: 1;
        stroke-width: 4.5;
    }
}
