/* =====================================================
   🔹 RESET GLOBAL
===================================================== */
*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:"Poppins",sans-serif;
}

body{
background:#f5f7fa;
}


/* =====================================================
   🔹 HEADER / NAVBAR
===================================================== */

header{
z-index:9999;
position:fixed;
top:0;
left:0;
width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 200px;

background:linear-gradient(90deg,#1f4e6b,#2696E9);
color:#fff;

box-shadow:0 2px 10px rgba(0,0,0,0.2);
}

/* LOGO */
header .brand{
display:flex;
align-items:center;
gap:10px;
color:#fff;
font-size:1.5em;
font-weight:700;
text-decoration:none;
}

header .brand img{
height:30px;
}

/* NAV LINKS */
header .nav{
position:relative;
}

header .nav .nav-item{
display:flex;
}

header .nav .nav-item a{
color:#fff !important;
margin-left:30px;
text-decoration:none;
font-weight:500;
opacity:0.9;
transition:0.3s;
}

header .nav .nav-item a:hover{
opacity:1;
}

/* SUBRAYADO */
header .nav .nav-item a:before{
content:"";
position:absolute;
background:#fff;
width:0;
height:2px;
bottom:-3px;
left:0;
transition:0.3s;
}

header .nav .nav-item a:hover:before{
width:100%;
}


/* =====================================================
   🔹 STATUS / USER INFO
===================================================== */

.status-bar{
display:flex;
gap:15px;
margin-left:20px;
font-size:14px;
color:#fff;
}

.usuario-box{
display:flex;
align-items:center;
gap:10px;
margin-left:15px;
}

.usuario-texto{
font-size:14px;
color:#fff;
}


/* =====================================================
   🔹 CONTENIDO GENERAL
===================================================== */

.contenido{
margin-top:120px;
padding:40px 120px;
}


/* =====================================================
   🔹 BUSCADOR
===================================================== */

.buscador{
margin-bottom:20px;
}

.buscador input{
width:100%;
padding:12px;
border-radius:8px;
border:1px solid #ccc;
font-size:16px;
}


/* =====================================================
   🔹 CARDS VEHICULOS
===================================================== */

.vehiculos{
display:grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap:20px;
}

.vehiculo-card{
background:white;
padding:20px;
border-radius:12px;
box-shadow:0 5px 15px rgba(0,0,0,0.1);
transition:0.2s;
}

.vehiculo-card:hover{
transform:translateY(-5px);
}

.vehiculo-card h3{
color:#2696E9;
margin-bottom:10px;
}


/* =====================================================
   🔹 ESTADOS
===================================================== */

.estado-disponible{
color:#28a745;
font-weight:bold;
}

.estado-ocupado{
color:#dc3545;
font-weight:bold;
}


/* =====================================================
   🔹 BOTONES
===================================================== */

.btn-solicitar{
display:block;
margin-top:15px;
padding:12px;
background:#28a745;
color:white;
border-radius:8px;
text-decoration:none;
font-weight:bold;
text-align:center;
transition:0.2s;
}

.btn-solicitar:hover{
opacity:0.85;
}


/* =====================================================
   🔹 CALENDARIO
===================================================== */

#calendar{
margin-top:30px;
background:white;
padding:20px;
border-radius:12px;
box-shadow:0 5px 15px rgba(0,0,0,0.1);
}


/* =====================================================
   🔹 MENU MOBILE
===================================================== */

.menu-btn{
width:40px;
height:40px;
display:none;
flex-direction:column;
justify-content:center;
cursor:pointer;
gap:6px;
}

.menu-btn span{
height:3px;
width:25px;
background:#fff;
}

/* ANIMACION */
.menu-btn.active span:nth-child(1){
transform:rotate(45deg) translate(5px,5px);
}
.menu-btn.active span:nth-child(2){
opacity:0;
}
.menu-btn.active span:nth-child(3){
transform:rotate(-45deg) translate(7px,-6px);
}


/* =====================================================
   🔹 RESPONSIVE
===================================================== */

@media (max-width:1040px){

header{
padding:15px 50px;
}

.contenido{
padding:20px;
}

header .nav{
display:none;
position:absolute;
top:70px;
right:20px;
background:#2696E9;
width:220px;
border-radius:10px;
padding:25px;
}

header .nav .nav-item{
flex-direction:column;
}

header .nav .nav-item a{
margin:10px 0;
}

.menu-btn{
display:flex;
}

}

.nav.active{
display:flex;
}

@media (max-width:600px){

header{
padding:15px 20px;
}

.contenido{
padding:20px;
}

}