.tsec-map-frame {
    display: flex;
    border: solid 1px #cccccc;
}

.tsec-map-map {
    flex: 1 0 auto;
    min-height: 500px;
}

.tsec-map-toggles {
    display: flex;
    flex-direction: column;
    background: #efefef;
    border-left: solid 1px #cccccc;
}

.tsec-map-toggles button {
    display: flex;
    align-items: center;
    gap: 10px;
    border: none;
    border-radius: 0;
    background-color: #f5f5f5;
    color: black;
    border-bottom: solid 1px #cccccc;
    opacity: 0.7;
    text-transform: none;
}

.tsec-map-toggles button,
.tsec-map-toggles button:hover,
.tsec-map-toggles button:active,
.tsec-map-toggles button:focus,
.tsec-map-toggles button.active:hover {
    background-color: #f5f5f5;
    opacity: 0.7;
}

.tsec-map-toggles button.active {
    background-color: white;
    opacity: 1;
}

.tsec-map-toggles .map-legend-line {
    height: 5px;
    width: 20px;
    display: inline-block;
}
.tsec-map-legend {
    display: flex;
    background: #efefef;
    padding: 5px 10px;
    border: solid 1px #ccc;
    gap: 1rem;
}
.tsec-map-legend > div {
    display: flex;
    align-items: center;
    gap: 5px;
}
.tsec-map-legend .tsec-map-legend-block{
    width: 15px;
    height: 15px;
    display: inline-block;
}
.tsec-map-legend img {
    max-width: 20px;
}

@media (max-width: 600px) {
    .tsec-map-map {
        min-height: 400px;
    }
    .tsec-map-frame {
        flex-direction: column;
    }
    .tsec-map-toggles {
        flex-direction: row;
        flex-wrap: wrap;
    }
}