/* =====================================================
   RadioMap – desktop
   ===================================================== */

@media (min-width: 1024px) {

    .map-container {
        right: 0;
    }

    .comms-panel {
        right: 16px;
        left: auto;
        top: 16px;
        bottom: 16px;
        width: var(--panel-w);
        height: auto;
        max-height: none;
        background: #f7f7f7;
        transform: translateX(120%);
        transition: transform 0.28s ease;
        padding-bottom: 0;
        border-left: 0;
        border-radius: 6px;
        box-shadow: 0 8px 28px rgba(28, 40, 60, 0.12);
        overflow: hidden;
    }

    .comms-panel.open {
        transform: translateX(0);
    }

    .comms-handle {
        display: none;
    }

    .hud-top {
        right: 16px;
    }

    body.comms-open .hud-top {
        right: calc(var(--panel-w) + 32px);
    }

    .chat-mensajes {
        min-height: 140px;
    }

    .mapa-atajos {
        display: flex;
        right: 16px;
        bottom: 88px;
    }

    body.comms-open .mapa-atajos {
        right: calc(var(--panel-w) + 32px);
    }

    .brujula-mapa {
        right: 16px;
        left: auto;
        bottom: 24px;
    }

    body.comms-open .brujula-mapa {
        right: calc(var(--panel-w) + 32px);
    }

    .habla-mapa {
        left: 16px;
        right: auto;
        bottom: 112px;
        max-width: 260px;
        flex-direction: column;
        align-items: flex-start;
    }

    .vel-hud {
        left: 16px;
        bottom: 24px;
        width: 76px;
        height: 76px;
        min-width: 76px;
        padding: 6px 4px 8px;
        border-radius: 50%;
        align-items: center;
        box-shadow: 0 8px 22px rgba(28, 40, 60, 0.12);
    }

    .vel-hud .vel-num {
        font-size: 28px;
        padding-top: 0;
    }

    .vel-hud .vel-uni {
        padding-top: 0;
        font-size: 11px;
    }

    .barra-destino {
        left: 108px;
        right: 84px;
        bottom: 30px;
    }

    body.comms-open .barra-destino {
        right: calc(var(--panel-w) + 100px);
    }

    body.comms-open .vel-hud {
        left: 16px;
    }

    .modal-destino {
        align-items: flex-start;
        justify-content: flex-start;
        padding: 16px;
    }

    .modal-destino-card {
        width: min(440px, 100%);
        min-height: 0;
        max-height: calc(100% - 32px);
        border-radius: 16px;
        box-shadow: 0 16px 40px rgba(40, 30, 10, 0.16);
    }

    .dock-mapa {
        display: none !important;
    }

    .aviso-audio {
        left: 50%;
        transform: translateX(-50%);
        bottom: 118px;
    }

    body.comms-open .aviso-audio {
        left: calc((100% - var(--panel-w)) / 2);
    }

    .ack-walkie {
        left: 50%;
        transform: translateX(-50%);
        bottom: 118px;
    }

    body.comms-open .ack-walkie {
        left: calc((100% - var(--panel-w)) / 2);
    }

    .aviso-gps {
        left: 16px;
        transform: none;
        top: 88px;
        bottom: auto;
    }

    .portada-card h1 {
        font-size: 28px;
    }

    .stepper-foto {
        height: 210px;
    }

    .stepper-foto-corta {
        height: 132px;
    }
}
