/* style.css */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #212529;
}
.mapboxgl-popup-content{
    height: 50px !important;
    border: none;
}
  .youtube-wrapper{
    background-color: rgb(77 70 70 / 20%);
    margin: 20px auto;
    width: 60%;
    min-height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  iframe {
    display: block; /* or inline-block */
    visibility: visible;
    opacity: 1;
    width: 100% !important;
  }
.content h3{
    margin: 0 auto;
    text-align: center;
}

.youtube-wrapper{
    margin: 0 auto;
}
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}
/* Style the select element */
select {
    appearance: none; /* Remove default styling */
    -webkit-appearance: none; /* Remove default styling in Safari */
    -moz-appearance: none; /* Remove default styling in Firefox */
    background: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24"><path fill="%23333" d="M7 10l5 5 5-5z"/></svg>') no-repeat right center;
    background-color: #fff;
    background-position: calc(100% - 0.5rem) center;
    background-size: 18px 18px;
    padding: 0.5rem 1rem;
    font-size: 1rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    outline: none;
}
.navbar-brand{
    color: #fff !important;
    position: relative;
    top: -9px;
    padding: 12px;
    left: 20px;
}
#vehicles select{
    padding: 5px;
    width: 130px;
    border: 2px solid;
    margin: 20px;
}

#vehicles #vehicleSelector{
 width: 170px;
}

.selection span{
    padding: 10px;
    margin: 10px -20px;
    margin-left: 20px;
    font-size: 20px;
    color: #fff;
}
/* Add some basic styling for better appearance on all devices */
select:hover {
    border-color: #888;
}

select:focus {
    border-color: #555;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
}

  /* WhatsApp Button Styles */
.whatsapp-button {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
    display: none; /* Hidden by default */
    background-color: #25D366; /* WhatsApp green */
    padding: 10px;
    border-radius: 50%;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    transition: transform 0.2s ease-in-out;
    animation: float 3s ease-in-out infinite; /* Add animation */
}

.whatsapp-button svg {
    width: 80px;
    height: 80px;
}

.whatsapp-button:hover {
    transform: scale(1.1);
}

#sidebar-wrapper {
    width: 15%;
    height: 100vh;
    background-color: #000;
    color: white;
    position: fixed;
    left:0;
    top: 0;
    border-right: 2px solid #fff;
}
#main{
    width: 100%;
    margin: 0 auto;
    color: #fff;
    padding: 20px;
    background-color: #212529;
}
.content{
    float: right;
    width: 85%;
    position: relative;
    top: 0vh;
    right: 0;
    color: #fff;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    margin-bottom: 80px;
}

.selection{
    display: flex;
    flex-direction: row;
}
.selection .btn{
    max-width: 150px;
    height: 36px;
    margin-top: 21px;
}


/*Style with mapbox*/
.mapboxgl-control-container {right: 20%;}
.mapboxgl-ctrl-bottom-right {display: none;}
.vehicle-list{
    display: none;
}

#viewVehicle{
    min-width: 27%;
    color: #000;
    margin-top: -30px;
}
#viewVehicle strong{
    color: #6c757d
}
#vehicles{
    width: 100%;
    height: 100%;
    min-height: 100vh;
    border-right: 3px solid #084298;
    overflow-y: scroll;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none; /* For Firefox */
    -webkit-scrollbar-width: none;
}

#vehicles h5{
    margin-left: 25px;
    color: #fff;
}

.vehicle-item{
    display: flex;
    flex-direction: column;
    border-block: 3px solid;
    margin-left: 16px;
}
#vehicles td{
    width: 20%;
}
#vehicles .actions{
    display: flex;
    flex-direction: row;
    padding: 10px;
    font-size: 18px;
    text-align: left;
    width: 70%;
}

#vehicles .actions a{
    height: 25px;
    width: 100%;
    background-color: #41464b;
    padding: 0px 15px;
    border-radius: 20px;
    margin: 5px;
    color: #fff;
}

#vehicles .actions svg{
    margin-bottom: 12px;
    margin-left: -10px;
}

#vehicles .actions span{
    position: relative;
    bottom: 2px;
    margin-left: 4px;
}

#map{
    width: 85%; /* Set width to 70% of the device */
    height: 100vh; /* Adjust height as needed (e.g., full viewport height) */
    margin: 0 auto; /* Center it if required */
    display: block; /* Ensures it's treated as a single block-level element */
}

.mapboxgl-control-container{
    position: absolute;
    bottom: 0;
}

.message{
    width: 85%;
    background-color: #823131;
    color: #fff;
    margin: 0 auto; width: 70%; padding: 20px;margin-bottom: 100px;
}
.viewAlert a {
    color: #E1F5FE;
    background-color: #152168;
    display: block;
    height: 50px;
    height: 35px;
    width: 155px;
    padding: 4px;
    text-align: center;
    text-decoration: none;
}
#addVehicle{
    float: inline-start;
    width: 70%;
    left: 10%;
    color: #fff;
    margin-bottom: 100px;
    display: block;
}

#Registration_page form{
    margin: 0 auto;
    width: 90%;
    color: #000;
    margin-bottom: 100px;
}

form .mb-1 {
    margin-bottom: .25rem !important;
    display: flex;
}
#Registration_page .btn{
    margin: 0 auto;
    width: 30%;
}
.sidebar-heading{
    margin-left: 10px;
    margin-top: 10px;
    font-size: 18px;
    padding: 6px;
    position: relative;
    top: 0%;
}

.sidebar-nav{
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    align-items: center;
    margin-left: 7px;
    color: #fff;
    list-style: none;
}

.sidebar-nav ul{
    list-style: none;
    display: flex;
    flex-direction: column;
    padding: 0px;
    color: #000;
}

.sidebar-item{
    color: #fff;
    padding: 0px;
    text-decoration: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
}

.sidebar-item a{
    color: #fff;
    text-decoration: none;
    font-size: 15px;
}

li:focus{
    background-color: #000;
    color: #fff;
    padding: 5px;
}


form {
    display: grid;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

#addDriver{
    width: 70%;
    right: 20%;
}

#compass{
    position: absolute;
    right: 4%;
    top: 5%;
    height: 50px;
    width: 50px;
    background: #21252991;
    display: grid;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    z-index: 10;
    border-radius: 50%;
    color: #fff;
}


label, input, textarea {
    display: block;
    width: 100%;
    margin-bottom: 10px;
}
 form label{
    text-align: right;
    margin-right: 10px;
 }
button {
    width: 100%;
    padding: 10px;
    background: #007BFF;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.mobile-message{display: none;}
.alerts h1{
    padding: 5px;
    margin: -13px;
    z-index: 2;
    position: relative;
    display: block;
    color: #fff;
    text-align: center;
    width: 100%;
    margin: 0 auto;
}

.container {
    margin: 20px auto;
    background: #fff;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
    color: #fff;
}

tr{
    color: #000;
}

table,td {
    border: 1px solid #ddd;
    color: #fff;
}

th, td {
    padding: 10px;
    text-align: left;
}

th {
    background-color: #41464bc2;
    color: #fff;
}

.actions a {
    margin-right: 10px;
    text-decoration: none;
}

.actions a:hover {
    color: #007bff;
}

.dialog-box {
    display: none;
    position: fixed;
    width: 40%;
    top: 50%;
    left: 65%;
    transform: translate(-50%, -50%);
    background: #fff;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

.dialog-box h1 {
    color: #333;
}

#messageForm {
    margin-bottom: 20px;
}
/*
input[type="text"] {
    padding: 10px;
    margin-right: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
}
*/
button {
    padding: 10px 20px;
    background-color: #0056b3;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

button:hover {
    background-color: #004494;
}

#messages {
    width: 50%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    color: #000;
    padding: 20px;
}

h3{
    margin: 10px auto;
    width: 90%;
    color: #fff;
    margin-left: 26px;
}

.message-item {
    margin: 0 auto;
    width: 90%;
    background-color: white;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.viewDriver{
    margin: 0 auto;
    width: 50%;
    background-color: #41464b;
    padding: 20px;
    margin-top: 30px;
    color: #fff;
}

#addDriver h2,#addVehicle h2{
    margin: 0 auto;
    padding: 10px;
    width: 70%;
    margin-left: 44%;
    margin-bottom: 20px;
    font-size: 1.5em;
}

.dialog-box button {margin: 5px;padding: 10px 20px;cursor: pointer;}
#loginContainer{margin: 0 auto;margin-top: 10vh;border-radius: 10px;width: 35%; text-align: center; padding: 5px;color: #fff;}
#loginContainer form{display: flex;flex-direction: column;gap: 20px;width: 100%;margin: 0 auto;}
#loginContainer form label{text-align: left; margin-left: 80px;}
#loginContainer form .alert{padding: 5px;}
#loginContainer form input{margin: 0 auto;width: 70%;}
#loginContainer form .btn{margin: 0 auto;width: 40%; flex: none;}
footer{width: 100%;text-align: center;color: #fff;position: fixed;bottom: 0;margin-top: 50px;display: block;background-color: #000;}

@media screen and (max-width: 1024px){
    #sidebar-wrapper{display: none;}
    .navbar{display: none;}

}

@media screen and (max-width: 767px){
    #sidebar-wrapper{display: none;}

    .dialog-box{
        left: 10%;
    }

    #sidebar-wrapper ul{
        margin: 0px auto;
        padding: 30px;
        color: #fff;
        display: none;
        position: fixed;
        line-height: 40px;
        left: 0;
        top: 0vh;
        width: 70%;
        border-radius: 2px;
        height: 100%;
        font-size: 17px;
        list-style: none;
        background-color: #1353b2;
    }
    .desktop-message{
        display: none;
    }

    .mobile-message{
       margin: 0 auto;
        display: block;
        width: 100%;
        text-align: center;
        font-size: 17px;
        margin-top: 86px;
        padding: 3px;
        color: #fff;
    }

    .viewDriver{
        width: 80%;
    }
    #loginContainer {margin: 0 auto;width: 95%;position: relative;top: 16vh;}
    #loginContainer form{margin-top: 0px}
    .viewAlert{
        flex-direction: column;
    }

    .message{
        width: 85%;
    }


    #vehicles{
        width: 100%;
        height: 100%;
        min-height: 100vh;
        border-right: none;
        text-align: center;
        color: #fff;
        margin-top: 30px;
    }


    #viewVehicle{
        display: none;
    }
    .content{
        width: 100%;
        float: none;
        top: 7vh;
        position: relative;
    }
    .content #map{
        width: 100%;
        position: absolute;
        left: 0;
        right: 0;
    }
    .content table{
        display: none;
    }
    .content .vehicle-list{
        display: flex;
        flex-direction: column;
        gap: 20px;
        border-bottom: 1px solid;
    }

    .vehicle-list .title{
        text-align: left;
        display: flex;
        gap: 20px;
        margin-left: 20px;
    }

    .vehicle-list .items{
        display: flex;
        flex-direction: row;
        gap: 20px;
    }
    .vehicle-list svg{
        width: 50%;
    }
    .vehicle-list .actions{
        display: flex;
        flex-direction: column;
        width: 40%;
        text-align: left;
    }
    .vehicle-list .actions span{
        margin-left:-30px;
    }

    .selection{
        flex-direction: column;
    }

    #vehicles select {width: 55%;}

    .choose-vehicle,.choose-vNumber{
        display: flex;
        width: 100%;
        background: red;
        height: 77px;
        padding: 0px;
    }

    .selection span {
        padding: 14px;
        margin: 10px -28px;
        margin-left: 5px;
        font-size: 15px;
        color: #fff;
    }
}

@media screen and (max-width: 350px){
    #loginContainer{margin-top: 2vh; padding: 20px 0px; width: 95%;}
    #loginContainer form{padding: 2px !important;}
    #loginContainer form .btn{width: 55%;}
    #loginContainer form input {width: 90%;}
    #loginContainer form label {margin-left: 45px;}
    #loginContainer h5{font-size: 17px;}
}
