/* En tu sección <style> dentro de menu.php */

/* --- Estilos Generales y de Encabezado/Pie de Página --- */
body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; margin: 0; background-color: #f0f2f5; color: #333; }
.header {
    background-color: #ffffff; /* Azul oscuro */
    color: white;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}
.header .logo {
    display: flex;
    align-items: center;
}
.header .logo img {
    height: 70px; /* Tamaño del logo */
    margin-right: 10px;
    border-radius: 5px; /* Bordes ligeramente redondeados para el logo */
}
.header .logo h1 {
    margin: 0;
    font-size: 1.8em;
    color: #ecf0f1; /* Gris claro */
}
.navbar ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}
.navbar ul li {
    margin-left: 25px;
}
.navbar ul li a {
    color: #000000;
    text-decoration: none;
    font-weight: bold;
    font-size: 1.1em;
    transition: color 0.3s ease;
}
.navbar ul li a:hover {
    color: #3498db; /* Azul más claro al pasar el ratón */
}
.container {
   /* max-width: 960px; /* Ancho predeterminado para el contenido */
    margin: 30px auto;
    background: #fff;
    padding: 25px 30px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* --- Estilos Generales para Formularios y Alertas --- */
h1 { color: #2c3e50; margin-top: 0; font-size: 2.2em; text-align: center; margin-bottom: 35px; border-bottom: 2px solid #3498db; padding-bottom: 15px; }
form label { display: block; margin-bottom: 8px; font-weight: bold; color: #555; }
/* La regla general para inputs, textareas y selects aquí puede ser más genérica */
form input[type="text"],
form input[type="url"],
form input[type="datetime-local"],
form textarea,
form select {
    width: calc(100% - 22px);
    padding: 10px;
    margin-bottom: 20px; /* Este margen se sobrescribirá para los elementos del filter-form */
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 1em;
    box-sizing: border-box;
}
form textarea { min-height: 150px; resize: vertical; }
form button {
    background-color: #28a745;
    color: white;
    padding: 12px 25px;
    border: none;
    border-radius: 5px;
    font-size: 1.1em;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: block;
    width: 100%;
    box-sizing: border-box;
}
form button:hover { background-color: #218838; }
.alert { padding: 15px; margin-bottom: 20px; border-radius: 5px; font-weight: bold; }
.alert.success { background-color: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.alert.error { background-color: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
.alert.info { background-color: #d1ecf1; color: #0c5460; border: 1px solid #bee5eb; }
.alert.warning { background-color: #fff3cd; color: #856404; border: 1px solid #ffeeba; }

/* --- Estilos para article_page y otros (resumen de artículos) --- */
.article-meta { font-size: 0.9em; color: #7f8c8d; margin-bottom: 20px; }
.article-content img { max-width: 100%; height: auto; display: block; margin: 15px auto; border-radius: 5px; }
.article-content p { margin-bottom: 1em; font-size: 1.05em; line-height: 1.7; }
.back-link { display: inline-block; margin-top: 20px; color: #007bff; text-decoration: none; font-weight: bold; }
.back-link:hover { text-decoration: underline; }
.original-link { display: inline-block; margin-top: 10px; font-size: 0.9em; color: #555; }
.original-link a { color: #28a745; text-decoration: none; font-weight: bold; }
.original-link a:hover { text-decoration: underline; }
.ads-in-content { text-align: center; margin: 30px 0; padding: 15px; border: 1px dashed #ccc; background-color: #f9f9f9; }

/* Estilos para el resumen de artículos en index.php */
.article-summary {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 25px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.article-summary h2 {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 1.8em;
    color: #2c3e50;
    width: 100%; /* Asegura que ocupe todo el ancho disponible */
}
.article-summary h2 a {
    color: #2c3e50;
    text-decoration: none;
    transition: color 0.3s ease;
}
.article-summary h2 a:hover {
    color: #3498db;
}
.article-summary .article-image {
    max-width: 100%;
    height: auto;
    max-height: 200px; /* Limita la altura de las imágenes de resumen */
    object-fit: cover; /* Ajusta la imagen sin distorsionarla */
    border-radius: 5px;
    margin-bottom: 15px;
    display: block; /* Asegura que la imagen sea un bloque */
    margin-left: auto; /* Centrar imagen */
    margin-right: auto; /* Centrar imagen */
}
.article-summary p {
    font-size: 1em;
    color: #555;
    margin-bottom: 10px;
}
.article-summary .article-meta {
    font-size: 0.9em;
    color: #7f8c8d;
    margin-bottom: 15px;
    width: 100%;
}
.category-tag, .country-tag {
    background-color: #e9ecef;
    color: #495057;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.85em;
    font-weight: 600;
    margin-right: 5px;
}

/* --- Estilos para el formulario de filtro (más elegante y discreto) --- */
.filter-form {
    background-color: #f0f4f7; /* Un gris azulado muy claro */
    border: 1px solid #d4e0e8; /* Borde suave */
    border-radius: 8px;
    padding: 15px 20px; /* Reducimos el padding */
    margin-bottom: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Espacio más compacto entre elementos */
    align-items: flex-start; /* Alinea elementos al inicio para que las etiquetas no se centren verticalmente con campos más grandes */
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.05); /* Sombra interna sutil */
}

/* Estilo específico para el contenedor del buscador */
.filter-form .search-box {
    width: 100%; /* Asegura que el buscador ocupe todo el ancho */
    margin-bottom: 20px; /* Aumenta el espacio debajo del buscador para destacarlo */
    display: flex; /* Para apilar la etiqueta y el input del buscador */
    flex-direction: column;
    gap: 8px; /* Más espacio entre label e input del buscador */
}

/* Estilo para el input de texto dentro del buscador - ¡MÁS GRANDE! */
.filter-form .search-box input[type="text"] {
    width: calc(100% - 2px); /* Ajusta para padding/border */
    padding: 12px 15px; /* Aumenta el padding para que se vea más grande */
    border: 1px solid #8ba9c9; /* Borde un poco más oscuro para destacarlo */
    border-radius: 5px;
    font-size: 1.2em; /* Aumenta el tamaño de la fuente */
    box-sizing: border-box;
    margin-bottom: 0; /* Asegura que no tenga margen inferior de otras reglas */
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.filter-form .search-box input[type="text"]:focus {
    border-color: #3498db; /* Color de borde al enfocar */
    outline: none;
    box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.3); /* Sombra de enfoque más pronunciada */
}

.filter-form label {
    font-weight: 600; /* Un poco más de peso para las etiquetas */
    color: #4a5568; /* Color de texto más oscuro */
    margin-right: 5px; /* Pequeño margen entre label y select */
    flex-shrink: 0; /* Evita que la etiqueta se encoja */
}

.filter-form select {
    flex-grow: 1;
    min-width: 150px; /* Reducimos el ancho mínimo */
    padding: 8px 12px; /* Padding más discreto */
    border: 1px solid #b0c4d9; /* Borde más definido */
    border-radius: 5px;
    font-size: 0.95em; /* Fuente ligeramente más pequeña */
    box-sizing: border-box;
    background-color: #ffffff;
    appearance: none; /* Elimina la flecha predeterminada del select */
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23666%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13%205.1L146.2%20227.4%2018.6%2074.5a17.6%2017.6%200%200%200-25.3%2023.7l137.9%20146.9c5.7%206.1%2013.7%209.6%2022.2%209.6s16.5-3.6%2022.2-9.6l137.9-146.9c12.7-13.5%2012.7-35.1%200-48.6z%22%2F%3E%3C%2Fsvg%3E'); /* Flecha personalizada */
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 12px;
    cursor: pointer;
    margin-bottom: 0; /* Asegura que no tenga margen inferior de otras reglas */
}

.filter-form select:focus {
    border-color: #3498db;
    outline: none;
    box-shadow: 0 0 0 2px rgba(52, 152, 219, 0.2);
}

.filter-form button {
    padding: 8px 15px; /* Padding más pequeño para los botones */
    border: none;
    border-radius: 5px;
    font-size: 0.9em; /* Fuente ligeramente más pequeña */
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    flex-shrink: 0;
    height: auto; /* Altura automática para que el padding lo defina */
    margin-bottom: 0; /* Asegura que no tenga margen inferior de otras reglas */
}

.filter-form button[type="submit"] {
    background-color: #3498db; /* Azul suave */
    color: white;
}

.filter-form button[type="submit"]:hover {
    background-color: #2980b9;
    transform: translateY(-1px); /* Efecto ligero al pasar el ratón */
}

/* Estilo para el botón Limpiar Filtros */
.filter-form .clear-filters-btn {
    background-color: #95a5a6; /* Gris más neutral */
    color: white;
}

.filter-form .clear-filters-btn:hover {
    background-color: #7f8c8d;
    transform: translateY(-1px);
}

/* Ajustes adicionales para elementos dentro del flex container para mejor alineación */
.filter-form > div {
    display: flex;
    flex-direction: column; /* Apila etiqueta y campo */
    gap: 5px; /* Espacio entre label y input/select */
    flex-grow: 1;
    min-width: 180px; /* Ajusta este valor si necesitas más espacio para las etiquetas o campos */
    margin-bottom: 0; /* Asegura que el margen lo maneje el gap del contenedor o el margen del search-box */
}

/* También aplica estos estilos para los inputs de tipo date */
.filter-form input[type="date"] {
    flex-grow: 1; /* Permite que crezcan para llenar el espacio */
    min-width: 150px; /* Ancho mínimo para los campos */
    padding: 8px 12px; /* Padding más discreto */
    border: 1px solid #b0c4d9; /* Borde más definido */
    border-radius: 5px;
    font-size: 0.95em; /* Fuente ligeramente más pequeña */
    box-sizing: border-box;
    background-color: #ffffff;
    height: 38px; /* Asegura una altura consistente con los selectores */
    margin-bottom: 0; /* Asegura que el margen lo maneje el gap del contenedor o el margen del search-box */
}

.filter-form input[type="date"]:focus {
    border-color: #3498db;
    outline: none;
    box-shadow: 0 0 0 2px rgba(52, 152, 219, 0.2);
}

/* --- Estilos de Paginación --- */
.pagination {
    display: flex;
    justify-content: center;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}
.pagination a, .pagination span {
    display: block;
    padding: 8px 15px;
    margin: 0 5px;
    background-color: #f8f8f8;
    color: #3498db;
    text-decoration: none;
    border: 1px solid #ddd;
    border-radius: 5px;
    transition: all 0.3s ease;
}
.pagination a:hover {
    background-color: #e9e9e9;
    border-color: #c0c0c0;
    color: #2980b9;
}
.pagination .current-page {
    background-color: #3498db;
    color: white;
    border-color: #3498db;
    font-weight: bold;
    cursor: default;
}
.pagination .disabled {
    color: #ccc;
    cursor: not-allowed;
    background-color: #f8f8f8;
    border-color: #eee;
}
.pagination-ellipsis {
    padding: 8px 5px; /* Ajusta el padding para los puntos suspensivos */
    margin: 0 2px;
    color: #666;
    border: none; /* No tiene borde como los enlaces */
    background-color: transparent;
    cursor: default;
}


/* --- Estilos para la Tabla de Gestión (management-table) --- */
.management-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
.management-table th, .management-table td { border: 1px solid #ddd; padding: 12px; text-align: left; vertical-align: middle; }
.management-table th { background-color: #f2f2f2; color: #555; font-weight: bold; }
.management-table tr:nth-child(even) { background-color: #f9f9f9; }
.management-table tr:hover { background-color: #f1f1f1; }
.status-dot { height: 12px; width: 12px; background-color: #bbb; border-radius: 50%; display: inline-block; margin-right: 5px; vertical-align: middle; }
.status-dot.active { background-color: #28a745; }
.status-dot.inactive { background-color: #dc3545; }
.actions-cell button, .actions-cell a {
    padding: 8px 12px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9em;
    margin-right: 8px; /* Aumentamos el margen derecho */
    margin-bottom: 8px; /* Añadimos margen inferior para que se separen al apilarse */
    text-decoration: none;
    color: white;
    transition: background-color 0.3s ease;
    display: inline-block;
    white-space: nowrap; /* Evita que el texto del botón se rompa en varias líneas */
}
/* Para el último botón o enlace en la celda de acciones, quita el margen derecho */
.actions-cell button:last-child,
.actions-cell a:last-child {
    margin-right: 0;
}
.actions-cell .toggle-btn { background-color: #007bff; }
.actions-cell .toggle-btn.inactive { background-color: #ffc107; color: #333; }
.actions-cell .toggle-btn:hover { background-color: #0056b3; }
.actions-cell .toggle-btn.inactive:hover { background-color: #e0a800; }
.actions-cell .edit-btn { background-color: #17a2b8; }
.actions-cell .edit-btn:hover { background-color: #117a8b; }
.actions-cell .delete-btn { background-color: #dc3545; }
.actions-cell .delete-btn:hover { background-color: #c82333; }
.no-offers { text-align: center; padding: 40px; font-size: 1.2em; color: #888; }

/* Estilos para el listado de categorías (categories.php) */
.category-list {
    list-style: none; /* Quita los bullets de la lista */
    padding: 0;
    margin: 20px 0;
}
.category-list li {
    background-color: #ffffff; /* Fondo blanco para cada elemento */
    border: 1px solid #e0e6ec; /* Borde suave */
    border-radius: 6px;
    margin-bottom: 10px; /* Espacio entre elementos de la lista */
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.03); /* Sombra sutil */
}
.category-list li a {
    display: block; /* Hace que todo el área del elemento sea clicable */
    padding: 15px 20px;
    text-decoration: none;
    color: #2c3e50; /* Color de texto oscuro */
    font-weight: 500; /* Un poco más de negrita */
    display: flex; /* Para alinear el texto y el contador */
    justify-content: space-between; /* Texto a la izquierda, contador a la derecha */
    align-items: center;
    font-size: 1.1em;
}
.category-list li a:hover {
    background-color: #eaf2f8; /* Color de fondo al pasar el ratón */
    border-color: #c9dbe9; /* Borde al pasar el ratón */
    transform: translateY(-2px); /* Pequeño efecto de elevación */
    box-shadow: 0 4px 8px rgba(0,0,0,0.08); /* Sombra más pronunciada */
}
.category-list li a span { /* Estilos para el contador de ofertas */
    background-color: #3498db; /* Azul para el contador */
    color: white;
    padding: 5px 12px;
    border-radius: 20px; /* Bordes redondeados para un look de "píldora" */
    font-size: 0.9em;
    font-weight: bold;
    min-width: 60px; /* Ancho mínimo para el contador */
    text-align: center;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* Estilos para el listado de países (countries.php) */
.country-list {
    list-style: none; /* Quita los bullets de la lista */
    padding: 0;
    margin: 20px 0;
    display: grid; /* Usamos CSS Grid para un diseño de columnas responsive */
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); /* Columnas automáticas */
    gap: 15px; /* Espacio entre los elementos de la cuadrícula */
}
.country-list li {
    background-color: #ffffff; /* Fondo blanco para cada elemento */
    border: 1px solid #e0e6ec; /* Borde suave */
    border-radius: 6px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.03); /* Sombra sutil */
    overflow: hidden; /* Asegura que la sombra y borde se vean bien */
}
.country-list li a {
    display: flex; /* Para alinear bandera, texto y contador */
    align-items: center; /* Centra verticalmente los elementos */
    padding: 12px 15px; /* Padding más discreto */
    text-decoration: none;
    color: #2c3e50; /* Color de texto oscuro */
    font-weight: 500;
    font-size: 1.05em;
    gap: 10px; /* Espacio entre la bandera y el texto */
}
.country-list li a:hover {
    background-color: #eaf2f8; /* Color de fondo al pasar el ratón */
    border-color: #c9dbe9; /* Borde al pasar el ratón */
    transform: translateY(-2px); /* Pequeño efecto de elevación */
    box-shadow: 0 4px 8px rgba(0,0,0,0.08); /* Sombra más pronunciada */
}
.country-flag {
    width: 32px; /* Tamaño de la bandera */
    height: 24px;
    border: 1px solid #ddd; /* Borde sutil para la bandera */
    border-radius: 3px;
    flex-shrink: 0; /* Evita que la bandera se encoja */
    object-fit: cover; /* Asegura que la imagen de la bandera se vea bien */
}
.country-list li a span { /* Estilos para el contador de ofertas */
    background-color: #3498db; /* Azul para el contador */
    color: white;
    padding: 4px 10px; /* Padding más pequeño */
    border-radius: 15px; /* Bordes redondeados */
    font-size: 0.85em;
    font-weight: bold;
    margin-left: auto; /* Empuja el contador a la derecha */
    flex-shrink: 0; /* Evita que el contador se encoja */
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* --- Adaptación para Vistas Móviles (Responsive Design) --- */
@media (max-width: 768px) {
    .header {
        flex-direction: column;
        text-align: center;
        padding: 15px 10px;
    }
    .header .logo {
        margin-bottom: 15px;
    }
    .navbar ul {
        flex-direction: column;
        align-items: center;
    }
    .navbar ul li {
        margin: 10px 0;
    }
    .container {
        margin: 20px 10px;
        padding: 15px;
    }

    /* Estilos para que la tabla sea responsive */
    .management-table, .management-table thead, .management-table tbody, .management-table th, .management-table td, .management-table tr {
        display: block;
    }
    .management-table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .management-table tr {
        border: 1px solid #ddd;
        margin-bottom: 15px;
        border-radius: 8px;
        box-shadow: 0 2px 5px rgba(0,0,0,0.05);
        padding: 10px;
        display: flex; /* Mantenemos flex para que las celdas se apilen */
        flex-direction: column;
    }
    .management-table td {
        border: none;
        text-align: right; /* Alineamos el contenido a la derecha */
        white-space: normal;
        min-height: 30px;
        display: flex; /* Fundamental para alinear etiqueta y valor */
        justify-content: space-between; /* Etiqueta a la izquierda, valor a la derecha */
        align-items: center; /* Centrar verticalmente */
        padding: 8px 10px; /* Padding de la celda */
        border-bottom: 1px solid #eee; /* Separador entre las "filas" de la celda */
    }
    .management-table td:last-child {
        border-bottom: none;
    }

    /* Pseudo-elemento para mostrar los encabezados de las columnas como etiquetas en cada celda */
    .management-table td:before {
        content: attr(data-label);
        flex-shrink: 0; /* Evita que la etiqueta se encoja */
        font-weight: bold;
        color: #555;
        text-align: left; /* Alineación de la etiqueta a la izquierda */
        padding-right: 10px; /* Espacio entre la etiqueta y el valor */
        box-sizing: border-box;
        white-space: nowrap; /* Evita que la etiqueta se rompa */
    }

    /* Ajuste específico para la celda de acciones */
    .actions-cell {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-left: 10px; /* Resetear el padding-left base de td */
        flex-direction: row;
        border-bottom: none;
        align-items: center;
    }
    .actions-cell button, .actions-cell a {
        flex-grow: 1;
        min-width: 100px;
        max-width: 48%; /* Limita el ancho máximo para permitir dos botones por fila */
        margin: 5px;
        box-sizing: border-box;
        white-space: nowrap;
        font-size: 0.85em;
        padding: 6px 10px;
    }
    .actions-cell button:nth-child(2n),
    .actions-cell a:nth-child(2n) {
        margin-right: 0;
    }
    .actions-cell button:last-child,
    .actions-cell a:last-child {
        margin-right: 0;
        margin-bottom: 0;
    }

    /* Regla adicional para el campo "Publicada" (si es necesario un tratamiento especial) */
    .management-table td[data-label="Publicada"] {
        display: flex;
        justify-content: flex-end; /* Alinea el contenido a la derecha */
        align-items: center;
    }
    .management-table td[data-label="Publicada"]::before {
        flex-grow: 1;
        text-align: left;
    }

    /* Adaptación móvil para el formulario de filtro */
    .filter-form {
        flex-direction: column; /* Apila los elementos en móvil */
        align-items: stretch; /* Estira los elementos para llenar el ancho */
        padding: 15px; /* Ajusta padding para móvil */
    }
    .filter-form .search-box {
        margin-bottom: 15px; /* Mantiene el margen inferior del buscador en móvil */
    }
    .filter-form .search-box input[type="text"] {
        width: 100%; /* Asegura que el input del buscador ocupe todo el ancho en móvil */
        padding: 10px; /* Ajusta padding en móvil para que no sea excesivo */
        font-size: 1.1em; /* Ajusta tamaño de fuente en móvil */
        box-sizing: border-box;
    }
    .filter-form label {
        text-align: left;
        margin-right: 0;
        margin-bottom: 5px;
    }
    .filter-form select,
    .filter-form button,
    .filter-form input[type="date"] { /* Incluye input[type="date"] aquí */
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .filter-form button:last-child {
        margin-bottom: 0;
    }
    .filter-form > div {
        min-width: 100%;
        margin-bottom: 10px;
    }
    .filter-form > div:last-of-type {
        margin-bottom: 0;
    }

    /* --- Paginación más compacta en móvil --- */
    .pagination {
        font-size: 0.8em; /* Un poco más pequeña en móviles */
        padding: 5px;
        justify-content: space-around; /* Distribuye el espacio uniformemente */
    }
    .pagination a,
    .pagination span {
        padding: 6px 9px; /* Reduce el padding de los botones de paginación */
        margin: 2px; /* Reduce el margen */
    }
    /* Oculta los enlaces "Anterior" y "Siguiente" con texto largo y usa solo los símbolos */
    .pagination a:nth-of-type(2),
    .pagination a:nth-last-of-type(2) {
        display: none;
    }

    /* Estilos responsive para la lista de categorías */
    .category-list li a {
        flex-direction: column; /* Apila el texto y el contador en móvil */
        align-items: flex-start; /* Alinea a la izquierda en móvil */
        font-size: 1em;
    }
    .category-list li a span {
        margin-top: 8px; /* Espacio entre el texto y el contador en móvil */
        align-self: flex-end; /* Alinea el contador a la derecha en móvil */
    }

    /* Estilos responsive para la lista de países */
    .country-list {
        grid-template-columns: 1fr; /* Una sola columna en móvil */
        gap: 10px;
    }
    .country-list li a {
        padding: 10px 15px;
        font-size: 1em;
    }
    .country-list li a span {
        font-size: 0.8em;
        padding: 3px 8px;
    }
}

/* --- Footer --- */
.footer {
    text-align: center;
    padding: 25px 20px;
    margin-top: 40px;
    background-color: #34495e;
    color: white;
    font-size: 0.9em;
    box-shadow: 0 -2px 5px rgba(0,0,0,0.1);
}
/* Estilos para los botones de compartir */
.share-buttons {
    margin-top: 35px; /* Un poco más de espacio arriba */
    padding-top: 25px; /* Más padding interno */
    border-top: 1px solid #e9eff4; /* Borde más suave y claro */
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px; /* Aumenta el espacio entre botones */
    align-items: center;
    background-color: #f8fbff; /* Fondo muy claro para la sección de botones */
    padding-bottom: 25px;
    border-bottom: 1px solid #e9eff4; /* Borde inferior para cerrar la sección */
    border-radius: 8px; /* Bordes redondeados para la sección */
    box-shadow: 0 2px 10px rgba(0,0,0,0.04); /* Sombra sutil para la sección */
}

.share-buttons h4 {
    width: 100%; /* Ocupa todo el ancho */
    margin-bottom: 20px; /* Más espacio debajo del título */
    color: #2c3e50;
    font-size: 1.2em; /* Título un poco más grande */
    font-weight: 600; /* Más peso a la fuente */
}

.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px; /* Aumenta el padding para botones más grandes */
    border-radius: 30px; /* Bordes muy redondeados (tipo píldora) */
    text-decoration: none;
    color: white;
    font-size: 0.9em; /* Fuente ligeramente más pequeña para un look limpio */
    font-weight: 600; /* Negrita semibola */
    letter-spacing: 0.5px; /* Pequeño espaciado entre letras */
    transition: all 0.3s ease; /* Transición suave para todos los cambios */
    flex-grow: 1;
    max-width: 170px; /* Ajustado para un mejor equilibrio */
    min-width: 100px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1); /* Sombra más pronunciada */
    position: relative; /* Para efectos hover */
    overflow: hidden; /* Para animaciones de fondo */
}

.share-btn:hover {
    transform: translateY(-3px); /* Efecto de elevación más notorio */
    box-shadow: 0 6px 16px rgba(0,0,0,0.15); /* Sombra al pasar el ratón */
}

/* Pseudo-elemento para un efecto de brillo al pasar el ratón */
.share-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.2); /* Brillo blanco semitransparente */
    transform: skewX(-20deg);
    transition: all 0.5s ease;
    z-index: 1; /* Asegura que el brillo esté sobre el color de fondo */
}

.share-btn:hover::before {
    left: 100%; /* Desliza el brillo de izquierda a derecha */
}


/* Colores específicos para cada red social con tonos más vibrantes */
.share-btn.facebook { background-color: #3B5998; }
.share-btn.facebook:hover { background-color: #2D4373; }

.share-btn.twitter { background-color: #1DA1F2; }
.share-btn.twitter:hover { background-color: #0C85D0; }

.share-btn.whatsapp { background-color: #25D366; }
.share-btn.whatsapp:hover { background-color: #1FAF58; }

.share-btn.linkedin { background-color: #0077B5; }
.share-btn.linkedin:hover { background-color: #005F90; }

.share-btn.copy-link {
    background-color: #6c757d; /* Gris más oscuro para el botón de copiar */
    color: white;
    cursor: pointer;
}
.share-btn.copy-link:hover {
    background-color: #545b62;
}


/* Responsive para botones de compartir (mantener el apilamiento) */
@media (max-width: 768px) {
    .share-buttons {
        flex-direction: column; /* Apila los botones en móvil */
        align-items: center;
        gap: 10px; /* Un poco menos de espacio en móvil */
    }
    .share-btn {
        width: 90%; /* Ocupa casi todo el ancho en móvil */
        max-width: 280px; /* Limita el ancho máximo en móvil */
        padding: 10px 15px; /* Reduce el padding en móvil */
        font-size: 0.85em; /* Fuente más pequeña en móvil */
    }
}
/* --- Carrusel de Clientes --- */
.clients-carousel-section {
    padding: 40px 0;
    text-align: center;
    background-color: #f8f8f8; /* Un fondo ligeramente diferente para destacar */
    margin-top: 30px; /* Espacio superior */
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.clients-carousel-section h2 {
    font-size: 2.2em;
    color: #333;
    margin-bottom: 30px;
    position: relative;
    padding-bottom: 10px;
}

.clients-carousel-section h2::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background-color: #3498db;
    border-radius: 2px;
}

.carousel-container {
    width: 100%;
    overflow: hidden; /* Oculta los elementos que están fuera de la vista */
    position: relative;
    padding: 15px 0; /* Espacio para las sombras o bordes si los agregamos */
}

.carousel-track {
    display: flex;
    /* La animación se aplicará aquí con JavaScript */
    /* width: calc(numero_de_items * ancho_item); */
}

.carousel-item {
    flex-shrink: 0; /* Evita que los ítems se encojan */
    width: 180px; /* Ancho fijo para cada logotipo */
    height: 100px; /* Altura fija para cada logotipo, ajustar si es necesario */
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 20px; /* Espacio interno para los logos */
    box-sizing: border-box; /* Incluye padding en el ancho */
    transition: transform 0.1s ease-out; /* Para suavizar el movimiento de los logos */
}

.carousel-item img {
    max-width: 100%;
    max-height: 80px; /* Limita la altura de los logos para que no se salgan */
    filter: grayscale(100%); /* Logos en escala de grises para uniformidad */
    opacity: 0.6; /* Un poco transparentes */
    transition: filter 0.3s ease, opacity 0.3s ease;
}

.carousel-item img:hover {
    filter: grayscale(0%); /* Color al pasar el mouse */
    opacity: 1;
}

/* Responsivo para el carrusel */
@media (max-width: 768px) {
    .carousel-item {
        width: 150px; /* Más pequeño en tabletas */
    }
    .clients-carousel-section h2 {
        font-size: 1.8em;
    }
}

@media (max-width: 480px) {
    .carousel-item {
        width: 120px; /* Aún más pequeño en móviles */
    }
    .clients-carousel-section h2 {
        font-size: 1.6em;
        margin-bottom: 20px;
    }
}
/* General container for candidates page */
.candidates-page {
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    margin-top: 20px;
}

.candidates-page h1 {
    text-align: center;
    color: #333;
    margin-bottom: 30px;
    font-size: 2.2em;
    font-weight: 600;
}

/* Alphabet Filter */
.alphabet-filter {
    text-align: center;
    margin-bottom: 30px;
    padding: 10px 0;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0 1px 5px rgba(0,0,0,0.05);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}

.alphabet-filter a {
    display: inline-block;
    padding: 8px 12px;
    text-decoration: none;
    color: #007bff;
    font-weight: 500;
    border-radius: 4px;
    transition: background-color 0.3s ease, color 0.3s ease;
    border: 1px solid transparent;
}

.alphabet-filter a:hover {
    background-color: #e9f5ff;
    color: #0056b3;
    border-color: #007bff;
}

.alphabet-filter a.active {
    background-color: #007bff;
    color: #fff;
    border-color: #007bff;
    font-weight: bold;
}

/* Candidate Grid */
.candidate-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 25px;
    padding: 20px 0;
}

/* Candidate Card */
.candidate-card {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    padding: 20px;
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.candidate-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

.candidate-photo {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 15px;
    border: 3px solid #007bff;
    box-shadow: 0 0 0 4px rgba(0, 123, 255, 0.2);
}

.candidate-card h3 {
    margin-bottom: 8px;
    color: #333;
    font-size: 1.5em;
}

.candidate-country {
    color: #666;
    font-size: 0.95em;
    margin-bottom: 15px;
}

.view-profile-btn {
    display: inline-block;
    background-color: #28a745;
    color: #fff;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.view-profile-btn:hover {
    background-color: #218838;
}

.no-results {
    text-align: center;
    color: #777;
    font-size: 1.1em;
    padding: 40px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .candidate-grid {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }
    .candidates-page h1 {
        font-size: 1.8em;
    }
}

@media (max-width: 480px) {
    .candidate-grid {
        grid-template-columns: 1fr; /* Stack on very small screens */
    }
    .alphabet-filter {
        gap: 5px;
    }
    .alphabet-filter a {
        padding: 6px 10px;
        font-size: 0.9em;
    }
}
/* General form container */
.add-curriculum-page {
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    margin-top: 20px;
}

.add-curriculum-page h1 {
    text-align: center;
    color: #333;
    margin-bottom: 30px;
    font-size: 2.2em;
    font-weight: 600;
}

/* Form styling */
.curriculum-form {
    max-width: 700px;
    margin: 0 auto;
    background-color: #fff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #555;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="date"],
.form-group input[type="number"],
.form-group input[type="tel"],
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 1em;
    box-sizing: border-box; /* Include padding in width */
    transition: border-color 0.3s ease;
}

.form-group input[type="text"]:focus,
.form-group input[type="email"]:focus,
.form-group input[type="tel"]:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #007bff;
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}

.form-group textarea {
    resize: vertical; /* Allow vertical resizing */
    min-height: 100px;
}

/* File Upload Specific Styles */
.file-upload {
    padding: 15px;
    border: 2px dashed #a7d9ff;
    border-radius: 8px;
    background-color: #e6f7ff;
    text-align: center;
    margin-top: 25px;
}

.file-upload label {
    font-size: 1.1em;
    color: #0056b3;
    cursor: pointer;
    margin-bottom: 10px;
}

.file-upload input[type="file"] {
    display: block; /* Make it block to center better */
    margin: 10px auto;
    width: fit-content; /* Adjust width to content */
}

.file-upload .file-hint {
    font-size: 0.9em;
    color: #777;
    margin-top: 5px;
}

/* Submit Button */
.submit-btn {
    display: block;
    width: 100%;
    padding: 15px;
    background-color: #007bff;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 1.2em;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    margin-top: 30px;
}

.submit-btn:hover {
    background-color: #0056b3;
    transform: translateY(-2px);
}

/* Alert messages */
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    font-weight: bold;
    text-align: center;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .curriculum-form {
        padding: 20px;
    }
}
/* Candidate Profile Page */
.candidate-profile-page {
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    margin-top: 20px;
    text-align: center; /* Center content within the container */
}

.profile-card {
    max-width: 700px;
    margin: 0 auto; /* Center the profile card */
    background-color: #fff;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
}

.profile-photo {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 20px;
    border: 4px solid #007bff;
    box-shadow: 0 0 0 6px rgba(0, 123, 255, 0.2);
}

.profile-card h1 {
    color: #333;
    margin-bottom: 10px;
    font-size: 2.5em;
}

.profile-meta {
    color: #555;
    font-size: 1.1em;
    margin-bottom: 8px;
}

.profile-meta span {
    font-weight: 600;
    color: #333;
}

.profile-section {
    text-align: left; /* Align text left within section */
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.profile-section h2 {
    color: #007bff;
    font-size: 1.8em;
    margin-bottom: 15px;
    border-bottom: 2px solid #007bff;
    display: inline-block; /* Make underline fit text */
    padding-bottom: 5px;
}

.profile-section p {
    color: #444;
    line-height: 1.6;
    font-size: 1em;
}

.profile-actions {
    margin-top: 30px;
}

.download-cv-btn {
    display: inline-block;
    background-color: #28a745;
    color: #fff;
    padding: 12px 25px;
    border-radius: 50px; /* Pill shape */
    text-decoration: none;
    font-weight: bold;
    font-size: 1.1em;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 4px 10px rgba(40, 167, 69, 0.2);
}

.download-cv-btn:hover {
    background-color: #218838;
    transform: translateY(-3px);
}

.download-cv-btn i {
    margin-right: 8px;
}

.no-cv-available {
    color: #dc3545;
    font-weight: bold;
}

.error-message {
    text-align: center;
    color: #dc3545;
    font-size: 1.3em;
    padding: 40px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.back-to-list-btn {
    display: inline-block;
    margin-top: 30px;
    padding: 10px 20px;
    background-color: #6c757d;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

.back-to-list-btn:hover {
    background-color: #5a6268;
}

.profile-actions {
    margin-top: 30px;
    text-align: center; /* Centrar los botones */
}

.profile-actions a {
    display: inline-block;
    margin: 5px 10px; /* Espacio entre los botones */
    padding: 12px 25px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    font-size: 1.1em;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* Estilos específicos para el botón de descargar */
.download-cv-btn {
    background-color: #28a745; /* Verde */
    color: #fff;
}

.download-cv-btn:hover {
    background-color: #218838;
    transform: translateY(-2px);
}

/* Estilos específicos para el nuevo botón de ver PDF */
.view-cv-btn {
    background-color: #007bff; /* Azul */
    color: #fff;
}

.view-cv-btn:hover {
    background-color: #0056b3;
    transform: translateY(-2px);
}

.view-cv-btn i {
    margin-right: 8px;
}
/* --- Nuevo Estilo para el Separador en el Formulario de CV --- */
.divider {
    border-top: 1px solid #eee;
    margin: 30px 0;
}

/* --- Mejoras para el Formulario de CV (add_curriculum.php) --- */
.curriculum-form h2 {
    color: #007bff;
    font-size: 1.8em;
    margin-bottom: 20px;
    border-bottom: 2px solid #007bff;
    padding-bottom: 5px;
    display: inline-block;
    width: 100%; /* Para que la línea se extienda */
    text-align: left;
}

.curriculum-form textarea {
    min-height: 80px; /* Base height for all textareas */
}

/* Ajustes específicos para textareas más grandes */
textarea#education,
textarea#experience {
    min-height: 150px;
}

/* --- Mejoras para la Vista del Perfil (view_curriculum.php) --- */
.profile-section {
    text-align: left; /* Align text left within section */
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.profile-section h2 {
    color: #007bff;
    font-size: 1.8em;
    margin-bottom: 15px;
    border-bottom: 2px solid #007bff;
    display: inline-block; /* Make underline fit text */
    padding-bottom: 5px;
}

.profile-section p {
    color: #444;
    line-height: 1.6;
    font-size: 1em;
    white-space: pre-wrap; /* Mantiene saltos de línea del textarea */
}

/* Ajustes si no hay CV en PDF ni información detallada */
.profile-actions .no-cv-available:last-child {
    margin-top: 20px; /* Asegura espacio si ambos no están disponibles */
    color: #ffc107; /* Un color de advertencia */
}
/* --- Estilos del Modal (Pop-up) --- */
.modal {
    display: none; /* Oculto por defecto */
    position: fixed; /* Permanece en su lugar */
    z-index: 1000; /* Se superpone a todo */
    left: 0;
    top: 0;
    width: 100%; /* Ancho completo */
    height: 100%; /* Alto completo */
    overflow: auto; /* Habilita el desplazamiento si es necesario */
    background-color: rgba(0,0,0,0.6); /* Negro con opacidad */
    justify-content: center; /* Centrado horizontal */
    align-items: center; /* Centrado vertical */
    padding: 20px; /* Relleno alrededor del contenido del modal */
}

.modal-content {
    background-color: #fefefe;
    margin: auto; /* Ayuda con navegadores antiguos, flex lo maneja mejor */
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
    max-width: 500px;
    width: 90%; /* Ancho responsivo */
    text-align: center;
    position: relative;
    animation: fadeIn 0.3s ease-out; /* Efecto de aparición suave */
}

.modal-content h2 {
    color: #007bff;
    margin-bottom: 20px;
    font-size: 2em;
}

.modal-content p {
    font-size: 1.1em;
    line-height: 1.6;
    color: #333;
    margin-bottom: 30px;
}

.close-button {
    color: #aaa;
    float: right;
    font-size: 38px;
    font-weight: bold;
    position: absolute;
    top: 10px;
    right: 20px;
    cursor: pointer;
    transition: color 0.3s ease;
}

.close-button:hover,
.close-button:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.modal-actions {
    display: flex;
    justify-content: center;
    gap: 15px; /* Espacio entre botones */
    flex-wrap: wrap; /* Permite que los botones se envuelvan en pantallas más pequeñas */
}

.modal-login-btn,
.modal-register-btn {
    display: inline-block;
    padding: 12px 25px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    font-size: 1.1em;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.modal-login-btn {
    background-color: #007bff; /* Azul */
    color: #fff;
}

.modal-login-btn:hover {
    background-color: #0056b3;
    transform: translateY(-2px);
}

.modal-register-btn {
    background-color: #28a745; /* Verde */
    color: #fff;
}

.modal-register-btn:hover {
    background-color: #218838;
    transform: translateY(-2px);
}

/* Animación para el modal */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Ajustes para pantallas más pequeñas */
@media (max-width: 600px) {
    .modal-content {
        padding: 20px;
    }
    .modal-actions {
        flex-direction: column; /* Apila los botones verticalmente */
        align-items: stretch;
    }
    .modal-login-btn,
    .modal-register-btn {
        width: 100%;
    }
}
/* --- Register Page Styles --- */
.register-page {
    max-width: 500px;
    margin: 50px auto;
    padding: 30px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
}

.register-page h1 {
    color: #007bff;
    margin-bottom: 25px;
    font-size: 2.2em;
}

.register-form .form-group {
    margin-bottom: 20px;
    text-align: left;
}

.register-form label {
    display: block;
    margin-bottom: 8px;
    font-weight: bold;
    color: #333;
}

.register-form input[type="text"],
.register-form input[type="password"] {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-sizing: border-box; /* Ensures padding doesn't increase width */
    font-size: 1em;
}

.register-form input[type="text"]:focus,
.register-form input[type="password"]:focus {
    border-color: #007bff;
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}

.profile-type-selection {
    margin-top: 25px;
    margin-bottom: 30px;
    text-align: center;
}

.profile-type-selection label {
    font-weight: normal; /* Override bold from generic label */
    display: inline-block;
    margin-left: 10px;
    margin-right: 20px;
    cursor: pointer;
    color: #555;
}

.profile-type-selection input[type="radio"] {
    margin-right: 5px;
    transform: scale(1.2); /* Make radio buttons slightly larger */
    cursor: pointer;
}

.profile-type-selection div {
    display: inline-block;
    margin: 0 10px;
}

.register-form .submit-btn {
    background-color: #28a745; /* Green color for registration */
    color: white;
    padding: 14px 25px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.1em;
    font-weight: bold;
    transition: background-color 0.3s ease, transform 0.2s ease;
    width: 100%;
}

.register-form .submit-btn:hover {
    background-color: #218838;
    transform: translateY(-2px);
}

.login-link {
    margin-top: 20px;
    font-size: 0.95em;
    color: #555;
}

.login-link a {
    color: #007bff;
    text-decoration: none;
    font-weight: bold;
}

.login-link a:hover {
    text-decoration: underline;
}

/* Alert messages (optional, if you don't have them yet) */
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    text-align: left;
    font-weight: bold;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}
/* --- Estilos específicos para la sección de Gestión de Usuarios --- */

.users-management {
    background-color: #ffffff;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    margin-top: 20px;
}

.users-management h2 {
    color: #333;
    font-size: 1.8em;
    margin-bottom: 25px;
    border-bottom: 2px solid #eee;
    padding-bottom: 15px;
    text-align: center;
}

.table-responsive {
    overflow-x: auto; /* Permite desplazamiento horizontal en pantallas pequeñas */
}

.users-management table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
    font-size: 0.95em;
}

.users-management th,
.users-management td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
}

.users-management th {
    background-color: #f5f5f5;
    color: #555;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.users-management tbody tr:hover {
    background-color: #f9f9f9;
}

.users-management tbody tr:nth-child(even) {
    background-color: #fafafa; /* Ligeramente más oscuro para filas pares */
}

/* Estilos para el punto de estado */
.status-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 8px;
    vertical-align: middle;
}

.status-dot.active {
    background-color: #28a745; /* Verde para activo */
}

.status-dot.inactive {
    background-color: #dc3545; /* Rojo para inactivo */
}

/* Estilos para los botones de acción en la tabla */
.users-management .actions .btn-action {
    background-color: #007bff; /* Azul primario */
    color: #fff;
    border: none;
    padding: 8px 12px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.85em;
    transition: background-color 0.3s ease, transform 0.2s ease;
    text-decoration: none; /* En caso de que sean <a> */
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-right: 5px; /* Espacio entre botones */
}

.users-management .actions .btn-action:hover {
    background-color: #0056b3;
    transform: translateY(-1px);
}

.users-management .actions .btn-action:active {
    transform: translateY(0);
}

/* Estilos específicos para el botón de Desactivar/Activar */
.users-management .actions .toggle-user-active-btn {
    background-color: #6c757d; /* Gris para toggle por defecto */
}

.users-management .actions .toggle-user-active-btn:hover {
    background-color: #5a6268;
}

/* Estilo para el botón de "Activar" (cuando el usuario está inactivo) */
.users-management .actions .toggle-user-active-btn.inactive-user-btn {
    background-color: #ffc107; /* Amarillo/naranja para activar */
    color: #333;
}

.users-management .actions .toggle-user-active-btn.inactive-user-btn:hover {
    background-color: #e0a800;
}


/* Estilo específico para el botón de Eliminar */
.users-management .actions .delete-user-btn {
    background-color: #dc3545; /* Rojo para eliminar */
}

.users-management .actions .delete-user-btn:hover {
    background-color: #c82333;
}

/* Para pantallas más pequeñas */
@media (max-width: 768px) {
    .users-management {
        padding: 15px;
    }

    .users-management h2 {
        font-size: 1.5em;
        margin-bottom: 20px;
        padding-bottom: 10px;
    }

    .users-management th,
    .users-management td {
        padding: 8px 10px;
        font-size: 0.9em;
    }

    .users-management .actions .btn-action {
        padding: 6px 10px;
        font-size: 0.8em;
        margin-bottom: 5px; /* Añade espacio vertical entre botones */
        width: 100%; /* Haz que los botones ocupen el ancho completo */
        justify-content: center; /* Centra el icono y el texto */
    }
}
/* --- CSS para el formulario de Login --- */

/* Contenedor principal de la página de login */
.login-page {
    display: flex;
    flex-direction: column; /* Cambiado a columna para alinear elementos verticalmente */
    justify-content: center; /* Centra el contenido verticalmente */
    align-items: center;     /* Centra el contenido horizontalmente */
    min-height: calc(100vh - var(--header-height, 0px) - var(--footer-height, 0px)); /* Ajusta a la altura de la ventana. Asegura que --header-height y --footer-height estén definidos o sean 0px */
    padding: 20px; /* Espaciado interno */
    background-color: #f0f2f5; /* Color de fondo suave */
    box-sizing: border-box; /* Incluye padding en el tamaño total */
    text-align: center; /* Centra el texto directamente en el contenedor, incluyendo el h1 */
}

/* Título del formulario */
.login-page h1 {
    color: #333;
    /* text-align: center; -- Ya lo manejamos con text-align en .login-page */
    margin-bottom: 30px;
    font-size: 2.2em;
    font-weight: 600;
    width: 100%; /* Asegura que el h1 ocupe todo el ancho disponible para centrarse */
    max-width: 420px; /* Limita el ancho del título para que no sea excesivamente largo en pantallas grandes */
    box-sizing: border-box; /* Incluye padding/border en el cálculo del ancho */
}

/* Estilo general del formulario */
.login-form {
    background-color: #ffffff;
    padding: 40px;
    border-radius: 12px; /* Bordes más redondeados */
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); /* Sombra más pronunciada y suave */
    width: 100%;
    max-width: 420px; /* Ancho máximo del formulario */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 20px; /* Espacio entre los grupos de formulario */
    margin: 0 auto; /* Centra el formulario si el contenedor no es flex */
}

/* Grupo de cada campo (label + input) */
.login-form .form-group {
    margin-bottom: 0; /* Eliminado el margin-bottom para usar gap en el flexbox */
    text-align: left; /* Alinea el texto de labels a la izquierda dentro del formulario */
}

.login-form label {
    display: block;
    margin-bottom: 8px;
    color: #555;
    font-weight: 500;
    font-size: 1em;
}

.login-form input[type="text"],
.login-form input[type="password"] {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #dcdcdc;
    border-radius: 8px; /* Bordes más redondeados en inputs */
    font-size: 1.05em;
    color: #333;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    box-sizing: border-box;
}

.login-form input[type="text"]:focus,
.login-form input[type="password"]:focus {
    border-color: #007bff; /* Color azul al enfocar */
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25); /* Sombra suave al enfocar */
    outline: none; /* Elimina el contorno por defecto del navegador */
}

/* Estilo del botón de enviar */
.login-form .submit-btn {
    background-color: #007bff; /* Azul vibrante */
    color: white;
    padding: 14px 25px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1.15em;
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: background-color 0.3s ease, transform 0.2s ease;
    width: 100%; /* Botón de ancho completo */
    margin-top: 10px; /* Espacio superior */
}

.login-form .submit-btn:hover {
    background-color: #0056b3; /* Azul más oscuro al pasar el ratón */
    transform: translateY(-2px); /* Pequeño efecto de elevación */
}

.login-form .submit-btn:active {
    transform: translateY(0); /* Vuelve a su posición original al hacer clic */
}

/* Enlace de registro */
.login-form .register-link {
    text-align: center;
    margin-top: 25px;
    font-size: 0.95em;
    color: #666;
}

.login-form .register-link a {
    color: #007bff;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.login-form .register-link a:hover {
    color: #0056b3;
    text-decoration: underline;
}

/* Estilos para alertas (mensajes de éxito/error) */
.alert {
    padding: 12px 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    font-size: 1em;
    text-align: center;
    border: 1px solid transparent;
}

.alert.error {
    background-color: #f8d7da; /* Fondo rojo claro */
    color: #721c24; /* Texto rojo oscuro */
    border-color: #f5c6cb;
}

.alert.success {
    background-color: #d4edda; /* Fondo verde claro */
    color: #155724; /* Texto verde oscuro */
    border-color: #c3e6cb;
}

/* --- Media Queries para Responsividad --- */
@media (max-width: 600px) {
    .login-page {
        padding: 15px; /* Menos padding en pantallas pequeñas */
    }

    .login-page h1 {
        font-size: 1.8em; /* Título más pequeño */
        margin-bottom: 20px;
    }

    .login-form {
        padding: 25px; /* Menos padding en pantallas pequeñas */
        margin: 0 auto; /* Asegura el centrado incluso si hay otros elementos */
    }

    .login-form .submit-btn {
        padding: 12px 20px;
        font-size: 1.05em;
    }
}

/* Ajuste adicional para alturas de pantalla pequeñas */
@media (max-height: 700px) and (min-width: 601px) {
    .login-page {
        min-height: auto; /* Desactiva min-height para evitar overflow en alturas pequeñas si no es móvil */
        padding-top: 20px; /* Asegura un padding superior */
        padding-bottom: 20px; /* Asegura un padding inferior */
        display: block; /* Vuelve a block para permitir scroll si es necesario */
    }
}

/* Cuando es una pantalla pequeña y de baja altura (ej: teclado en móvil) */
@media (max-width: 600px) and (max-height: 600px) {
    .login-page {
        min-height: auto;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .login-form {
        padding: 15px;
    }
    .login-page h1 {
        margin-bottom: 15px;
    }
}
/* Estilos para la tarjeta del candidato */
.candidate-card {
    position: relative; /* Importante para posicionar la bandera */
    /* ... otros estilos existentes de .candidate-card ... */
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between; /* Para distribuir el contenido */
    min-height: 300px; /* Asegura un tamaño mínimo si el contenido es corto */
}

/* Estilos para la bandera del país */
.country-flag-candidatos {
    position: absolute;
    top: 10px; /* Distancia desde la parte superior */
    right: 10px; /* Distancia desde la derecha */
    width: 30px; /* Tamaño de la bandera */
    height: 20px; /* Altura de la bandera */
    border: 1px solid #ccc; /* Borde sutil para que destaque */
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    border-radius: 3px; /* Bordes ligeramente redondeados */
}

/* Ajuste para la foto del candidato si la bandera se superpone */
.candidate-photo {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 15px;
    border: 3px solid #007bff; /* Un borde distintivo */
}

/* Otros estilos que ya tengas para .candidate-grid, .candidate-profession, etc. */
.candidate-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 25px;
    padding: 20px 0;
}

.candidate-card h3 {
    margin-top: 10px;
    margin-bottom: 5px;
    color: #333;
}

.candidate-profession {
    font-size: 0.9em;
    color: #555;
    margin-bottom: 10px;
}

.candidate-country {
    font-size: 0.85em;
    color: #777;
    margin-bottom: 15px;
}

.view-profile-btn {
    display: inline-block;
    background-color: #007bff;
    color: white;
    padding: 8px 15px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.3s ease;
}

.view-profile-btn:hover {
    background-color: #0056b3;
}
/* Estilos para el ícono de verificado */
.verified-icon {
    color: #4CAF50; /* Un color verde distintivo */
    font-size: 0.9em; /* Más pequeño que el nombre */
    margin-left: 5px; /* Espacio entre el nombre y el check */
    vertical-align: middle; /* Alinea el check con el texto */
    /* Puedes usar un ícono de Font Awesome si lo tienes, por ejemplo: */
    /* font-family: 'Font Awesome 5 Free'; */
    /* font-weight: 900; */
    /* content: '\f00c'; /* Unicode para el check-circle */
}

/* Estilos para el botón "Verificar Mi Perfil" */
.verify-profile-btn {
    display: inline-block;
    background-color: #f0ad4e; /* Un color naranja para destacar */
    color: white;
    padding: 8px 15px;
    border-radius: 5px;
    text-decoration: none;
    font-size: 0.9em;
    margin-top: 10px; /* Espacio sobre el botón de Ver Perfil */
    transition: background-color 0.3s ease;
}

.verify-profile-btn:hover {
    background-color: #ec971f;
}
.verified-icon {
    display: inline-block;
    width: 20px; /* Tamaño del icono */
    height: 20px; /* Tamaño del icono */
    margin-left: 8px; /* Espacio entre el nombre y el icono */
    vertical-align: middle; /* Alinea el icono con el texto */
  background-image: url("data:image/png;base64,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");
    background-size: contain; /* Ajusta el SVG para que quepa en el tamaño definido */
    background-repeat: no-repeat;
    background-position: center;
    /* Eliminamos el content si ya estamos usando background-image */
    /* content: '✓'; */
}
/* Sección de Verificación en el Dashboard */
.verification-section {
    background-color: #fff;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    margin-bottom: 30px;
}

.verification-section h2 {
    color: #333;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}

.verification-status {
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    text-align: center;
}

.verification-status p {
    margin: 5px 0;
    font-size: 1.1em;
}

/* Estilos para estados específicos */
.verification-status.verified {
    background-color: #e6ffe6; /* Verde claro */
    border: 1px solid #4CAF50;
    color: #2e7d32;
}

.verification-status.pending {
    background-color: #fff3e0; /* Naranja claro */
    border: 1px solid #ff9800;
    color: #ef6c00;
}

.verification-status.unverified {
    background-color: #ffebee; /* Rojo claro */
    border: 1px solid #f44336;
    color: #d32f2f;
}

/* Iconos grandes para los estados */
.verified-icon-large,
.pending-icon-large,
.unverified-icon-large {
    font-size: 1.5em;
    margin-right: 10px;
    vertical-align: middle;
}

.verified-icon-large { color: #4CAF50; }
.pending-icon-large { color: #ff9800; }
.unverified-icon-large { color: #f44336; }

/* Formulario de Verificación */
.verification-form {
    border-top: 1px solid #eee;
    padding-top: 20px;
    margin-top: 20px;
    text-align: left; /* Alinea el texto del formulario a la izquierda */
}

.verification-form h3 {
    color: #555;
    margin-bottom: 15px;
}

.verification-form .form-description {
    font-size: 0.95em;
    color: #666;
    margin-bottom: 20px;
}

.verification-form .form-group {
    margin-bottom: 15px;
}

.verification-form label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #333;
}

.verification-form input[type="text"],
.verification-form input[type="file"] {
    width: calc(100% - 22px); /* Ajusta para padding y borde */
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 1em;
}

.verification-form input[type="file"] {
    padding: 8px; /* Un poco menos de padding para input file */
}

.verification-form small {
    display: block;
    color: #777;
    font-size: 0.85em;
    margin-top: 5px;
}

.verification-submit-btn {
    background-color: #007bff;
    color: white;
    padding: 12px 25px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.1em;
    transition: background-color 0.3s ease;
    width: auto; /* Para que el botón no ocupe todo el ancho */
    margin-top: 15px;
}

.verification-submit-btn:hover {
    background-color: #0056b3;
}

/* Estilos de alerta para mensajes */
.alert {
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    font-weight: bold;
    text-align: center;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.alert.info {
    background-color: #d1ecf1;
    color: #0c5460;
    border: 1px solid #bee5eb;
}
/* Add this to your dashboard.css or similar */

/* Styling for the new verification pending badge in the sidebar */
.sidebar-nav .badge {
    display: inline-block;
    padding: 3px 7px;
    font-size: 0.7em;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    border-radius: 0.75rem;
    background-color: #ffc107; /* Orange for pending */
    margin-left: 5px;
    animation: pulse 1.5s infinite; /* Optional: adds a pulsing effect */
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

/* New card for pending verifications */
.dashboard-cards .pending-verifications {
    background: linear-gradient(135deg, #ffc107, #ffecb3); /* Orange tones */
    color: #333; /* Darker text for readability */
}
.dashboard-cards .pending-verifications .card-icon {
    color: #e0a800; /* Darker orange icon */
}

/* Styles for manage_verifications.php table */
.verification-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    border-radius: 8px;
    overflow: hidden;
}
.verification-table th, .verification-table td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}
.verification-table th {
    background-color: #f8f8f8;
    font-weight: bold;
    color: #333;
    text-transform: uppercase;
    font-size: 0.9em;
}
.verification-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}
.verification-table tbody tr:hover {
    background-color: #f2f2f2;
}
.verification-table .actions button {
    padding: 8px 12px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9em;
    margin-right: 5px;
    transition: background-color 0.3s ease, transform 0.2s ease;
}
.verification-table .actions button:active {
    transform: translateY(1px);
}
.verification-table .actions .approve-verification-btn {
    background-color: #28a745; /* Green */
    color: white;
}
.verification-table .actions .approve-verification-btn:hover {
    background-color: #218838;
}
.verification-table .actions .reject-verification-btn {
    background-color: #dc3545; /* Red */
    color: white;
}
.verification-table .actions .reject-verification-btn:hover {
    background-color: #c82333;
}
.verification-table .verification-doc-link {
    color: #007bff;
    text-decoration: none;
    font-weight: 500;
}
.verification-table .verification-doc-link:hover {
    text-decoration: underline;
}
.no-verifications {
    text-align: center;
    padding: 40px;
    color: #777;
    font-size: 1.2em;
    background-color: #fdfdfd;
    border-radius: 8px;
    margin-top: 20px;
    border: 1px dashed #e0e0e0;
}

/* Styling for verification statuses (if you display them after action) */
.verification-status-text {
    font-weight: bold;
}
.status-approved {
    color: #28a745; /* Green */
}
.status-rejected {
    color: #dc3545; /* Red */
}
.status-pending {
    color: #ffc107; /* Orange */
}
/* --- Estilos Generales para Secciones de Gestión (manage_verifications, manage_users, etc.) --- */
.manage-section {
    background-color: #ffffff;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    margin-top: 25px;
}

.manage-section h2 {
    color: #333;
    font-size: 24px;
    margin-bottom: 20px;
    border-bottom: 2px solid #eee;
    padding-bottom: 10px;
}

/* --- Estilos para Tablas --- */
.manage-section table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
    font-size: 14px;
    color: #555;
}

.manage-section th,
.manage-section td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
}

.manage-section th {
    background-color: #f8f9fa;
    color: #343a40;
    font-weight: 600;
    text-transform: uppercase;
}

.manage-section tbody tr:hover {
    background-color: #f1f1f1;
    transition: background-color 0.2s ease-in-out;
}

/* Estilos específicos para celdas con acciones o estado */
.manage-section td .badge {
    padding: 5px 10px;
    border-radius: 5px;
    font-weight: bold;
    text-transform: capitalize;
    font-size: 0.85em;
}

/* Colores para el badge de "Pendiente" */
.manage-section td .badge:contains("Pendiente") {
    background-color: #ffc107; /* Amarillo */
    color: #333;
}
/* Si tuvieras 'approved' o 'rejected' también: */
.manage-section td .badge:contains("approved") {
    background-color: #28a745; /* Verde */
    color: #fff;
}
.manage-section td .badge:contains("rejected") {
    background-color: #dc3545; /* Rojo */
    color: #fff;
}


/* --- Estilos para Enlaces de Documentos --- */
.manage-section td a {
    color: #007bff;
    text-decoration: none;
    transition: color 0.2s ease;
}

.manage-section td a:hover {
    color: #0056b3;
    text-decoration: underline;
}

/* --- Estilos para Botones de Acción --- */
.verification-actions button {
    padding: 8px 15px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    margin-right: 8px; /* Espacio entre botones */
    transition: background-color 0.2s ease, transform 0.1s ease;
}

.verification-actions button:last-child {
    margin-right: 0;
}

.approve-verification-btn {
    background-color: #28a745; /* Verde */
    color: white;
}

.approve-verification-btn:hover {
    background-color: #218838;
    transform: translateY(-1px);
}

.reject-verification-btn {
    background-color: #dc3545; /* Rojo */
    color: white;
}

.reject-verification-btn:hover {
    background-color: #c82333;
    transform: translateY(-1px);
}

/* --- Mensaje cuando no hay verificaciones --- */
.no-verifications {
    text-align: center;
    padding: 40px 20px;
    background-color: #f8f8f8;
    border-radius: 8px;
    color: #666;
    font-size: 16px;
    font-style: italic;
    margin-top: 20px;
}

/* --- Estilos Responsivos (ajusta según tus necesidades) --- */
@media (max-width: 768px) {
    .manage-section {
        padding: 15px;
    }

    .manage-section table {
        display: block;
        overflow-x: auto;
        white-space: nowrap; /* Evita que el contenido se rompa en varias líneas */
    }

    .manage-section th,
    .manage-section td {
        padding: 8px 10px;
    }

    .verification-actions button {
        display: block; /* Apila los botones en pantallas pequeñas */
        width: 100%;
        margin-bottom: 5px;
        margin-right: 0;
    }
}
/* --- ESTILOS GENERALES PARA SECCIONES DE CONTENIDO DEL DASHBOARD --- */
.main-panel-content {
    background-color: #ffffff; /* Fondo blanco para las tarjetas */
    padding: 30px;
    border-radius: 12px; /* Bordes más suaves */
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08); /* Sombra más pronunciada pero suave */
    margin-top: 20px; /* Espacio debajo del encabezado principal */
    min-height: calc(100vh - 180px); /* Asegura que el contenido tenga una altura mínima */
    display: flex;
    flex-direction: column;
    gap: 25px; /* Espacio entre secciones internas si las hubiera */
}

.main-panel-content h1 {
    text-align: center;
    color: #2c3e50;
    margin-bottom: 30px;
    font-size: 2.2em;
    font-weight: 700;
}

/* --- ESTILOS PARA LISTAS DE POSTULACIONES Y OFERTAS --- */
.applications-list,
.offer-list {
    display: grid;
    gap: 20px; /* Espacio entre las tarjetas */
    /* Para pantallas más grandes, puedes usar columnas */
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

/* --- ESTILOS PARA TARJETAS INDIVIDUALES (Postulación/Oferta Guardada) --- */
.application-item,
.offer-card {
    background-color: #fcfcfc; /* Fondo ligeramente diferente para destacar */
    border: 1px solid #e7e7e7; /* Borde sutil */
    border-radius: 10px; /* Bordes redondeados */
    padding: 25px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06); /* Sombra suave */
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Transición suave al pasar el ratón */
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Para empujar el botón hacia abajo si es necesario */
}

.application-item:hover,
.offer-card:hover {
    transform: translateY(-8px); /* Efecto de "levantar" */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12); /* Sombra más grande al pasar el ratón */
}

.application-item h3,
.offer-card h2 {
    margin-top: 0;
    margin-bottom: 12px;
    font-size: 1.6em;
    color: #34495e; /* Un azul más oscuro */
}

.application-item h3 a,
.offer-card h2 a {
    text-decoration: none;
    color: inherit; /* Hereda el color del h3/h2 */
    transition: color 0.2s ease;
}

.application-item h3 a:hover,
.offer-card h2 a:hover {
    color: #3498db; /* Un azul brillante al pasar el ratón */
}

.application-item p,
.offer-card p {
    margin-bottom: 8px;
    color: #555;
    line-height: 1.5;
}

.application-item p strong,
.offer-card p strong {
    color: #333;
}

/* --- ESTILOS PARA EL BADGE DE ESTADO EN POSTULACIONES --- */
.status-badge {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.9em;
    font-weight: bold;
    color: white;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 5px;
}

.status-badge.status-pendiente {
    background-color: #ffc107; /* Amarillo */
    color: #333;
}

.status-badge.status-aprobado {
    background-color: #28a745; /* Verde */
}

.status-badge.status-rechazado {
    background-color: #dc3545; /* Rojo */
}

.status-badge.status-en-revision {
    background-color: #17a2b8; /* Azul claro */
}

/* --- ESTILOS PARA BOTONES DENTRO DE LAS TARJETAS --- */
.app-actions,
.offer-card .btn-primary { /* Asegúrate de que el botón de la oferta guardada se alinee bien */
    margin-top: 20px;
    text-align: right; /* Alinea el botón a la derecha */
}

.btn-secondary,
.btn-primary {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 600;
    transition: background-color 0.2s ease, transform 0.1s ease;
    cursor: pointer;
    border: none;
}

.btn-primary {
    background-color: #007bff; /* Azul primario */
    color: white;
}

.btn-primary:hover {
    background-color: #0056b3;
    transform: translateY(-1px);
}

.btn-secondary {
    background-color: #6c757d; /* Gris secundario */
    color: white;
}

.btn-secondary:hover {
    background-color: #5a6268;
    transform: translateY(-1px);
}


/* --- ESTILOS PARA MENSAJES DE NO RESULTADOS --- */
.no-results {
    text-align: center;
    padding: 40px 20px;
    background-color: #f8f8f8;
    border-radius: 8px;
    color: #666;
    font-size: 1.1em;
    font-style: italic;
    margin-top: 20px;
}

.no-results .btn-primary {
    margin-top: 15px;
}

/* --- ESTILOS PARA MENSAJES DE ALERTA (Éxito/Error) --- */
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 8px;
    font-weight: bold;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.alert.error {
    background-color: #f8d7da; /* Rojo claro */
    color: #721c24; /* Rojo oscuro */
    border: 1px solid #f5c6cb;
}

.alert.success {
    background-color: #d4edda; /* Verde claro */
    color: #155724; /* Verde oscuro */
    border: 1px solid #c3e6cb;
}

/* --- Media Queries para Responsividad (ejemplos, ajusta según necesidad) --- */
@media (max-width: 768px) {
    .main-content {
        padding: 15px;
    }
    .applications-list,
    .offer-list {
        grid-template-columns: 1fr; /* Una columna en pantallas pequeñas */
    }
    .main-panel-content {
        padding: 20px;
    }
}
/* Estilos generales para los módulos de contenido */
.content-module {
    background-color: #ffffff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    max-width: 900px; /* Ajustado para un diseño más amplio si es necesario */
    margin: 30px auto;
    box-sizing: border-box;
}

/* Estilos para company_profile_content.php (Vista del Perfil) */
.profile-container {
    text-align: center;
}

.profile-header {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.profile-header .logo {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 15px;
    border: 3px solid #f0f0f0;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.profile-header h1 {
    font-size: 2.5em;
    color: #333;
    margin-bottom: 5px;
}

.profile-header p {
    font-size: 1.1em;
    color: #666;
}

.profile-info {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    text-align: left;
    margin-bottom: 30px;
}

.profile-info > div {
    background-color: #f9f9f9;
    padding: 20px;
    border-radius: 6px;
    border: 1px solid #e9e9e9;
}

.profile-info label {
    display: block;
    font-weight: bold;
    color: #555;
    margin-bottom: 8px;
    font-size: 0.95em;
}

.profile-info p,
.profile-info a {
    font-size: 1em;
    color: #333;
    word-wrap: break-word; /* Para URLs largas */
}

.profile-info a {
    color: #007bff;
    text-decoration: none;
}

.profile-info a:hover {
    text-decoration: underline;
}

.profile-description {
    text-align: left;
    margin-bottom: 30px;
}

.profile-description h3 {
    font-size: 1.8em;
    color: #333;
    margin-bottom: 15px;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}

.profile-description p {
    line-height: 1.7;
    color: #444;
    white-space: pre-wrap; /* Para respetar saltos de línea del textarea */
}

.profile-actions {
    text-align: center;
    margin-top: 30px;
}

/* Estilos específicos para edit_company_profile_content.php (Formulario de Edición) */
.form-container {
    /* Ya definidos en .content-module, pero puedes sobreescribir si necesitas ajustes específicos para el formulario */
    max-width: 700px; /* Mantener el ancho específico para el formulario */
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    margin-bottom: 8px;
    font-weight: bold;
    color: #333;
    font-size: 1em;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="url"],
.form-group input[type="tel"], /* Añadido para el campo de teléfono */
.form-group textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-sizing: border-box;
    font-size: 1em;
    color: #555;
    transition: border-color 0.3s ease;
}

.form-group input[type="text"]:focus,
.form-group input[type="email"]:focus,
.form-group input[type="url"]:focus,
.form-group input[type="tel"]:focus,
.form-group textarea:focus {
    border-color: #007bff;
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}

.form-group textarea {
    min-height: 120px;
    resize: vertical;
}

.form-group input[type="file"] {
    border: 1px solid #ddd;
    padding: 8px;
    border-radius: 4px;
    background-color: #f8f8f8;
}

.current-logo-preview {
    margin-top: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: #f0f8ff; /* Fondo sutil para la previsualización */
    padding: 10px;
    border-radius: 5px;
    border: 1px dashed #cceeff;
}

.current-logo-preview img {
    max-width: 80px;
    height: auto;
    border: 1px solid #eee;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.current-logo-preview span {
    font-size: 0.9em;
    color: #555;
}

.form-actions {
    text-align: right;
    margin-top: 30px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

/* Estilos de botones (asegúrate de que no entren en conflicto con tus estilos globales) */
.btn-primary, .btn-secondary {
    padding: 12px 25px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1em;
    text-decoration: none;
    transition: background-color 0.3s ease, transform 0.2s ease;
    display: inline-block; /* Para que los <a> se comporten como botones */
    text-align: center;
}

.btn-primary {
    background-color: #007bff;
    color: white;
}

.btn-primary:hover {
    background-color: #0056b3;
    transform: translateY(-2px);
}

.btn-secondary {
    background-color: #6c757d;
    color: white;
}

.btn-secondary:hover {
    background-color: #5a6268;
    transform: translateY(-2px);
}

/* Estilos de Alertas */
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    font-size: 1em;
    line-height: 1.5;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.alert.info {
    background-color: #d1ecf1;
    color: #0c5460;
    border: 1px solid #bee5eb;
}

/* Asegúrate de que .main-header y .content también estén definidos en tu style.css
   Los moví del HTML a un CSS más general */
.main-header {
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.main-header h1 {
    margin: 0;
    color: #333;
}
/* Estilos para empresas confidenciales */
.company-card.confidential {
    background-color: #f0f0f0; /* Un color de fondo diferente para destacar */
    border: 1px dashed #ccc; /* Borde punteado */
}
.company-card.confidential .company-logo {
    filter: grayscale(100%); /* Logo en blanco y negro */
    opacity: 0.5;
    border-color: #bbb;
}
.company-card.confidential h3,
.company-card.confidential .company-industry {
    color: #777; /* Texto más suave */
}
.company-card .confidential-message {
    color: #D32F2F; /* Un color distintivo para el mensaje */
    font-weight: bold;
    margin-top: 10px;
}
/* Estilos base para todas las insignias de estado */
.status-badge {
    display: inline-block;
    padding: 5px 10px;
    border-radius: 5px;
    font-weight: bold;
    color: #fff; /* Color de texto por defecto para todos los estados */
    text-transform: capitalize; /* Capitaliza la primera letra del estado */
}

/* Estilo para el estado 'Pendiente' (Asumo que ya existe algo similar) */
.status-pendiente {
    background-color: #ffc107; /* Amarillo */
    color: #333; /* Texto oscuro para contraste */
}

/* Estilo para el estado 'Aprobado' */
.status-aprobado {
    background-color: #28a745; /* Verde */
}

/* Estilo para el estado 'Rechazado' */
.status-rechazado {
    background-color: #dc3545; /* Rojo */
}

/* Estilo para el estado 'En-revision' (o el nombre que uses, si lleva guiones) */
.status-en-revision {
    background-color: #17a2b8; /* Azul claro */
}

/* Estilo para el estado 'Entrevistado' */
.status-entrevistado {
    background-color: #6f42c1; /* Morado */
}

/* Estilo para el estado 'Contratado' */
.status-contratado {
    background-color: #007bff; /* Azul oscuro */
}

.application-item p {
        margin: 5px 0;
        color: #555;
    }

    .application-item strong {
        color: #333;
    }

    /* Modificaciones aquí para los estilos de estado */
    .status-display {
        display: inline-block; /* Hace que el span se comporte como un bloque para padding y fondo */
        padding: 5px 10px; /* Añade espacio alrededor del texto */
        border-radius: 5px; /* Bordes redondeados */
        font-weight: bold;
        text-transform: capitalize; /* Capitaliza la primera letra del estado */
        color: #FFFFFF; /* Color de texto blanco por defecto para todos los estados */
        /* Aseguramos que el texto sea blanco por defecto y luego se cambia si es necesario */
    }

    .status-pendiente {
        background-color: #ffc107; /* Amarillo */
        color: #333333; /* Texto oscuro para contraste en fondo amarillo */
    }
    .status-revisado {
        background-color: #17a2b8; /* Azul claro */
    }
    .status-aceptado {
        background-color: #28a745; /* Verde */
    }
    .status-rechazado {
        background-color: #dc3545; /* Rojo */
    }

    /* Resto de tus estilos CSS... */
    .application-message {
        background-color: #f0f8ff;
        border-left: 4px solid #007bff;
        padding: 10px 15px;
        margin-top: 15px;
        border-radius: 4px;
    }

    .application-message h4 {
        margin-top: 0;
        color: #0056b3;
        font-size: 1.1em;
    }

    .no-applications, .no-offers {
        text-align: center;
        padding: 20px;
        color: #777;
        font-style: italic;
    }

    .alert {
        padding: 15px;
        margin-bottom: 20px;
        border-radius: 8px;
        font-weight: bold;
        text-align: center;
        box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    }
    .alert.success {
        background-color: #d4edda;
        color: #155724;
        border: 1px solid #c3e6cb;
    }
    .alert.error {
        background-color: #f8d7da;
        color: #721c24;
        border: 1px solid #f5c6cb;
    }

    /* Estilos para la sección de actualización de estado */
    .status-update-section {
        margin-top: 15px;
        padding-top: 10px;
        border-top: 1px dashed #e0e0e0;
    }
    .status-update-section form {
        display: flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
    }
    .status-update-section label {
        font-weight: bold;
        color: #333;
    }
    .status-update-section select {
        padding: 8px 12px;
        border: 1px solid #ccc;
        border-radius: 5px;
        font-size: 1em;
        flex-grow: 1;
        max-width: 200px;
    }
    .status-update-section .btn-update-status {
        background-color: #007bff;
        color: white;
        padding: 8px 15px;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        font-size: 1em;
        transition: background-color 0.2s ease;
    }
    .status-update-section .btn-update-status:hover {
        background-color: #0056b3;
    }
    .status-update-section .form-status-message {
        margin-top: 10px;
        font-size: 0.9em;
        font-weight: bold;
        text-align: center;
        width: 100%;
    }
    .form-status-message.success {
        color: #28a745;
    }
    .form-status-message.error {
        color: #dc3545;
    }

    /* Contenedor para los botones de acción */
    .action-buttons-group {
        margin-top: 10px;
        padding-top: 8px;
        border-top: 1px dotted #e9e9e9;
        display: flex; /* Para que los botones estén en la misma línea */
        gap: 10px; /* Espacio entre los botones */
        flex-wrap: wrap; /* Permite que los botones se envuelvan si no hay espacio */
        justify-content: flex-start; /* Alinea los botones a la izquierda */
    }

    .btn-view-cv, .btn-view-profile {
        display: inline-block;
        color: white;
        padding: 8px 15px;
        border-radius: 5px;
        text-decoration: none;
        font-size: 0.95em;
        transition: background-color 0.2s ease;
    }
    .btn-view-cv {
        background-color: #6c757d; /* Gris oscuro */
    }
    .btn-view-cv:hover {
        background-color: #5a6268;
    }
    .btn-view-profile {
        background-color: #28a745; /* Verde */
    }
    .btn-view-profile:hover {
        background-color: #218838;
    }

    .no-cv-message {
        font-style: italic;
        color: #888;
        margin-top: 10px;
        padding: 8px 0; /* Para alinear con los botones si es necesario */
    }


    @media (max-width: 768px) {
        .job-offer-card {
            padding: 15px;
        }
        .job-offer-card h3 {
            font-size: 1.4em;
        }
        .application-item {
            padding: 10px;
        }
        .status-update-section form {
            flex-direction: column;
            align-items: flex-start;
        }
        .status-update-section select,
        .status-update-section .btn-update-status {
            width: 100%;
            max-width: unset;
        }
        .action-buttons-group {
            flex-direction: column; /* Apila los botones de acción en columnas */
            align-items: flex-start;
        }
        .btn-view-cv, .btn-view-profile {
            width: 100%; /* Ocupan todo el ancho disponible */
            text-align: center;
        }
    }
    /* Estilos generales (mantén los que ya tenías y añade/modifica estos) */
.container.add-curriculum-page {
    max-width: 900px;
    margin: 20px auto;
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    padding: 30px;
    box-sizing: border-box;
}
.curriculum-form {
    display: flex;
    flex-direction: column;
    gap: 15px; /* Espacio entre grupos de formulario */
}
.form-group {
    margin-bottom: 15px;
}
.form-group label {
    display: block;
    margin-bottom: 8px;
    font-weight: bold;
    color: #333;
}
.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="number"],
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 1em;
}
.form-group textarea {
    resize: vertical; /* Permite redimensionar verticalmente */
    min-height: 80px;
}
.file-upload {
    border: 1px dashed #ccc;
    padding: 15px;
    border-radius: 8px;
    background-color: #fcfcfc;
}
.file-hint {
    font-size: 0.9em;
    color: #666;
    margin-top: 5px;
}
.divider {
    border-top: 1px solid #eee;
    margin: 30px 0;
}
h1, h2 {
    color: #007bff;
    text-align: center;
    margin-bottom: 25px;
}
h2 {
    border-bottom: 2px solid #eee;
    padding-bottom: 10px;
    margin-top: 40px;
}
.submit-btn {
    background-color: #28a745;
    color: white;
    padding: 12px 25px;
    border: none;
    border-radius: 8px;
    font-size: 1.1em;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    width: fit-content;
    margin: 20px auto 0 auto; /* Centrar el botón */
    display: block;
}
.submit-btn:hover {
    background-color: #218838;
    transform: translateY(-2px);
}
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 5px;
    text-align: center;
}
.alert.success {
    background-color: #d4edda;
    color: #155724;
    border-color: #c3e6cb;
}
.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border-color: #f5c6cb;
}
.alert.info {
    background-color: #d1ecf1;
    color: #0c5460;
    border-color: #bee5eb;
}

/* Estilos para la sección de Habilidades Dinámicas */
.skills-container {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    background-color: #fefefe;
}
.skill-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    gap: 10px; /* Espacio entre los elementos de una habilidad */
}
.skill-item input[type="text"] {
    flex-grow: 2; /* Permite que el input de nombre de habilidad crezca más */
    max-width: 40%; /* Limita el ancho máximo para que el slider tenga espacio */
}
.skill-item input[type="range"] {
    width: 150px; /* Ancho fijo para el slider */
    flex-shrink: 0;
    -webkit-appearance: none; /* Eliminar estilos predeterminados de WebKit */
    appearance: none;
    height: 8px;
    background: #d3d3d3;
    outline: none;
    opacity: 0.7;
    -webkit-transition: .2s;
    transition: opacity .2s;
    border-radius: 5px;
}
.skill-item input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #007bff;
    cursor: pointer;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
.skill-item input[type="range"]::-moz-range-thumb {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #007bff;
    cursor: pointer;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
.skill-item .skill-level-display {
    width: 40px; /* Ancho fijo para el display del número */
    text-align: center;
    font-weight: bold;
    color: #007bff;
    flex-shrink: 0;
}
.skill-item button {
    background-color: #dc3545;
    color: white;
    border: none;
    padding: 5px 8px; /* Ajustado el padding para hacer el botón más pequeño */
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.8em; /* Reducido el tamaño de la fuente del botón */
    transition: background-color 0.2s;
    flex-shrink: 0;
    width: 30px; /* Ancho fijo para el botón */
    height: 30px; /* Alto fijo para el botón */
    display: flex;
    justify-content: center;
    align-items: center;
}
.skill-item button:hover {
    background-color: #c82333;
}
#addSkillBtn {
    background-color: #007bff;
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1em;
    transition: background-color 0.2s;
    margin-top: 15px;
}
#addSkillBtn:hover {
    background-color: #0056b3;
}
/* css/subscription_details.css (o añade al final de dashboard.css) */

/* Estilos generales del contenedor para mantener la coherencia si no lo tienes */
.subscription-details-container {
    background-color: #ffffff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    max-width: 900px;
    margin: 30px auto;
    font-family: 'Arial', sans-serif;
    color: #333;
    animation: fadeIn 0.5s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

h2 {
    color: #2c3e50;
    text-align: center;
    margin-bottom: 30px;
    font-size: 2em;
    font-weight: 600;
    border-bottom: 2px solid #e0e0e0;
    padding-bottom: 15px;
}

/* Estilos para el historial de suscripciones dentro de la tarjeta */
.card .table { /* Target the table inside a card */
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px; /* Separación con el encabezado de la tarjeta */
    border: 1px solid #ddd; /* Borde general de la tabla */
    border-radius: 8px; /* Bordes redondeados para la tabla */
    overflow: hidden; /* Asegura que los bordes redondeados se apliquen correctamente */
}

.card .table thead th {
    background-color: #34495e; /* Azul oscuro para encabezados */
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9em;
    padding: 12px 15px;
    border-bottom: 1px solid #ddd; /* Borde inferior para separar headers */
    text-align: left;
}

.card .table tbody td {
    padding: 12px 15px;
    border-bottom: 1px solid #eee; /* Borde inferior para cada celda */
    text-align: left;
    color: #555;
    font-size: 0.95em;
}

.card .table.table-striped tbody tr:nth-child(even) {
    background-color: #f8f8f8; /* Un gris muy claro para filas pares (similar a table-striped pero más suave) */
}

.card .table tbody tr:hover {
    background-color: #e9e9e9; /* Resaltar filas al pasar el ratón */
    transition: background-color 0.3s ease;
}

/* Eliminar el borde inferior de la última fila para una apariencia más limpia */
.card .table tbody tr:last-child td {
    border-bottom: none;
}

/* Estilos para los diferentes estados de la suscripción */
.status-active {
    color: #28a745; /* Verde para activo */
    font-weight: bold;
}

.status-cancelled {
    color: #dc3545; /* Rojo para cancelado */
    font-weight: bold;
}

.status-pending {
    color: #ffc107; /* Amarillo/Naranja para pendiente */
    font-weight: bold;
}

.status-expired {
    color: #6c757d; /* Gris para expirado */
    font-weight: bold;
}

/* Mensajes de alerta (ajuste para tus clases actuales si son diferentes a las que te di) */
.alert.error, .alert.success, .alert.info, .alert.warning {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
    border-color: #c3e6cb;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border-color: #f5c6cb;
}

.alert.info {
    background-color: #d1ecf1;
    color: #0c5460;
    border-color: #bee5eb;
}

.alert.warning {
    background-color: #fff3cd;
    color: #856404;
    border-color: #ffeeba;
}

.alert-message .btn-close { /* Ajusta según tu botón de cerrar alerta */
    background: none;
    border: none;
    font-size: 1.5em;
    font-weight: bold;
    cursor: pointer;
    color: inherit;
    line-height: 1;
}

/* Responsive adjustments para tablas en pantallas pequeñas */
@media (max-width: 768px) {
    .card .table,
    .card .table thead,
    .card .table tbody,
    .card .table th,
    .card .table td,
    .card .table tr {
        display: block;
    }

    .card .table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .card .table tr {
        margin-bottom: 15px;
        border: 1px solid #ddd;
        border-radius: 8px;
    }

    .card .table td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
        text-align: right;
    }

    .card .table td:before {
        position: absolute;
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align: left;
        font-weight: bold;
        /* Usar data-label para el encabezado */
    }

    /* Definir los data-label para cada columna */
    .card .table td:nth-of-type(1):before { content: "Plan"; }
    .card .table td:nth-of-type(2):before { content: "Fecha Inicio"; }
    .card .table td:nth-of-type(3):before { content: "Fecha Fin"; }
    .card .table td:nth-of-type(4):before { content: "Estado"; }
    .card .table td:nth-of-type(5):before { content: "Monto Pagado"; }
    .card .table td:nth-of-type(6):before { content: "Método Pago"; }
    .card .table td:nth-of-type(7):before { content: "ID Transacción"; }
}   
/* css/subscription_details.css o añadir al final de dashboard.css */

/* Estilos generales del contenedor */
.subscription-details-container {
    background-color: #ffffff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    max-width: 900px;
    margin: 30px auto;
    font-family: 'Arial', sans-serif;
    color: #333;
    animation: fadeIn 0.5s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

h2 {
    color: #2c3e50;
    text-align: center;
    margin-bottom: 30px;
    font-size: 2em;
    font-weight: 600;
    border-bottom: 2px solid #e0e0e0;
    padding-bottom: 15px;
}

/* Sección de detalles del usuario */
.user-info-section, .current-plan-section, .subscription-history-section, .subscription-management-section {
    margin-bottom: 40px;
    padding: 20px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #f9f9f9;
}

.user-info-section h3, .current-plan-section h3, .subscription-history-section h3, .subscription-management-section h3 {
    color: #34495e;
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 1.5em;
    font-weight: 500;
    border-bottom: 1px dashed #cfd8dc;
    padding-bottom: 10px;
}

.user-info-section p, .current-plan-section p {
    margin-bottom: 10px;
    line-height: 1.6;
    font-size: 1em;
}

.user-info-section p strong, .current-plan-section p strong {
    color: #555;
    min-width: 150px; /* Alinea los dos puntos */
    display: inline-block;
}

/* Estilos para el formulario de gestión de suscripciones */
.subscription-management-form label {
    display: block;
    margin-bottom: 8px;
    color: #34495e;
    font-weight: bold;
}

.subscription-management-form input[type="date"],
.subscription-management-form select,
.subscription-management-form textarea {
    width: calc(100% - 20px); /* Ajusta el padding */
    padding: 10px;
    margin-bottom: 20px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 1em;
    box-sizing: border-box; /* Incluye padding y border en el ancho */
    transition: border-color 0.3s ease;
}

.subscription-management-form input[type="date"]:focus,
.subscription-management-form select:focus,
.subscription-management-form textarea:focus {
    border-color: #3498db;
    outline: none;
    box-shadow: 0 0 5px rgba(52, 152, 219, 0.5);
}

.subscription-management-form button {
    background-color: #28a745; /* Verde para guardar/actualizar */
    color: white;
    padding: 12px 25px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.1em;
    font-weight: 500;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.subscription-management-form button:hover {
    background-color: #218838; /* Verde más oscuro al pasar el ratón */
    transform: translateY(-2px);
}

/* Estilos de la tabla de historial de suscripciones */
.subscription-history-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
}

.subscription-history-table th,
.subscription-history-table td {
    padding: 12px 15px;
    border: 1px solid #ddd;
    text-align: left;
}

.subscription-history-table th {
    background-color: #34495e; /* Oscuro para encabezados */
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9em;
}

.subscription-history-table tr:nth-child(even) {
    background-color: #f2f2f2; /* Cebra para filas */
}

.subscription-history-table tr:hover {
    background-color: #e9e9e9;
    transition: background-color 0.3s ease;
}

/* Estados de suscripción en la tabla */
.status-active {
    color: #28a745; /* Verde */
    font-weight: bold;
}

.status-cancelled {
    color: #dc3545; /* Rojo */
    font-weight: bold;
}

.status-pending {
    color: #ffc107; /* Amarillo/Naranja */
    font-weight: bold;
}

.status-expired {
    color: #6c757d; /* Gris */
    font-weight: bold;
}

/* Mensajes de alerta (ya deberías tener estos o similares en dashboard.css) */
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
    border-color: #c3e6cb;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
    border-color: #f5c6cb;
}

.close-alert {
    background: none;
    border: none;
    font-size: 1.5em;
    font-weight: bold;
    cursor: pointer;
    color: inherit; /* Hereda el color del texto de la alerta */
    line-height: 1;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .subscription-details-container {
        margin: 20px;
        padding: 20px;
    }

    h2 {
        font-size: 1.8em;
    }

    .subscription-history-table,
    .subscription-history-table thead,
    .subscription-history-table tbody,
    .subscription-history-table th,
    .subscription-history-table td,
    .subscription-history-table tr {
        display: block;
    }

    .subscription-history-table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .subscription-history-table tr {
        margin-bottom: 15px;
        border: 1px solid #ddd;
        border-radius: 8px;
    }

    .subscription-history-table td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
        text-align: right;
    }

    .subscription-history-table td:before {
        position: absolute;
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align: left;
        font-weight: bold;
        content: attr(data-label); /* Usa data-label para el encabezado */
    }
}

/* Ocultar el botón de devolver producto si la venta se cancela (según tu instrucción guardada) */
/* Esto es un ejemplo, necesitarías aplicar una clase `sale-cancelled` al contenedor si la venta se cancela */
.sale-cancelled #btndevolverproducto {
    display: none;
}
/* En main.css */

/* Ocultar el botón de alternar por defecto en escritorio */
.menu-toggle {
    display: none;
    background: none;
    border: none;
    color: #212728; /* O el color de tu header */
    font-size: 1.8em;
    cursor: pointer;
    padding: 0 15px;
}

/* Estilos para dispositivos móviles */
@media (max-width: 768px) { /* Ajusta este breakpoint según tus necesidades */
    .header {
        flex-wrap: wrap; /* Permite que los elementos se envuelvan */
    }

    .menu-toggle {
        display: block; /* Mostrar el botón de alternar en móviles */
    }

    .navbar {
        width: 100%;
        display: none; /* Ocultar el menú por defecto en móviles */
        flex-direction: column;
        background-color: #34495e; /* Color de fondo del menú desplegable */
        position: absolute;
        top: 70px; /* Ajusta según la altura de tu header */
        left: 0;
        z-index: 1000;
        box-shadow: 0 5px 10px rgba(0,0,0,0.2);
        padding: 10px 0;
        transition: all 0.3s ease-in-out;
        transform: translateY(-100%); /* Ocultar arriba */
        opacity: 0;
        pointer-events: none;
    }

    .navbar.active {
        display: flex; /* Mostrar el menú cuando tenga la clase 'active' */
        transform: translateY(0); /* Mostrar en posición normal */
        opacity: 1;
        pointer-events: auto;
    }

    .navbar ul {
        flex-direction: column;
        width: 100%;
        padding: 0;
    }

    .navbar ul li {
        margin: 0;
        text-align: center;
        width: 100%;
    }

    .navbar ul li a {
        padding: 15px 20px;
        display: block;
        color: white;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }

    .navbar ul li:last-child a {
        border-bottom: none;
    }

    .navbar ul li a:hover {
        background-color: #2c3e50; /* Color de fondo al pasar el ratón */
    }
}
 /* Estilos del Footer */
    .site-footer {
        background-color: #2c3e50; /* Dark blue-gray */
        color: #ecf0f1; /* Light gray text */
        padding: 40px 20px;
        margin-top: 50px;
        font-size: 0.9em;
        text-align: center;
    }

    .site-footer .footer-content {
        max-width: 1200px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        gap: 30px;
    }

    .site-footer .footer-section {
        flex: 1;
        min-width: 200px;
        margin-bottom: 20px;
    }

    .site-footer h4 {
        color: #3498db; /* Blue heading */
        margin-bottom: 15px;
        font-size: 1.2em;
        text-transform: uppercase;
    }

    .site-footer ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .site-footer ul li {
        margin-bottom: 10px;
    }

    .site-footer ul li a {
        color: #bdc3c7; /* Lighter gray for links */
        text-decoration: none;
        transition: color 0.3s ease;
    }

    .site-footer ul li a:hover {
        color: #3498db;
    }

    .site-footer .social-icons a {
        color: #ecf0f1;
        font-size: 1.5em;
        margin: 0 10px;
        transition: color 0.3s ease;
    }

    .site-footer .social-icons a:hover {
        color: #3498db;
    }

    .site-footer .footer-bottom {
        margin-top: 30px;
        padding-top: 20px;
        border-top: 1px solid #34495e; /* Darker line */
        font-size: 0.85em;
        color: #95a5a6;
    }


    /* Responsive adjustments */
    @media (max-width: 768px) {
        .filters-and-search {
            flex-direction: column;
            align-items: stretch;
        }
        .filters-and-search select,
        .filters-and-search input[type="text"],
        .filters-and-search button {
            width: 100%;
            flex: none;
        }
        .job-card-new .card-body {
            flex-direction: column;
            align-items: center;
            text-align: center;
        }
        .job-card-new .rt-single-icon-box {
            flex-direction: column;
            align-items: center;
        }
        .job-card-new .icon-thumb {
            margin-right: 0;
            margin-bottom: 15px;
        }
        .job-card-new .iconbox-extra {
            margin-left: 0;
            margin-top: 15px;
            width: 100%;
            align-items: center;
        }
        .job-card-new .body-font-4 {
            justify-content: center;
            text-align: center; /* Ensure text is centered */
        }
        /* Responsive Footer */
        .site-footer .footer-content {
            flex-direction: column;
            align-items: center;
        }

        .site-footer .footer-section {
            width: 100%;
            text-align: center;
            min-width: unset; /* Remove min-width for small screens */
        }
    }
.badge.bg-warning {
    background-color: #ffc107 !important;
}

.badge.text-dark {
    color: #212529 !important;
}

.badge.bg-success {
    background-color: #28a745 !important;
}

.badge.bg-danger {
    background-color: #dc3545 !important;
}

.badge.bg-secondary {
    background-color: #6c757d !important;
}