.visu-gpx {
    /* max-width: 1100px; */
    max-width: 96%;
    margin: auto;
}

input[type="file"] {
    max-width: 100%;
}

#fi {
    font-size: 0;
}

#fi::file-selector-button {
    font-size: 14px;
    cursor: pointer;
}

#gpx-drop {
    margin: 16px 0;
    padding: 24px;
    text-align: center;
    border: 2px dashed #888;
    border-radius: 10px;
}

#gpx-drop.is-dragover {
    border-color: #1769aa;
    background: #eaf4ff;
}

#gpxviewer {
    width: 100%;
}

#gpxviewer figure {
    margin: 0;
}

#map1 {
    height: calc(100vh - 180px);
    min-height: 560px;
}

#map1_profiles {
    height: calc(100vh - 180px);
    min-height: 0;
    box-sizing: border-box;

    display: grid;
    grid-template-rows: repeat(3, minmax(0, 1fr));
    gap: 0;

    overflow: visible;
}

#map1_profiles>figure {
    height: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
}

#map1_hp,
#map1_sp,
#map1_vp {
    height: calc((100% + 64px) / 3);
}

#gpx-status {
    overflow-wrap: anywhere;
}

#gpxviewer:not([data-stacked]) #map1_profiles {
    margin-top: 0;
}

#gpxviewer[data-stacked] #map1 {
    height: 300px;
}

#gpxviewer.jmdt-panel-split[data-stacked]>#map1_profiles {
    margin-top: 1rem;
}

@media (max-width: 600px) {
    body {
        padding: 10px;
    }

    #map1 {
        height: 300px;
    }
}