/* 
==================================
    BARRA DE NAVEGACIÓN
==================================
*/

header {
    background-color: #000000; /* Color azul corporativo */
    padding: 10px 0; /* Espaciado interno arriba y abajo */
    margin-bottom: 20px; /* Espaciado entre la barra y el contenido inferior */
  }
  
  /* Contenedor de la barra de navegación */
  .nav-container {
    display: flex;
    align-items: center;  /* Centra verticalmente los elementos */
    justify-content: space-between; /* Separa logo y menú */
    max-width: 1200px; /* Limita el ancho de la barra de navegación */
    margin: 0 auto;
    padding: 0 20px;
  }
  
  /* LOGO */
  .logo img {
    height: 50px;  /* Ajusta la altura del logo */
  }
  
  /* MENÚ DE NAVEGACIÓN */
  .nav-links {
    list-style: none; /* Elimina los estilos de lista */
    display: flex;
    gap: 20px; /* Espaciado entre elementos del menú */
  }
  
  .nav-links li {
    display: inline;
  }
  
  .nav-links a {
    text-decoration: none; /* Elimina el subrayado */
    color: rgb(255, 254, 254); /* Color del texto */
    font-size: 14px;
    font-weight: bold;
    transition: color 0.3s; /* Transición de color al pasar el mouse */
  }
  
  .nav-links a:hover {
    color: #91ff00; /* Color cuando se pasa el mouse */
  }
  
  /* 
  ==================================
      MENÚ HAMBURGUESA (RESPONSIVE)
  ==================================
  */
  
  /* Botón del menú hamburguesa, solo visible en móviles */
  .menu-toggle {
    display: none; /* Se oculta en pantallas grandes */
    font-size: 24px;
    cursor: pointer; /* Cambia el cursor al pasar el mouse */
  }
    
    
    
    /* =======================
       Estilos Comunes
    ========================== */
    body {
      font-family: Arial, sans-serif;  /* Fuente principal */
      background-color: #f4f4f4;         /* Color de fondo */
      margin: 0;
      padding: 0px;
      text-align: center;              /* Centrar contenido */
    }
    /* Contenedor principal de cada formulario */
    .container {
      background: #fff;                /* Fondo blanco */
      padding: 20px;                   /* Espaciado interno */
      border-radius: 8px;              /* Bordes redondeados */
      box-shadow: 0 0 15px rgba(0,0,0,0.2); /* Sombra */
      width: 100%;
      max-width: 330px;                /* Ancho máximo */
      margin: auto;                    /* Centrar horizontalmente */
      border: 3px solid #28a745;       /* Borde verde */
    }
    /* Encabezado de cada formulario */
    .header {
      background: linear-gradient(to right, #4df772, #39994f); /* Degradado verde */
      color: white;
      padding: 15px;
      border-radius: 6px 6px 0 0;       /* Bordes redondeados solo en la parte superior */
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 15px;             /* Separación debajo del encabezado */
      box-shadow: 0px 3px 5px rgba(0,0,0,0.2); /* Sombra sutil */
    }
    /* Estilos para los grupos de formulario (cada campo) */
    .form-group {
      display: flex;
      flex-direction: column;
      gap: 10px;                       /* Espacio entre elementos */
      margin-bottom: 10px;
    }
    /* Estilos para inputs y selects */
    .form-group input,
    .form-group select {
      width: 100%;
      padding: 10px;
      border: 1px solid #ccc;          /* Borde gris claro */
      border-radius: 6px;
      font-size: 12px;
      box-sizing: border-box;          /* Incluir padding en el ancho */
    }
    /* Grupo en línea para algunos campos */
    .inline-group {
      display: flex;
      align-items: center;
      gap: 5px;
    }
    /* Ajuste del select de Proyecto para que sea más ancho */
    .inline-group select#proyecto {
      flex: 3;
    }
    /* Ajuste del select de Nº para que sea más pequeño */
    .inline-group select#asignacion {
      flex: 1;
      max-width: 60px;
      text-align: center;
    }
    /* Placeholder: forzar que se muestre con color negro */
    input::placeholder {
      color: black !important;
      opacity: 1 !important;
    }
    /* Contenedor para la carga de archivos */
    .file-upload-container {
      display: flex;
      align-items: center;
      gap: 5px;
    }
    /* Botón para cargar archivos */
    .upload-btn {
      background-color: #28a745;
      color: white;
      border: none;
      padding: 11px 0;
      border-radius: 5px;
      cursor: pointer;
      font-size: 12px;
      transition: 0.3s;
      white-space: nowrap;
      flex: 0 0 37%;
    }
    .upload-btn:hover {
      background-color: #218838;
    }
    /* Ocultar input de archivos */
    #file-input {
      display: none;
    }
    /* Estilo para mostrar el nombre del archivo */
    .file-name {
      flex-grow: 1;
      min-width: 0;
      padding: 5px;
      border: 1px solid #ccc;
      border-radius: 5px;
      font-size: 8px;
      text-align: center;
      color: #555;
      background-color: #f9f9f9;
    }
    /* =======================
       Botones en fila
    ========================== */
    .button-row {
      display: flex;
      gap: 5px;
      margin-top: 15px;
    }
    .button-row button {
      flex: 1;
      padding: 10px;
      font-size: 16px;
      border: none;
      border-radius: 6px;
      cursor: pointer;
    }
    /* Botón de envío de datos (Movimientos) */
    .submit-btn {
      background: #28a745;
      color: white;
    }
    /* Botón para cambiar al formulario de Cheques */
    .toggle-cheque-btn {
      background: #218838;
      color: white;
      width: 30%;         /* Ancho menor */
      max-width: 100px;   /* Máximo ancho */
    }
    /* =======================
       Vista Previa de Cheques
    ========================== */
    .preview {
      margin-top: 20px;
      text-align: left;
      font-size: 14px;
      border: 1px solid #ccc;
      border-radius: 6px;
      padding: 10px;
      max-height: 150px;
      overflow-y: auto;   /* Barra de scroll si excede el alto */
      background: #f9f9f9;
    }
    /* =======================
       Estilos Exclusivos para Cheques
    ========================== */
    /* Etiquetas en el formulario de Cheques */
    #chequesForm .form-group label {
      font-weight: bold;
      margin-bottom: 5px;
      text-align: left;
    }

    /* 
==================================
    FOOTER
==================================
*/

footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    background-color: #000000;
    color: white;
    text-align: center;
    padding: 3px 0;
  }
  
  /* Contenedor del footer */
  .footer-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
  }
  
  /* Sección izquierda del footer */
  .footer-left p {
    font-size: 16px;
  }
  
  /* Estilos de enlaces en el footer */
  .footer-right a {
    color: white;
    text-decoration: none;
    margin-left: 15px;
    font-size: 16px;
    transition: color 0.3s;
  }
  
  .footer-right a:hover {
    color: #00b7ff;
  }
    