/* Estilos para los widgets de Elementor de Tourm */

/* Search Tabs Widget */
.search-tabs-container {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    padding: 20px;
    margin: 20px 0;
}

.search-tabs-nav {
    display: flex;
    border-bottom: 2px solid #e0e0e0;
    margin-bottom: 20px;
}

.search-tab-button {
    background: none;
    border: none;
    padding: 12px 24px;
    cursor: pointer;
    font-size: 16px;
    color: #666;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
}

.search-tab-button:hover {
    color: #333;
}

.search-tab-button.active {
    color: #007cba;
    border-bottom-color: #007cba;
}

.search-tab-content {
    display: none;
}

.search-tab-content.active {
    display: block;
}

.search-form-group {
    margin-bottom: 15px;
}

.search-form-group label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #333;
}

.search-form-group input,
.search-form-group select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
}

.search-submit-button {
    background: #007cba;
    color: white;
    border: none;
    padding: 12px 30px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    transition: background 0.3s ease;
}

.search-submit-button:hover {
    background: #005a87;
}

/* Transport Search Widget */
.transport-search-container {
    background: #f9f9f9;
    border-radius: 8px;
    padding: 20px;
    margin: 20px 0;
}

.transport-search-form {
    display: grid;
    gap: 15px;
}

@media (min-width: 768px) {
    .transport-search-form {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {
    .transport-search-form {
        grid-template-columns: repeat(4, 1fr);
    }
}

.transport-search-form .search-form-group {
    margin-bottom: 0;
}

.transport-search-form .search-submit-button {
    grid-column: 1 / -1;
    justify-self: start;
}

/* Estilos para el timepicker */
/* Estilos generales para el contenedor del datetimepicker */
.ui-datepicker {
    font-family: 'Arial', sans-serif; /* Fuente más ejecutiva */
    border: 1px solid #ddd; /* Borde suave */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* Sombra sutil */
    border-radius: 8px; /* Bordes redondeados */
    padding: 15px; /* Espaciado interno */
    background-color: #fff; /* Fondo blanco */
}

/* Estilos para el encabezado del calendario (mes y año) */
.ui-datepicker-header {
    background-color: #f8f8f8; /* Fondo claro */
    border-bottom: 1px solid #eee; /* Separador */
    padding: 10px 0; /* Espaciado */
    margin-bottom: 10px; /* Margen inferior */
    border-radius: 8px 8px 0 0; /* Bordes redondeados superiores */
}

.ui-datepicker-title {
    font-size: 1.1em; /* Tamaño de fuente del título */
    font-weight: bold; /* Negrita */
    color: #333; /* Color de texto oscuro */
}

.ui-datepicker-prev, .ui-datepicker-next {
    color: #555; /* Color de las flechas */
    font-size: 1.2em; /* Tamaño de las flechas */
    cursor: pointer; /* Cursor de puntero */
}

/* Estilos para los días de la semana */
.ui-datepicker th {
    color: #777; /* Color de texto */
    font-size: 0.9em; /* Tamaño de fuente */
    padding: 8px 0; /* Espaciado */
}

/* Estilos para los días del calendario */
.ui-datepicker td {
    padding: 5px; /* Espaciado */
}

.ui-datepicker td span, .ui-datepicker td a {
    display: block; /* Ocupar todo el espacio */
    padding: 8px; /* Espaciado interno */
    text-align: center; /* Centrar texto */
    text-decoration: none; /* Sin subrayado */
    border-radius: 4px; /* Bordes redondeados */
    color: #333; /* Color de texto */
}

.ui-datepicker td a:hover {
    background-color: #e0e0e0; /* Fondo al pasar el ratón */
}

.ui-state-highlight, .ui-state-active {
    background-color: #007bff !important; /* Color de resaltado (azul) */
    color: #fff !important; /* Texto blanco */
}

/* Estilos para la sección de la hora */
.ui-timepicker-div .ui-widget-content {
    font-size: 0.9em; /* Reduce el tamaño de la fuente */
    border: none; /* Eliminar borde */
    background-color: transparent; /* Fondo transparente */
}

.ui-timepicker-div .ui-timepicker-select {
    width: 60px; /* Ajusta el ancho de los selectores de hora y minuto */
    padding: 3px; /* Reduce el padding */
    margin: 2px; /* Reduce el margen */
    font-size: 0.8em; /* Reduce el tamaño de la fuente dentro de los selectores */
    border: 1px solid #ccc; /* Borde para los selectores */
    border-radius: 4px; /* Bordes redondeados */
    background-color: #f9f9f9; /* Fondo claro */
}

.ui-timepicker-div .ui-slider .ui-slider-handle {
    width: 1em; /* Reduce el tamaño del manejador del slider */
    height: 1em; /* Reduce el tamaño del manejador del slider */
    background-color: #007bff; /* Color del manejador */
    border: 1px solid #007bff; /* Borde del manejador */
}

.ui-timepicker-div .ui-slider-horizontal {
    height: .4em; /* Reduce la altura del slider horizontal */
    background-color: #e9ecef; /* Color de la pista del slider */
}

.ui-timepicker-div .ui-slider-vertical {
    width: .4em; /* Reduce el ancho del slider vertical */
    background-color: #e9ecef; /* Color de la pista del slider */
}

.ui-timepicker-div .ui-timepicker-table {
    width: 100%; /* Asegura que la tabla ocupe todo el ancho disponible */
    border-collapse: collapse; /* Colapsa los bordes de la tabla */
}

.ui-timepicker-div .ui-timepicker-table td {
    padding: 2px; /* Reduce el padding de las celdas de la tabla */
    text-align: center; /* Centra el texto en las celdas */
}

.ui-timepicker-div .ui-timepicker-button {
    padding: 0.2em 0.5em; /* Ajusta el padding de los botones */
    font-size: 0.8em; /* Reduce el tamaño de la fuente de los botones */
    background-color: #f0f0f0; /* Fondo de los botones */
    border: 1px solid #ccc; /* Borde de los botones */
    border-radius: 4px; /* Bordes redondeados */
    color: #333; /* Color de texto */
}

.ui-timepicker-div .ui-timepicker-button:hover {
    background-color: #e0e0e0; /* Fondo al pasar el ratón */
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .ui-datepicker {
        padding: 10px; /* Reduce el padding en pantallas pequeñas */
    }

    .ui-datepicker td span, .ui-datepicker td a {
        padding: 6px; /* Reduce el padding de los días */
        font-size: 0.9em; /* Ajusta el tamaño de la fuente */
    }

    .ui-timepicker-div .ui-timepicker-select {
        width: 50px; /* Ajusta el ancho de los selectores de hora */
        font-size: 0.75em; /* Ajusta el tamaño de la fuente */
    }

    .ui-timepicker-div .ui-timepicker-button {
        font-size: 0.75em; /* Ajusta el tamaño de la fuente de los botones */
    }
}