html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.btn-movilbus-1 {
    background-color: #FF6600; /* Naranja MOVILBUS */
    color: white;
    border: none;
    border-radius: 8px;
    padding: 8px 20px;
    font-size: 13px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
}

.btn-movilbus-1:hover {
    background-color: #E65C00; /* Naranja más oscuro al hover */
}

.btn-movilbus-2 {
    background-color: #CC0000; /* Rojo corporativo MOVILBUS */
    color: white;
    border: none;
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 13px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
}

.btn-movilbus-2:hover {
    background-color: #B30000; /* Rojo más oscuro al hover */
}

.floating-group {
    position: relative;
    margin-bottom: 20px;
}

.floating-group input {
    width: 100%;
    padding: 10px 5px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: none;
    outline: none;
}

.floating-group label {
    position: absolute;
    left: 8px;
    top: 10px;
    font-size: 14px;
    color: #777;
    pointer-events: none;
    transition: 0.2s ease all;
}

    /* Cuando el input está enfocado, tiene texto o está deshabilitado */
   /* .floating-group input:focus + label,
    .floating-group input:not(:placeholder-shown) + label,
    .floating-group input:disabled + label {
        top: -8px;
        left: 5px;
        font-size: 12px;
        background: white;
        padding: 0 4px;
        color: #333;
    }*/

    /* Opcional: estilo visual cuando está disabled */
    .floating-group input:disabled {
        background: #f5f5f5;
        color: #999;
        cursor: not-allowed;
    }

    .floating-group input:disabled + label {
        color: #aaa;
        background-color: #e9ecef;
        opacity: 1;
    }

    /*Cuando el input está enfocado o tiene texto */
.floating-group input:focus + label,
.floating-group input:not(:placeholder-shown) + label {
    top: -8px;
    left: 5px;
    font-size: 12px;
    background: white;
    padding: 0 4px;
    color: #333;
}

.floating-group select {
    width: 100%;
    padding: 10px 5px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: none;
    outline: none;
    appearance: none; /* Quita la flecha por defecto (puedes personalizarla luego) */
}

.floating-group label {
    position: absolute;
    left: 8px;
    top: 10px;
    font-size: 14px;
    color: #777;
    pointer-events: none;
    transition: 0.2s ease all;
    background: white;
    padding: 0 4px;
}

/* Cuando el select tiene foco o un valor distinto al vacío */
.floating-group select:focus + label,
.floating-group select:not([value=""]) + label {
    top: -8px;
    left: 5px;
    font-size: 12px;
    color: #333;
}


.floating-group-sm {
    position: relative;
    margin-bottom: 15px;
}

.floating-group-sm input {
    width: 100%;
    padding: 7px 5px 3px;
    font-size: 13px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: none;
    outline: none;
}

.floating-group-sm label {
    position: absolute;
    left: 8px;
    top: 5px;
    font-size: 13px;
    color: #777;
    pointer-events: none;
    transition: 0.2s ease all;
}

/* Cuando el input está enfocado o tiene texto */
.floating-group-sm input:focus + label,
.floating-group-sm input:not(:placeholder-shown) + label {
    top: -8px;
    left: 5px;
    font-size: 12px;
    background: white;
    padding: 0 4px;
    color: #333;
}

.floating-group-sm select {
    width: 100%;
    padding: 7px 5px 3px;
    font-size: 13px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: none;
    outline: none;
    appearance: none; /* Quita la flecha por defecto (puedes personalizarla luego) */
}

.floating-group-sm label {
    position: absolute;
    left: 8px;
    top: 5px;
    font-size: 13px;
    color: #777;
    pointer-events: none;
    transition: 0.2s ease all;
    background: white;
    padding: 0 4px;
}

/* Cuando el select tiene foco o un valor distinto al vacío */
.floating-group-sm select:focus + label,
.floating-group-sm select:not([value=""]) + label {
    top: -8px;
    left: 5px;
    font-size: 12px;
    color: #333;
}
