.distros-grid {
    left: 5%; top: 22%;
    width: 54%; height: 54%;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
}

/* Logo inside distro card */
.d-distro {
    position: relative;
    padding-top: 48px !important;
    align-items: flex-start;
}
.d-distro .dlogo {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 34px;
    height: 34px;
    opacity: 0.9;
    transition: opacity 0.4s, transform 0.4s;
    object-fit: contain;
}
.d-distro.a-active .dlogo { opacity: 1; transform: scale(1.08); }

.d-side.matrix-side {
    left: 63%; top: 22%;
    width: 32%; height: 54%;
}

/* Terminal inside side panel: always fully visible when shown */
.d-side.matrix-side .o-term {
    opacity: 1;
    border-color: var(--border);
}
.d-side.matrix-side .o-term .tbody {
    padding: 8px 12px;
    font-size: 0.85rem;
}
.d-side.matrix-side .o-term .cmd {
    color: var(--green);
}

.fallback-panel {
    position: absolute;
    left: 5%; top: 80%;
    width: 90%; height: 12%;
    background: linear-gradient(145deg, #1a0f1e, #2d1b2e);
    border: 1px solid rgba(251, 191, 36, 0.4);
    border-radius: 10px;
    padding: 8px 16px;
    display: flex;
    gap: 16px;
    align-items: center;
    opacity: 0;
    transform: translateY(8px);
    transition: all 0.5s;
    overflow: hidden;
}
.fallback-panel.show { opacity: 1; transform: translateY(0); }
.fb-row {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}
.fb-row .fb-name {
    font-weight: 700;
    color: var(--yellow);
    font-family: 'Courier New', monospace;
    font-size: 0.8rem;
}
.fb-row .fb-strat {
    font-size: 0.72rem;
    color: var(--gray);
    line-height: 1.35;
}

.decision-panel {
    position: absolute;
    left: 10%; top: 22%;
    width: 80%; height: 68%;
    background: linear-gradient(145deg, #0f1420, #1a2030);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px 32px;
    opacity: 0;
    transition: opacity 0.5s;
}
.decision-panel.show { opacity: 1; }
.decision-panel h4 {
    color: var(--cyan);
    font-size: 1.15rem;
    margin-bottom: 16px;
}
.decision-panel .dq {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 24px;
    align-items: center;
    padding: 10px 12px;
    margin: 6px 0;
    border-radius: 8px;
    background: rgba(255,255,255,0.02);
    border-left: 2px solid var(--cyan);
}
.decision-panel .dq .ask {
    color: var(--text);
    font-size: 0.95rem;
}
.decision-panel .dq .then {
    color: var(--green);
    font-family: 'Courier New', monospace;
    font-size: 0.82rem;
}
.decision-panel .dq .then::before {
    content: "→ ";
    color: var(--gray);
}
