:root {
    --banner-height: 120px;
    --fraction_left: 3.95;
    --fraction_right: 3.95
}

body {
    margin: 0;
}

#map {
    height: calc(100vh - 4px - var(--banner-height));
}

#popupBox {
    display: none;
    width: 722px; 
    height: auto;
    z-index: 2;
}

.ui.modal>div.header {
    border-bottom: none !important;
    display: flex;
    justify-content: center;

}

.ui.modal>div.actions {
    border-top: none;
    background: none;
}

.custom-style {
    position: relative;
    /* padding-top: 20px;
    padding-left: 20px;
    padding-right: 15px; */
    z-index: 1;
    font-family: Bahnschrift, sans serif;
    font-weight: bold;
    color: rgb(225, 225, 225, 0);

    box-sizing: border-box; 
    width: auto;
    font-size: 18px;
}


.custom-style2 {
    position: relative;
    /* padding-top: 10px;

    padding-left: 150px;
    padding-right: 0px; */
    z-index: 1;
    font-family: Bahnschrift, sans serif;
    color: rgb(225, 225, 225,0);

    /* Adjusted width for the text outline */

    /* box-sizing: border-box; */
    width: auto;
    font-size: 30px;

}

.county-label {
    font-family: Bahnschrift, sans serif;
    font-weight: bold;
    font-size: 14px; 
    text-align: center;

}

.ui.button {
    position: relative;
    opacity: 1 !important;
}

#videoContainer {
    position: absolute;
    background-color: #000000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: auto;
    object-fit: fill ;
    opacity: 0.9;
    /* transform: scale(1); */
    overflow:hidden;
    /* pointer-events: none; */

}

/* Style for the video with transparency */
/* #videoContainer video {
    width: 100%;
    height: 100%;
    object-fit:cover;
    opacity: 0.3;
    transform: scale(1);
} */
/* Container with relative position */
/* .relative-container {
    position: relative;
} */

/* Container with flex layout */
.flex-container {
    display: flex;
    justify-content: center;
    opacity: 1;
    z-index: 0;
}

header {
    width: 100%;
    background-color: #000000;
    height: var(--banner-height);
    display: grid !important;
    grid-template-columns: calc(var(--banner-height) * var(--fraction_left)) 1fr calc(var(--banner-height) * var(--fraction_right));

}

header>div:nth-child(2) {
    flex-grow: 1;
    justify-self: center;
}


header div img {
    height: var(--banner-height);
}

.leaflet-border {
    border: 2px #ccc solid;
    border-radius: 2px;
}

#legend {
    display: flex;
    flex-direction: column;
    position: fixed;
    /* font-size: 14pt; */
    height: 40px;
    width: 100px;
    right: 16px; 
    bottom: 30px;
    z-index: 400;
}

#legend-labels {
    font-size: 14pt!important;
    margin-top: -20px;
    display: flex;
    font-weight: bold;
    flex-direction: row;
    justify-content: space-between;
    text-shadow:
        1px 0px 1px white,
        -1px 0px 1px white,
        0px 1px 1px white,
        0px -1px 1px white,
        1px 1px 1px white,
        -1px -1px 1px white,
        -1px 1px 1px white,
        1px -1px 1px white;
}

#legend-ramp {
    width: 100%;
    height: 50%;
    margin-top: 5px;
    box-shadow:
        1px 0px 1px white,
        -1px 0px 1px white,
        0px 1px 1px white,
        0px -1px 1px white,
        1px 1px 1px white,
        -1px -1px 1px white,
        -1px 1px 1px white,
        1px -1px 1px white;
}

#legend-unit {
    color: rgb(0, 0, 0);
    align-self: center;
    font-size: 12pt;
    font-weight: bold;
    padding-top: 5px;
    text-shadow:
        1px 0px 1px white,
        -1px 0px 1px white,
        0px 1px 1px white,
        0px -1px 1px white,
        1px 1px 1px white,
        -1px -1px 1px white,
        -1px 1px 1px white,
        1px -1px 1px white;
}

img.leaflet-tile {
    image-rendering: pixelated;
}


.font-awesome-toolbar {
    transform: scale(1.3);
    opacity: 0.7;
    position: absolute;
    left: 0px;
    top: 12px;
}

#search {
    position: fixed;
    z-index: 500;
    top: calc(var(--banner-height) + 12px);
    right: 10px;
    width: 30vw;
}

#search .text {
    overflow: hidden;
    max-height: 100%;

}

#search .selection {
    border: #bbb 2px solid;
    height: 5px;
    width: 100%;
    padding-left: 10px;
}

#search .dropdown.icon {
    display: none;
}

#search i {
    position: absolute;
    right: 10px;
    font-size: 14px;
    opacity: 0.4;
    top: 12px;
}

.leaflet-control-layers-base {
    font-family: Bahnschrift, sans serif !important;

    display: flex;
    justify-content: center;
    align-items: center;
}

.leaflet-control-layers-base>label>span {
    padding: 5px;
}


.leaflet-left .leaflet-control-layers-baselabel>span:has(.checked) {
    
    font-weight: 600;
}

input[type="file"] {
    display: none;
}

#layersIcon {
    font-size: 20px;
    color: black;
    background-color: white;
    padding: 5px;
}

#layersDiv>.ui.cards {
    flex-direction: column;
}


.leaflet-top.leaflet-right {
    padding-top: 48px;
}

.leaflet-right .leaflet-control-layers-base {
    display: flex;
    align-items: stretch;
    transition: 0.2s;
    /* text-shadow: 1px 1px 4px #bbb; */
    background-color: white;
    flex-direction: column;
    gap: 10px;
}

.leaflet-right .leaflet-control-layers-base label {
    font-size: 14px;
    /* padding: 10px; */
    /* text-shadow: 1px 1px 4px #bbb; */
    cursor: pointer;
    transition: 0.3s;
}


.leaflet-right .leaflet-control-layers-base label:hover {
    text-shadow: 1px 1px 0px #aaa;
}

.leaflet-right .leaflet-control-layers-base label:has(span.checked) {
    background-color: #ccc;
    font-weight: normal !important;
}

.leaflet-control-layers-base input[type=radio] {
    display: none;

}

.leaflet-right .leaflet-control-layers-separator {
    display: none;
}


.leaflet-layer:nth-child(2) {
    z-index: 100 !important;
}

.leaflet-left .leaflet-control-layers-base>label:not(:first-child) {
    border-left: 1px solid #ccc;
}

.v-slider {
    position: static;
    width: 100%;
    z-index: 1;
    padding-right: 16px;
}

.v-input__details {
    display: none;
    grid-area: unset !important;
}

.info.legend.leaflet-control {
    background: transparent; 
}

.legend {
    position: relative; 
    font-family: Bahnschrift, sans serif !important;
    background: rgb(255, 255, 255);
    padding: 5px;
    border-radius: 5px;
    font-size: 14px;
    bottom: 10px;
    right: 4px;
    width: 235px;
    margin-bottom: -10px
}

.legend3 {
    font-family: Bahnschrift, sans serif !important;
    background: rgb(252, 57, 57);
    padding: 5px;
    border-radius: 5px;
    font-size: 14px;
    bottom: 10px;
    left: 4px;
    width: 150px;
    margin-top: -120px;
    margin-left: -48px
    /* overflow: auto;  */
}

.legend-item {
    position: relative;
    display: inline-flex;
    width: 20px;
    height: 5px;
    margin-right: 5px;
}

.legend-item2 {
    display: inline-flex;
    width: 10px;
    height: 10px;
    margin-right: 5px;
}

div.leaflet-control-layers-overlays {
    display: flex;
    flex-direction: column;
    gap: 10px;

    /* text-shadow: 1px 1px 4px #bbb; */
    /* cursor: pointer; */
    transition: 0.3s;

}

div.leaflet-control-layers-overlays label {
    cursor: pointer;
    font-size: 14px;
}

div.leaflet-top.leaflet-right>div>section>div.leaflet-control-layers-base>div {
    margin-top: -15px;
}

.accordion>.title {
    font-family: Bahnschrift, sans serif !important;
    font-size: 16px !important;
    font-weight: bold;
    padding-bottom: 0px !important;
}
.accordion>.content>label>span {
    font-size: 14px !important;
    font-family: Bahnschrift, sans serif!important;

    
}

.accordion>.content>label {
    margin-bottom: 5px;
}

#opacity-label{
    font-family: Bahnschrift, sans serif;
    font-size: 14px;
    padding-top: 15px;
    font-style: italic;

}

.leaflet-control-layers-overlays>label>span{
    font-family: Bahnschrift, sans serif!important;

    font-size: 14;
    padding-top: 15px;
    font-weight: bold;

}

/* The Modal (background) */
.modal2 {
    display: none; /* Hidden by default */
    position:absolute; /* Stay in place */
    z-index: 1000; /* Sit on top */

    right: 270px;
    top:490px;

    width: 246px; /* Full width */
    height: auto; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(255, 255, 255, 0); /* Fallback color */
  }
  
  /* Modal Content */
  .modal-content {
    background-color: rgb(70, 132, 170);
    padding: 10px;
    border: 1px solid #ffffff;
    border-radius: 5px;
    height: auto;
    font-size: 10px;
    font-family: Bahnschrift, sans serif !important;
    text-align: justify !important;
    color: white;

  }

  .modal-content2 {
    background-color: rgb(0, 0, 0);
    border: 3px solid #ffffff;
    border-radius: 5px;
    height: auto;
    font-size: 10px;
    font-family: Bahnschrift, sans serif !important;
    text-align: justify !important;
    color: white;

  }

  #visitorsModal {
    display: flex;
    position: fixed;
    z-index: 1000;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    background-color: rgb(0, 0, 0);
    border-radius: 8px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.3s ease-in-out; /* Smooth fade-in and fade-out */
    pointer-events: none; /* Disable interactions when hidden */
}

#visitorsModal.show {
    opacity: 1;
    pointer-events: auto; /* Enable interactions when visible */
}

#visitorsModal .modal-content {
    width: 100%;
    box-sizing: border-box;
    padding: 20px;
}

#visitorsModal .actions {
    margin-top: 0; 
    padding-bottom: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; 
}

.actions {
    display: flex;
    justify-content: flex-end; /* Align buttons to the bottom right */
    padding-top: 20px;
}

.ui.button {
    margin: 0 auto;
    padding: 10px 15px;
}

.ui.button:hover {
    background-color: #0056b3;
}
