    #event-location-map { height: 360px; border-radius: 14px; }
    .race-map-canvas { height: 300px; border-radius: 8px 8px 0 0; }
    .gpx-thumbnail {
        position: relative;
        width: 140px;
        height: 140px;
        border-radius: 10px;
        overflow: hidden;
        cursor: pointer;
        flex-shrink: 0;
    }
    .gpx-thumb-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        background: #e8edf2;
    }
    .gpx-thumb-overlay {
        position: absolute;
        inset: 0;
        background: rgba(0,0,0,0.18);
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0;
        transition: opacity 0.18s;
    }
    .gpx-thumbnail:hover .gpx-thumb-overlay { opacity: 1; }
    .gpx-expand-btn {
        background: rgba(255,255,255,0.92);
        color: #222;
        font-weight: 600;
        border: none;
        border-radius: 20px;
        padding: 9px 22px;
        font-size: 0.9rem;
        cursor: pointer;
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .gpx-collapse-btn {
        display: block;
        width: 100%;
        border: 1px solid #e0e0e0;
        border-top: none;
        border-radius: 0 0 8px 8px;
        background: #fafafa;
        color: #666;
        font-size: 0.82rem;
        padding: 6px;
        cursor: pointer;
        text-align: center;
    }
    .gpx-collapse-btn:hover { background: #f0f0f0; }
    .elevation-wrapper {
        height: 150px;
        position: relative;
        border: 1px solid #e0e0e0;
        border-top: none;
        border-radius: 0 0 8px 8px;
        padding: 8px 14px 4px;
        background: #fff;
    }
    .elevation-wrapper canvas { width: 100% !important; height: 100% !important; }
    .gpx-marker {
        width: 26px; height: 26px; border-radius: 50%;
        display: flex; align-items: center; justify-content: center;
        font-size: 11px; font-weight: 700; color: #fff;
        box-shadow: 0 2px 6px rgba(0,0,0,.35);
        cursor: default;
    }
    .gpx-marker-start { background: #22c55e; }
    .gpx-marker-finish { background: #e84343; }
