html,
body {
    background: #053941;
}

#map-col,
#map {
    transition: height 0.3s ease-in-out;
}

#mobile-header {
    position: relative;
    height: 0;
    z-index: 1050; /* above the map but below modals if any */
}

#mobile-header img {
    max-width: 100px;
    height: auto;
}

#resetMapBtn {
    z-index: 1050;
}

body.drawer-lock {
    position: fixed;
    width: 100%;
    overflow: hidden;
    touch-action: none;
}

/* **************************************************************************
Large - 992px to 9999px
*************************************************************************** */

@media only screen and (min-width: 992px) and (max-width: 99999px) {

    #wrapper {
        height: 100vh;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }

    #map-col {
        position: relative;
    }

    #data-col {
        color: #fff;
        height: 100vh;
        overflow-y: auto;
        border-right: 1px solid #333;
        display: flex;
        flex-direction: column;
    }

    #data-header {}

    #data-panel {
        flex: 1 1 auto;
        overflow-y: auto;
    }

    #start-box {
        color: #ccc;
        font-size: 1.2rem;
        text-align: center;
    }

    #drawer-handle {
        display: none;
    }

    #mobile-header {
        display: none;
    }

}


/* **************************************************************************
Medium - 768px to 991px
*************************************************************************** */

@media only screen and (min-width: 768px) and (max-width: 991px) {

    #wrapper {
        height: 100%;
        margin: 0;
        padding: 0;
    }

    #map-col {
        height: 75vh;
    }

    #data-col {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 30vh;
        max-height: 60vh;
        background: #053941;
        transition: height 0.3s ease-in-out;
        z-index: 1050;
        overflow: hidden;
        border-top: 2px solid #444;
        border-top-right-radius: 2rem;
        border-top-left-radius: 2rem;
    }

    #data-col.expanded {
        height: 60vh; /* 🚀 FIXED: Changed from 100vh to 75vh for consistency */
    }

    #drawer-handle {
        background: #222;
        color: #fff;
        text-align: center;
        cursor: ns-resize;
        padding: 0.5rem;
    }

    #drawer-handle i {
        font-size: 1.5rem;
    }

    #data-drawer {
        height: calc(100% - 2rem);
        overflow-y: auto;
        padding-bottom: 3rem; /* breathing room for iOS scroll bars */
    }

    #start-box {
        color: #ffffff;
        padding: 1rem 1rem 1rem 1rem;
        font-size: 2rem;
        line-height: 1;
        height: 100%;
        width: 100%;
        overflow-y: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

 
}

/* **************************************************************************
Small - 576px to 767px
*************************************************************************** */

@media only screen and (min-width: 576px) and (max-width: 767px) {
    
    #wrapper {
        height: 100%;
        margin: 0;
        padding: 0;
    }

    #map-col {
        height: 75vh;
    }

    #data-col {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 30vh;
        max-height: 60vh;
        background: #053941;
        transition: height 0.3s ease-in-out;
        z-index: 1050;
        overflow: hidden;
        border-top: 2px solid #444;
        border-top-right-radius: 2rem;
        border-top-left-radius: 2rem;
    }

    #data-col.expanded {
        height: 60vh; /* 🚀 FIXED: Changed from 100vh to 75vh for consistency */
    }

    #drawer-handle {
        background: #222;
        color: #fff;
        text-align: center;
        cursor: ns-resize;
        padding: 0.5rem;
    }

    #drawer-handle i {
        font-size: 1.5rem;
    }

    #data-drawer {
        height: calc(100% - 2rem);
        overflow-y: auto;
        padding-bottom: 3rem; /* breathing room for iOS scroll bars */
    }

    #start-box {
        color: #ffffff;
        padding: 1rem 1rem 1rem 1rem;
        font-size: 2rem;
        line-height: 1;
        height: 100%;
        width: 100%;
        overflow-y: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }


}

/* **************************************************************************
Extra Small - 400px to 575px
*************************************************************************** */

@media only screen and (min-width: 400px) and (max-width: 575px) {
    
    #wrapper {
        height: 100%;
        margin: 0;
        padding: 0;
    }

    #map-col {
        height: 75vh; /* 🚀 FIXED: Changed from 100vh to 75vh for consistency */
    }

    #data-col {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 30vh;
        max-height: 60vh;
        background: #053941;
        transition: height 0.3s ease-in-out;
        z-index: 1050;
        overflow: hidden;
        border-top: 2px solid #444;
        border-top-right-radius: 2rem;
        border-top-left-radius: 2rem;
    }

    #data-col.expanded {
        height: 60vh; /* 🚀 FIXED: Changed from 100vh to 75vh for consistency */
    }

    #drawer-handle {
        background: #222;
        color: #fff;
        text-align: center;
        cursor: ns-resize;
        padding: 0.5rem;
    }

    #drawer-handle i {
        font-size: 1.5rem;
    }

    #data-drawer {
        height: calc(100% - 2rem);
        overflow-y: auto;
        padding-bottom: 3rem; /* breathing room for iOS scroll bars */
    }

    #start-box {
        color: #ffffff;
        padding: 1rem 1rem 1rem 1rem;
        font-size: 2rem;
        line-height: 1;
        height: 100%;
        width: 100%;
        overflow-y: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

}


/* **************************************************************************
Extra Extra Small - 0px to 399px
*************************************************************************** */

@media only screen and (min-width: 0) and (max-width: 399px) {
    
    #wrapper {
        height: 100%;
        margin: 0;
        padding: 0;
    }

    #map-col {
        height: 80vh; /* 🚀 FIXED: Changed from 100vh to 75vh for consistency */
    }

    #data-col {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: 30vh;
        max-height: 60vh;
        background: #053941;
        transition: height 0.3s ease-in-out;
        z-index: 1050;
        overflow: hidden;
        border-top: 2px solid #444;
        border-top-right-radius: 2rem;
        border-top-left-radius: 2rem;
    }

    #data-col.expanded {
        height: 60vh; /* 🚀 FIXED: Changed from 100vh to 75vh for consistency */
    }

    #drawer-handle {
        background: #222;
        color: #fff;
        text-align: center;
        cursor: ns-resize;
        padding: 0.5rem;
    }

    #drawer-handle i {
        font-size: 1.5rem;
    }

    #data-drawer {
        height: calc(100% - 2rem);
        overflow-y: auto;
        padding-bottom: 3rem; /* breathing room for iOS scroll bars */
    }

    #start-box {
        color: #ffffff;
        padding: 1rem 1rem 1rem 1rem;
        font-size: 2rem;
        line-height: 1;
        height: 100%;
        width: 100%;
        overflow-y: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

}