body {
    font-family:Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
}

.spc {
    box-sizing: border-box;
    border: 1px solid #000000;
    width: 100%;
    height: 12vh; /* Adjust according to your needs */
    /*background-color: rgb(0, 71, 112);*/
    text-align: center;
}

footer {
    flex-shrink: 0;  /* This will prevent the footer from shrinking */
    
}

.flex-container {
    display: flex;
    min-height: 100vh;
    flex: 1 0 auto;  /* This will allow the container to expand and push the footer down */
    padding-top: 10px;
}

#left, #center, #right {
    flex-grow: 1;
}


#left {
    position: relative;
    flex: .50;
    background-color: rgb(1, 71, 111);
    color:white;
    padding-left: 10px;
}

#center {
    position: relative;
    flex: 2;
    overflow: hidden;
 /*   height: 90%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    text-align: center;*/
}

#right {
    flex: .65;
    background: #ffffff;
    overflow: scroll;
    padding-left: 10px;
}

/* The row styles in the data grid table.     width: 100%;*/
#right table {
    border-collapse: collapse;
}

#right th {
    background-color: rgb(0, 71, 112);
    color: #fff;
    padding: 10px;
}

#right td,
#right th {
    border: 1px solid #ccc;
    padding: 10px;
}

#right tr:nth-child(even) {
    background-color: #f2f2f2;
}

#right tr:hover {
    background-color: #ddd;
}

#left select {
    display: block;
    width: 80%; /* adjust as needed */
    margin: 10px auto; /* adjust as needed */
    padding: 5px; /* adjust as needed */
}

#device-count{
    font-weight: bold; 
}

#container img {
    width: 100vw; /* 50% of the viewport width */
    height: auto;
}

#container {
    position: relative; /* This allows absolute positioning of children */
}

.marker {
    position: absolute; /* This allows precise positioning */
    display: flex;
    align-items: center;
    cursor: pointer;
    z-index: 10;
}

.marker img {
  max-width: 30px;
  max-height: 30px;
  z-index: 1;
}

.marker p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    font-weight: bold;
    z-index: 2;
}

#center img {
    width: 100%;
    object-fit: cover; /* Or use 'contain' to avoid cropping */
}

#legend {
    display: block; /* Ensures the legend is always visible by default */
}

#legend img {
    display: block;
    visibility: visible;
}

.arrow {
    position: absolute;
    /* adjust these as needed */
    margin-top: 10px;
    top: 15px;
    left: 0;
    width:100%;
    height: 200%;
}

#search-container {
    margin-top: 20px;
    text-align: center;
}

hr {
    border: none;
    border-top: 1px solid #000; /* Change the color as needed */
    width: 85%; /* Change the width as needed */
    margin: 20px auto; /* Change the margin as needed */
}

#machine-image img {
    max-width: 75%; /* this makes sure the image doesn't overflow its container */
    height: auto; /* this keeps the image aspect ratio intact */
    display: block;
    margin: auto;
}

#machine-details p {
    margin: 10px;
    padding: 0.5em 0;
    font-size: 14px;
}

#instructions-box {
    border: 1px solid black;
    background-color: #f5f5dc; /* light brown color */
    color:black;
    padding: 15px;
    margin: 10px; /* add space from previous element */
    box-sizing: border-box; /* to include padding and border in the element's total width and height */
}

#temp-floorplan {
    display: block;
    margin: auto;
    width: 75% !important;   /* Adjust this as needed */
    height: auto !important; /* This makes the image keep its aspect ratio */
}

.scrollable-table {
    max-height: 800px;  /* You can adjust this value as per your needs */
    overflow-y: auto;
    display: block;
    width: 25%;
}

#machine-ip {
    color: white;
}

label[for="present_proposed"], 
#present_proposed{
    padding-top: 10px;
    text-align: center;
    display: block;
}

label[for="client"],
#client{
    text-align: center;
    display:block;
    padding-top: 10px;
}

label[for="buildings"],
#building{
    text-align: center;
    display:block;
}

label[for="floor"],
#floor{
    text-align: center;
    display:block;
}

#device-count{
    text-align: center;
}