/* Dashboard */
.tic-dashboard {
    /* 1. Define el ancho máximo del contenido */
    width: 100%;
    max-width: 1200px;
    
    /* 2. Centra el contenedor en la página */
    margin-left: auto;
    margin-right: auto;

    /* 3. Agrega un poco de espacio interior (opcional, pero recomendado) */
    padding-left: 15px;
    padding-right: 15px;
}


div.tic-dashboard h2,h3 {
  /*text-align: center !important;
  margin: auto !important;*/
  padding: 20px;
}

.tic-planificador-container {
    /* 1. Define el ancho máximo del contenido */
    width: 100%;
    max-width: 1200px;
    
    /* 2. Centra el contenedor en la página */
    margin-left: auto;
    margin-right: auto;
    
    /* 3. Agrega un poco de espacio interior (opcional, pero recomendado) */
    padding-left: 15px;
    padding-right: 15px;
}

/* administracion de itinerarios */
.tic-itineraries-management {
  width: 100%;
  max-width: 1200px;
  margin: auto;
  background-color: white;
  padding: 10px;
  border-radius: 8px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

.tic-itinerario-activo {
  color: #2c5777;
  font-size: 1.3em;
  font-weight: bold;
  outline-style: double;
  text-align: center;
}

/* Menu de navegacion entre modulos**/
.tic-module-navigation {
  width: 100%;
  max-width: 1200px;
  margin: auto;
  background-color: rgb(215, 218, 219);
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

.tic-module-navigation h3 {
  text-align: center;
  margin-top: -10PX;
}

/* Menu de navegacion entre modulos lista**/
.tic-module-navigation ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
}

.tic-module-navigation li {
  margin-right: 20px;
}

.tic-module-navigation li a {
  text-decoration: none; /* Elimina las líneas de bajo de los enlaces */
  color: #333; /* Color del texto */
  font-family: Arial, sans-serif; /* Fuente */
  font-size: medium;
  font-weight: bold; /* Hace la fuente más gruesa */
  padding: 10px; /* Espacio dentro del enlace */
  background-color: #eee; /* Color de fondo */
  border-radius: 5px; /* Bordes redondeados */
}

.tic-module-navigation li a:hover {
  background-color: #ddd; /* Cambia el color de fondo al pasar el ratón */
  color: #007bff; /* Cambia el color del texto al pasar el ratón */
}
.tic-module-navigation a.active {
    border-color: #2271b1;
    background-color: #eef5ff;
    font-size: 1.1em;
    font-weight: bold;
    color: #2271b1;
}

@media (max-width: 768px) {
  .menu {
    flex-direction: column; /* Cambia la orientación a columna en pantallas pequeñas */
  }

  .tic-module-navigation li {
    margin-right: 0; /* Elimina el margen derecho en pantallas pequeñas */
    margin-bottom: 10px; /* Añade margen inferior entre los elementos de la lista */
  }
}

/* Contenedor del Formulario */
.tic-form-content {
/*  width: 100%; */
  max-width: 1200px;
    
    margin-left: auto;
    margin-right: auto;
  background-color: #f4f4f4;
  padding: 10px;
  border-radius: 8px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

/* Contenedores flexibles */
.tic-form-section {
  display: flex;
  gap: 20px;
  margin: 10px;
  border-top: 1px dashed #ccc; 
  padding-top: 10px; 
  /* margin-top:10px; */
}
.tic-form-section-inner {
  display: flex;
  gap: 15px;
  margin: 10px;
  padding-top: 10px; 
}

/* Grupos de formulario */
.tic-itinerary-form-group input {
  border: 2px solid #4A90E2;
  border-radius: 4px;
  margin: 0.25rem;
  /*min-width: 250px; */
  width: 100%;
  padding: 0.5rem;
  transition: border-color 0.5s ease-out;
}
.tic-itinerary-form-group select {
  border: 2px solid #4A90E2;
  border-radius: 4px;
  margin: 0.25rem;
  /*min-width: 250px; */
  width: 100%;
  padding: 0.5rem;
  transition: border-color 0.5s ease-out;
}
.tic-form-group {
  flex: 1;
  /*position: relative;
  margin-bottom: 0; */
}

.tic-form-group label {
  font: 0.8em "typewriter", sans-serif;
  font-weight: bold;
  display: block;
  margin-bottom: 8px;
  color: #555;
}

.tic-form-group input[type="text"],
.tic-form-group input[type="number"],
.tic-form-group input[type="datetime-local"] {
  width: 100%;
  padding: 8px;
  border: 1px solid #4A90E2;
  border-radius: 4px;
  box-sizing: border-box;
}
.tic-form-group input[type="time"] {
  width: 100%;
  padding: 8px;
  border: 1px solid #4A90E2;
  border-radius: 4px;
  box-sizing: border-box;
}

.tic-form-group select, textarea {
  width: 100%;
  padding: 8px;
  border: 1px solid #4A90E2;
  border-radius: 4px;
  box-sizing: border-box;
}


/* Botones para el sitio*/
.action-btn-container {
  display: flex; gap: 5px; flex-direction: column;
}

.action-btn{
  border: none; 
  color: black; 
  padding: 7px 14px; 
  cursor: pointer; 
  border-radius: 5px;
  font-size: 0.9em; 
}

.dashboard-btn {
  background-color: #39739d; color: white; border: 2px solid #2c5777; margin-top: 25px;
}

.dashboard-btn:hover {
  background: whitesmoke; color: black; 
}

.add-btn {
  background-color: white; border: 2px solid #28a745;
}

.add-btn:hover {
  background: #02bb8c; color: white;
}

.edit-btn {
  background-color: white; border: 2px solid #ff9800;
}

.edit-btn:hover {
  background: #e68a00; color: white;
}

.delete-btn {
  background-color: white; border: 2px solid #f44336;
}

.delete-btn:hover {
  background: #da190b; color: white;
}

.print-report-btn {
  background-color: white; border: 2px solid #39739d; margin-top: 10px;
}

.print-report-btn:hover {
  background: #2c5777; color: white;
}


.tic-notice {
  color: red;
  font-size: 0.9em;
}

.flight-warning-date-container {
color: #c06000 !important;
font-size: 0.9em; 
display: none;
}

/* Tablas */
.tic-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

.tic-table th,
.tic-table td {
  font-size: 12px;
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}

/*.tic-table tr:nth-child(even) {
  background-color: #f2f2f2;
}
.tic-table tr:nth-child(odd) {
  background-color: #ddd;
} */

.tic-table th {
  background-color: #f2f2f2;
}
.tic-table-details th {
  text-align: right;
}

.tic-inner-table th, 
.tic-inner-table td {
  font-size: 16px;
}

/* ==========================================================================
   Estilos Responsivos para Móviles
   ========================================================================== */

/* Aplicar estos estilos solo en pantallas con un ancho máximo de 768px */
@media (max-width: 768px) {

    /* --- Menú de Módulos Responsivo --- */

    /* Forzamos al contenedor de la lista a que permita que sus hijos se apilen */
    .tic-module-navigation ul {
        flex-direction: column; /* Si estás usando flexbox para la lista */
        align-items: stretch;   /* Estirar los items para que ocupen todo el ancho */
    }

    /* Cada elemento de la lista (el <li>) ahora ocupará su propia fila */
    .tic-module-navigation li {
        display: block;   /* Asegurarse de que sea un bloque */
        width: 100%;      /* Ocupar todo el ancho disponible */
        margin-bottom: 25px; /* Añadir un pequeño espacio entre los botones */
        margin-left: 0;   /* Resetear cualquier margen izquierdo que tuvieran */
    }
    
    /* Le damos estilo al enlace (el <a>) para que parezca más un botón tappable */
    .tic-module-navigation a {
        padding: 10px;
        text-align: center; /* Centrar el texto dentro del botón */
        border: 1px solid #ccc;
        border-radius: 4px;
        background-color: #f9f9f9;
    }

    /* Cuando un módulo está activo, le damos un estilo más prominente */
    .tic-module-navigation a.active {
        border-color: #2271b1;
        background-color: #eef5ff;
        font-weight: bold;
        color: #2271b1;
    }

    /* Ajustar el enlace de "Eliminar Itinerario" para que no se vea tan diferente */
    #tic-menu-eliminar-itinerario {
        background-color: #fbeaea; /* Un rojo muy pálido para indicar acción de eliminar */
        border-color: #d63638;
        color: #a00 !important; /* Forzar el color rojo del texto */
    }
    
    /* Otros ajustes generales para móviles si son necesarios */
    .tic-dashboard h2, 
    .tic-dashboard h3 {
      text-align: center; /* Centrar títulos en móvil */
    }

    /* Hacer que los grupos de campos en los formularios se apilen */
    .tic-form-section {
      flex-direction: column;
    }
    .tic-form-section-inner {
      flex-direction: column;
    }
    
    .tic-form-section .tic-form-group {
      width: 100%; /* Cada campo ocupa su propia línea */
      margin-right: 0;
    }
    .tic-form-section-inner .tic-form-group {
      width: 100%; /* Cada campo ocupa su propia línea */
      margin-right: 0;
    }
}

/* =========================================
   Estilos de Impresión para Reportes TIC
   ========================================= */
@media print {

  /* Ocultar elementos comunes de WordPress/Temas */
  #wpadminbar,
  /* Barra de admin de WP */
  .admin-bar header,
  /* Encabezado del tema cuando la barra admin está visible */
  body>header,
  /* Encabezado principal del tema (puede variar) */
  #header,
  /* IDs comunes para encabezados */
  .site-header,
  nav,
  /* Menús de navegación */
  .main-navigation,
  #adminmenumain,
  /* Menú lateral del admin WP (si estuviera en backend) */
  #wpfooter,
  /* Pie de página de WP */
  body>footer,
  /* Pie de página del tema (puede variar) */
  #footer,
  /* IDs comunes para pie de página */
  .site-footer,
  aside,
  /* Barras laterales */
  .sidebar,
  #secondary {
    display: none !important;
    /* Ocultar forzosamente */
  }

  /* Ocultar elementos específicos del Dashboard del Plugin */
  .tic-dashboard h3,
  /* Título principal del dashboard */
  .tic-itineraries-management,
  /* Toda la sección de gestión de itinerarios */
  .tic-module-navigation,
  .tic-itinerario-activo,
  #tic-current-itinerary-info,
  #tic-current-itinerary-name,
  #tic-current-itinerary-currency-display,
  /* La navegación entre módulos (Vuelos, Alojamiento...) */
  .tic-acciones,
  #tic-view-report-btn,
  /* El botón "Ver Reporte Vuelos" */
  #tic-imprimir-reporte-vuelos,
  /* El propio botón de imprimir DENTRO del reporte Actividades*/
  #tic-imprimir-reporte-actividades,
  /* El propio botón de imprimir DENTRO del reporte de Alojamiento*/
  #tic-imprimir-reporte-alojamiento,
  /* El propio botón de imprimir DENTRO del reporte de Traslados*/
  #tic-imprimir-reporte-traslados, 
  /* El propio botón de imprimir DENTRO del reporte de Cruceros*/
  #tic-imprimir-reporte-cruceros,
  /* El propio botón de imprimir DENTRO del reporte de Presupuesto Total*/
  #tic-imprimir-presupuesto-total,
  #tic-imprimir-reporte-timeline,
  #tic-actions-th,
  #tic-actions-td
  {
    display: none !important;
  }

  /* Asegurar que el cuerpo y el contenido principal ocupen todo */
  body,
  html,
  #page,
  /* ID común en temas */
  #content,
  /* ID común en temas */
  #primary,
  /* ID común en temas */
  .entry-content,
  /* Clase común en temas */
  .tic-dashboard,
  /* Contenedor principal del plugin */
#tic-module-content {
  width: 100%;
  max-width: 1200px;
  margin: 20px auto; /* 20px de margen vertical, y centrado horizontal */
  background-color: #f9f9f9; /* Un color de fondo suave para distinguirlo */
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  box-sizing: border-box; /* Para que el padding no afecte el ancho total */
}

  /* Estilos para la tabla del reporte en impresión */
  #tic-module-content .tic-table {
    /* Ser más específico */
    width: 100% !important;
    border-collapse: collapse !important;
    margin-top: 1em !important;
    /* Espacio antes de la tabla */
    font-size: 10pt;
    /* Tamaño de fuente legible para imprimir */
  }

  #tic-module-content .tic-table th,
  #tic-module-content .tic-table td {
    border: 1px solid #ccc !important;
    /* Bordes visibles */
    padding: 2px 3px !important;
    text-align: center !important;
  }

  #tic-module-content .tic-table th {
    background-color: #eee !important;
    /* Fondo ligero para cabeceras */
    font-weight: bold !important;
  }

  /* Ocultar el formularios si estuvieran presentes accidentalmente */
  #tic-flights-form, 
  #tic-accommodation-form,
  #tic-activities-form,
  #tic-transfers-form,
  #tic-activities-form,
  #tic-transfers-form,
  #tic-budget-view 
  {
    display: none !important;
  }

  /* Ocultar cualquier otro botón dentro del contenido del módulo */
  #tic-module-content button,
  #tic-module-content .button {
    display: none !important;
  }

  /* Mostrar títulos del reporte */
  #tic-module-content h2,
  #tic-module-content h3 {
    display: block !important;
    /* Asegurar que los títulos del reporte sean visibles */
    text-align: center;
    margin-bottom: 1em;
  }

  /* Ocultar el botón de imprimir que está DENTRO del reporte */
  #tic-imprimir-reporte-vuelos,
  #tic-imprimir-reporte-alojamiento,
  #tic-imprimir-reporte-actividades,
  #tic-imprimir-reporte-traslados,
  #tic-imprimir-reporte-cruceros,
  #tic-imprimir-presupuesto-total {
    display: none !important;
  }


  #tic-module-content .tic-budget-summary-table {
      width: 100% !important;
      border-collapse: collapse !important;
      margin-top: 1em !important;
      font-size: 14px;
  }
  #tic-module-content .tic-budget-summary-table th,
  #tic-module-content .tic-budget-summary-table td {
      border: 1px solid #ccc !important;
      padding: 4px 6px !important;
  }
  #tic-module-content .tic-budget-summary-table th {
      background-color: #f0f0f0 !important; /* Un gris un poco más claro para Presupuesto */
      font-weight: bold !important;
  }
    #tic-module-content .tic-budget-summary-table .tic-grand-total-row td {
      border-top: 2px solid #333 !important;
      font-weight: bold;
  }

} /* Fin de @media print */
/* Estilos para el Modal de la Bitácora */
.tic-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
}
.tic-modal-content {
    background-color: #fff;
    padding: 20px 30px;
    border-radius: 5px;
    width: 90%;
    max-width: 600px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}
.tic-modal-actions {
    margin-top: 20px;
    text-align: right;
}
.tic-diary-entry {
    background-color: #fffbef;
    border-left: 3px solid #f9c957;
    padding: 10px;
    margin-top: 10px !important;
    list-style-type: none !important;
}
.tic-diary-entry .diary-header {
    font-size: 1.1em;
    margin-bottom: 8px;
}