/* General */
body {
    font-family: 'Verdana', sans-serif;
    background-color: #F4F4F4;
}

/* Branding colors */
:root {
    --primary-color: #128C7E;
    --secondary-color: #00FFCC;
    --dark-gray: #333333;
    --light-gray: #666666;
    --background-color: #F4F4F4;
}

/* styles.css */

body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    height: 100vh;
    background-color: #f0f0f0;
}

nav {
    background-color: #128C7E;
    color: #fff;
    padding: 10px;
    text-align: center;
    width: 100%;
}

nav a {
    color: #fff;
    margin: 0 10px;
    text-decoration: none;
    font-weight: bold;
}

nav a:hover {
    text-decoration: underline;
}

.styled-table {
    width: 100%;
    border-collapse: collapse;
    margin: 25px 0;
    font-size: 18px;
    text-align: left;
}

.styled-table th, .styled-table td {
    padding: 12px 15px;
}

.styled-table th {
    background-color: #009879;
    color: #ffffff;
}

.styled-table tr {
    border-bottom: 1px solid #dddddd;
}

.styled-table tr:nth-of-type(even) {
    background-color: #f3f3f3;
}

.styled-table tr:last-of-type {
    border-bottom: 2px solid #009879;
}

button.btn {
    padding: 8px 12px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s ease;
}

button.btn-red {
    background-color: #d9534f;
    color: #fff;
}

button.btn-red:hover {
    background-color: #c9302c;
}

button.btn-green {
    background-color: #5cb85c;
    color: #fff;
}

button.btn-green:hover {
    background-color: #449d44;
}


/* Estilo para el botón "Subir masivo" */
button {
    background-color: #128C7E; /* Color de fondo verde */
    color: white; /* Color del texto */
    border: none; /* Sin borde */
    padding: 10px 20px; /* Espaciado interno */
    border-radius: 5px; /* Bordes redondeados */
    cursor: pointer; /* Cursor de mano al pasar por encima */
    font-size: 16px; /* Tamaño de fuente */
    font-weight: bold; /* Texto en negrita */
    transition: background-color 0.3s ease; /* Transición suave para el cambio de color */
}

button:hover {
    background-color: #0a6b5a; /* Color de fondo más oscuro al pasar el cursor */
}


.message {
    padding: 10px;
    margin: 15px 0;
    border-radius: 5px;
    font-size: 16px;
}

.message.success {
    background-color: #dff0d8;
    color: #3c763d;
    border: 1px solid #d6e9c6;
}

.message.warning {
    background-color: #fcf8e3;
    color: #8a6d3b;
    border: 1px solid #faebcc;
}

.message.error {
    background-color: #f2dede;
    color: #a94442;
    border: 1px solid #ebccd1;
}


input[type="mail"] {
    width: 100%;
    padding: 10px;
    margin-bottom: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
    transition: border-color 0.3s;
}

/* Focus state for input field */
input[type="mail"]:focus {
    border-color: #128C7E; /* Green border on focus */
    outline: none;
}

/* General button styles */
.btn {
    display: inline-block;
    padding: 10px 20px;
    margin: 5px;
    text-align: center;
    text-decoration: none;
    border-radius: 5px;
    font-size: 16px;
    font-family: Arial, sans-serif;
    transition: background-color 0.3s, color 0.3s;
}

/* Green button styles */
.btn-green {
    background-color: #28a745; /* Green background */
    color: white; /* White text */
}

.btn-green:hover {
    background-color: #218838; /* Darker green background on hover */
    color: white; /* Ensure text remains white */
}

/* Red button styles */
.btn-red {
    background-color: #dc3545; /* Red background */
    color: white; /* White text */
}

.btn-red:hover {
    background-color: #c82333; /* Darker red background on hover */
    color: white; /* Ensure text remains white */
}

/* General hover and focus effects */
.btn:hover, .btn:focus {
    text-decoration: none; /* Remove underline on hover and focus */
    outline: none; /* Remove outline on focus */
}


.inline-form {
    display: inline-block;
    background: none; /* Eliminar el fondo del formulario */
    padding: 0; /* Eliminar el padding del formulario */
    margin: 0; /* Eliminar el margin del formulario */
}

/* Estilo para botones */
.btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    font-family: 'Verdana', sans-serif;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
    border: none;
    margin: 5px;
}

/* Botón eliminar */
.btn-delete button {
    background-color: #FF4C4C;
    color: white;
    border: none;
    border-radius: 4px;
    padding: 10px 20px;
    font-family: 'Verdana', sans-serif;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
}

.btn-delete button:hover {
    background-color: #D43F3F;
}

/* General */
body {
    font-family: 'Verdana', sans-serif;
    background-color: #F4F4F4;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

/* Formularios en línea */
.inline-form {
    display: inline-block;
}

/* Estilo para botones */
.btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    font-family: 'Verdana', sans-serif;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
    border: none;
    margin: 5px;
}

/* Botón eliminar */
.btn-eliminar {
    background-color: #FF4C4C;
    color: white;
}

.btn-eliminar:hover {
    background-color: #D43F3F;
}

/* Botón verde */
.btn-green {
    background-color: #B3E5FC; /* Color verde pastel */
    color: #333333;
}

.btn-green:hover {
    background-color: #81D4FA; /* Color verde más oscuro */
}

/* Botón turquesa */
.btn-turqueza {
    background-color: #B2DFDB; /* Color turquesa pastel */
    color: #333333;
}

.btn-turqueza:hover {
    background-color: #80CBC4; /* Color turquesa más oscuro */
}

/* Botón personalizado */
.btn-custom {
    background-color: #128C7E;
    color: white;
}

.btn-custom:hover {
    background-color: #0E6A5E;
}

/* Botón guardar */
.btn-save {
    background-color: #128C7E;
    color: white;
}

.btn-save:hover {
    background-color: #0E6A5E;
}

/* Botón azul */
.btn-blue {
    background-color: #2196F3;
    color: white;
}

.btn-blue:hover {
    background-color: #1976D2;
}

/* Información de contacto */
.contact-info {
    font-size: 1.6em;
    display: block;
    margin: 20px 0;
    text-align: center;
}

label a {
    color: #128C7E;
    text-decoration: none;
    transition: color 0.3s;
}

label a:hover {
    color: #0E6A5E;
}



/* Contenedor principal */
#main-container {
    display: flex;
    justify-content: flex-start; /* Alinea los elementos al principio */
    flex-wrap: nowrap; /* Evita que los elementos se envuelvan */
    align-items: flex-start; /* Alinea los elementos al inicio verticalmente */
    gap: 20px; /* Espacio entre los contenedores */
    width: 100%; /* Usa todo el ancho disponible */
    overflow-x: auto; /* Permite desplazamiento horizontal si los contenedores exceden el ancho de la pantalla */
}

/* Columnas y contenedores de categorías de clientes */
.column, .category-clients {
    background: #f4f4f4;
    border: 1px solid #ddd;
    padding: 10px;
    flex: 0 0 25%; /* No crecen ni encogen, tamaño base del 25% del contenedor principal */
    min-height: 300px;
    max-height: 600px;
    overflow-y: auto; /* Permite desplazamiento vertical si el contenido es muy largo */
}

/* Tarjetas y elementos de clientes */
.card, .client-item {
    background: white;
    border: 1px solid #ccc;
    padding: 8px;
    margin: 5px 0;
    cursor: grab;
}

/* Tablero */
#board {
    display: flex; /* Usa flexbox para alinear las columnas de lado a lado */
    justify-content: start; /* Alinea las columnas al inicio del contenedor */
    gap: 20px; /* Espacio entre columnas */
}

/* Columnas */
.column {
    background: #f4f4f4; /* Color de fondo para cada columna */
    border: 1px solid #ddd; /* Borde para las columnas */
    padding: 10px; /* Espaciado interno para el contenido de la columna */
    width: 300px; /* Ancho fijo para cada columna */
    min-height: 300px; /* Altura mínima para cada columna */
    display: flex;
    flex-direction: column; /* Orientación vertical de los contenidos */
}

/* Contenedor de tarjetas */
.cards-container {
    flex-grow: 1; /* Permite que el contenedor de tarjetas llene el espacio vertical disponible */
}

/* Tarjetas */
.card {
    background: white;
    border: 1px solid #ccc;
    padding: 8px;
    margin: 5px 0; /* Margen entre tarjetas */
}



/* Estilo base para botones */
.btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    font-family: 'Verdana', sans-serif;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
}

/* Estilo específico para el botón verde pastel */
.btn-green {
    background-color: #21ff90; /* Verde pastel */
    color: white; /* Texto blanco */
    border: none; /* Sin borde */
}

/* Efecto hover para el botón verde pastel */
.btn-green:hover {
    background-color: #00c965; /* Verde pastel más oscuro al pasar el mouse */
    color: #ffffff; /* Asegura que el texto permanezca blanco */
}



/* Estilos para el contenedor del formulario */
#categoryFormContainer {
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    max-width: 600px;
    margin: 20px auto;
    display: none; /* Manténlo oculto por defecto */
}

/* Título del formulario */
#categoryFormContainer h1 {
    color: var(--primary-color);
    font-family: 'Neusharp', sans-serif;
    font-size: 2em;
    text-align: center;
    margin-bottom: 20px;
}

/* Etiquetas de entrada de texto */
#categoryFormContainer label {
    color: var(--dark-gray); /* Color más oscuro */
    font-family: 'Verdana', sans-serif;
    font-size: 1em;
    display: block;
    margin-bottom: 5px;
}

/* Entradas de texto y área de texto */
#categoryFormContainer input[type="text"],
#categoryFormContainer textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: border-color 0.3s;
    font-family: 'Verdana', sans-serif;
    color: var(--dark-gray); /* Color del texto más oscuro */
}

/* Efecto de enfoque en entradas de texto */
#categoryFormContainer input[type="text"]:focus,
#categoryFormContainer textarea:focus {
    border-color: var(--primary-color);
    outline: none;
}

/* Estilo para el botón de envío */
#categoryFormContainer input[type="submit"] {
    background-color: var(--primary-color);
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s;
}

/* Efecto de hover en el botón de envío */
#categoryFormContainer input[type="submit"]:hover {
    background-color: var(--secondary-color);
}



/* Estilos para DataTables */
.dataTables_wrapper {
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    margin: 20px 0;
}

.dataTables_wrapper .dataTable th {
    background-color: var(--primary-color); /* Verde oscuro */
    color: white;
    padding: 10px;
    font-family: 'Neusharp', sans-serif;
    border-bottom: 2px solid var(--secondary-color); /* Verde claro */
}

.dataTables_wrapper .dataTable td {
    padding: 8px;
    color: var(--dark-gray); /* Gris oscuro */
    font-family: 'Verdana', sans-serif;
    border-bottom: 1px solid #ddd;
}

.dataTables_wrapper .dataTable tr:nth-child(even) {
    background-color: #f2f2f2;
}

.dataTables_wrapper .dataTable tr:nth-child(odd) {
    background-color: #e9e9e9;
}

.dataTables_wrapper .dataTable tr:hover {
    background-color: #d1e0e0;
}

/* Estilo para el input del buscador */
.dataTables_filter input {
    padding: 8px 12px;
    border: 1px solid var(--primary-color); /* Borde verde oscuro */
    border-radius: 4px;
    transition: border-color 0.3s;
}

.dataTables_filter input:focus {
    border-color: var(--secondary-color); /* Borde verde claro */
    outline: none;
}

/* Estilo para el label del buscador */
.dataTables_filter label {
    color: var(--primary-color); /* Verde oscuro */
    font-weight: bold;
    font-family: 'Adero Bold', sans-serif;
}

/* Estilo para el botón de exportación a Excel */
.dt-button.buttons-excel {
    background-color: var(--primary-color); /* Verde oscuro */
    color: white;
    border: none;
    border-radius: 4px;
    padding: 8px 12px;
    font-weight: bold;
    font-family: 'Adero Bold', sans-serif;
    transition: background-color 0.3s;
}

.dt-button.buttons-excel:hover {
    background-color: var(--secondary-color); /* Verde claro */
}

/* Estilo para el título principal */
h1 {
    color: var(--primary-color);
    font-family: 'Neusharp', sans-serif;
    font-size: 2.5em;
    text-align: center;
    margin-bottom: 20px;
}

h2 {
    color: var(--secondary-color);
    font-family: 'Adero Bold', sans-serif;
    font-size: 2em;
    margin-bottom: 15px;
}

h3 {
    color: var(--dark-gray);
    font-family: 'Verdana', sans-serif;
    font-size: 1.5em;
    margin-bottom: 10px;
}

/* Contenedor de bienvenida */
.welcome-container {
    text-align: center;
    margin-bottom: 20px;
}

.welcome-message {
    text-align: center;
    font-size: 1.2em;
    margin-bottom: 20px;
}

.logo {
    width: 200px;
    margin: 0 auto;
}

/* Estadísticas de contactos */
.contact-stats {
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    max-width: 600px;
    margin: 20px auto;
    font-family: 'Verdana', sans-serif;
    color: var(--dark-gray); /* Gris oscuro */
}

.contact-title {
    font-family: 'Neusharp', sans-serif;
    color: var(--primary-color); /* Verde oscuro */
    font-size: 1.5em;
    margin-bottom: 15px;
    text-align: center;
}

.contact-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.contact-list li {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid #ddd;
}

.contact-list li:last-child {
    border-bottom: none;
}

.contact-list span {
    font-weight: bold;
    color: var(--secondary-color); /* Verde claro */
}

/* Formulario */
form {
    background-color: var(--background-color);
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    max-width: 600px;
    margin: 20px auto;
}

/* Estilos de entrada */
input[type="text"], input[type="email"], input[type="password"], input[type="number"], textarea, select {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: border-color 0.3s;
    font-family: 'Verdana', sans-serif;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="number"]:focus, textarea:focus, select:focus {
    border-color: var(--primary-color);
    outline: none;
}

input[type="submit"] {
    background-color: var(--primary-color);
    color: white;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s;
}

input[type="submit"]:hover {
    background-color: var(--secondary-color);
}

/* Botones */
.btn-custom {
    background-color: var(--primary-color);
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin: 5px;
    text-decoration: none;
    display: inline-block;
    transition: background-color 0.3s;
}

.btn-custom:hover {
    background-color: var(--secondary-color);
}

.btn-delete button {
    background-color: #FF0000;
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s;
}

.btn-delete button:hover {
    background-color: #CC0000;
}

/* Tablas */
#tabla-inicio {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

#tabla-inicio, #tabla-inicio th, #tabla-inicio td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
}

#tabla-inicio th {
    background-color: var(--primary-color);
    color: white;
    font-weight: bold;
}

#tabla-inicio tbody tr:nth-child(odd) {
    background-color: #f2f2f2;
}

#tabla-inicio tbody tr:nth-child(even) {
    background-color: #e9e9e9;
}

#tabla-inicio tbody tr:hover {
    background-color: #d1e0e0;
}

#tabla-inicio td {
    color: var(--dark-gray);
}

/* Menú */
nav ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    background-color: var(--primary-color);
}

nav li {
    position: relative;
}

nav li a {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    color: #fff;
    border-right: 1px solid #ddd;
    transition: background-color 0.3s;
}

nav li a:hover {
    background-color: var(--secondary-color);
}

nav li a.active {
    background-color: var(--secondary-color);
}

nav li ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    list-style-type: none;
    padding: 0;
    margin: 0;
    border: 1px solid #ddd;
    background-color: var(--primary-color);
}

nav li:hover ul {
    display: block;
}

nav li ul li {
    display: block;
    width: 200px;
}

nav li ul li a {
    border-right: none;
}

/* Wrapper */
.table-wrapper {
    width: 300px;
    margin: 0 auto;
}

.table {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.table li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 10px;
    border-bottom: 1px solid #ccc;
}

.label {
    font-weight: bold;
}

.count {
    color: #888;
}

/* Formulario de búsqueda */
.form-busqueda {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 5px;
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: auto;
}

.form-busqueda input[type="text"] {
    padding: 8px;
    margin: 0 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
    width: calc(100% - 90px);
}

.form-busqueda input[type="submit"] {
    padding: 8px 15px;
    margin: 0 5px;
    border: none;
    border-radius: 4px;
    background-color: var(--primary-color);
    color: white;
    cursor: pointer;
}

.form-busqueda input[type="submit"]:hover {
    background-color: var(--secondary-color);
}

/* Enlaces */
a {
    color: var(--primary-color);
    text-decoration: none;
    transition: color 0.3s;
}

a:hover {
    color: var(--secondary-color);
}
