
.map-prague-info-card{
    position:absolute !important;
    left:16px !important;
    top:16px !important;
    z-index:20 !important;
    width:min(430px,calc(100% - 32px)) !important;
    min-height:86px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:14px !important;
    padding:14px 14px 14px 17px !important;
    border:1px solid rgba(191,204,214,.95) !important;
    border-radius:8px !important;
    background:rgba(255,255,255,.98) !important;
    color:#152d42 !important;
    box-shadow:0 4px 13px rgba(28,55,73,.18) !important;
    backdrop-filter:blur(5px) !important;
    pointer-events:auto !important;
}

.map-prague-info-text{
    min-width:0 !important;
    align-self:center !important;
}

.map-prague-info-text strong{
    display:block !important;
    margin:0 0 5px !important;
    color:#10293e !important;
    font-size:.86rem !important;
    font-weight:850 !important;
    line-height:1.3 !important;
}

.map-prague-info-text span{
    display:block !important;
    color:#6b7f8f !important;
    font-size:.7rem !important;
    line-height:1.35 !important;
}

.map-prague-actions{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-end !important;
    gap:11px !important;
}

.map-prague-action{
    width:62px !important;
    min-width:62px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#456477 !important;
    font-family:inherit !important;
    cursor:pointer !important;
    text-align:center !important;
}

.map-prague-action-icon{
    width:37px !important;
    height:37px !important;
    display:grid !important;
    place-items:center !important;
    margin:0 auto 5px !important;
    border:1px solid #cbd8e0 !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#5b7688 !important;
    box-shadow:0 2px 6px rgba(24,53,71,.07) !important;
    transition:.16s ease !important;
}

.map-prague-action small{
    display:block !important;
    color:#6a7e8d !important;
    font-size:.52rem !important;
    font-weight:750 !important;
    line-height:1.15 !important;
    white-space:normal !important;
}

.map-prague-action:hover .map-prague-action-icon{
    border-color:#0b7bb6 !important;
    color:#0b7bb6 !important;
    transform:translateY(-1px) !important;
    box-shadow:0 4px 9px rgba(11,123,182,.14) !important;
}

.map-prague-action:hover small{
    color:#254b63 !important;
}

/* Staré mapové overlay prvky už nepoužíváme. */
#page-kontakt .contact-map-location-box,
#page-kontakt .contact-map-expand-btn,
#page-kontakt .contact-map-preview-hint,
:is(#page-stanice-trebotin,#page-op-tynec) .tynec-map-caption,
:is(#page-stanice-trebotin,#page-op-tynec) .unit-map-open-btn{
    display:none !important;
}

/* Naše nová figcaption karta u útvarů musí být vidět. */
:is(#page-stanice-trebotin,#page-op-tynec) figcaption.map-prague-info-card{
    display:grid !important;
}

@media(max-width:650px){
    .map-prague-info-card{
        left:10px !important;
        top:10px !important;
        width:calc(100% - 20px) !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:8px !important;
        padding:11px 10px 11px 13px !important;
    }

    .map-prague-info-text strong{
        font-size:.76rem !important;
    }

    .map-prague-info-text span{
        font-size:.64rem !important;
    }

    .map-prague-actions{
        gap:5px !important;
    }

    .map-prague-action{
        width:52px !important;
        min-width:52px !important;
    }

    .map-prague-action-icon{
        width:33px !important;
        height:33px !important;
    }

    .map-prague-action small{
        font-size:.47rem !important;
    }
}
