/* Estilos adicionales para el Sistema de Gestión de Correspondencia */

/* Ocultar vistas inactivas */
.vista.hidden {
    display: none;
}

/* Animación de carga */
.animate-pulse {
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* Estilos para badges de tipo de documento */
.badge-oficio-recibido {
    background-color: #dbeafe;
    color: #1e40af;
}

.badge-oficio-enviado {
    background-color: #e0e7ff;
    color: #3730a3;
}

.badge-carta-recibido {
    background-color: #dcfce7;
    color: #166534;
}

.badge-carta-enviado {
    background-color: #fef3c7;
    color: #92400e;
}

/* Hover en filas de documentos */
.documento-row:hover {
    background-color: #f9fafb;
}

/* Toast animations */
#toast {
    transition: opacity 0.3s ease-in-out;
}

#toast.show {
    display: block;
    opacity: 1;
}

#toast.hide {
    opacity: 0;
}

/* Botón de análisis IA destacado */
#btn-analizar {
    box-shadow: 0 4px 6px -1px rgba(147, 51, 234, 0.3);
}

#btn-analizar:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 8px -1px rgba(147, 51, 234, 0.4);
}

/* Estilos para el spinner de carga */
.spinner {
    border: 3px solid #f3f3f3;
    border-top: 3px solid #7c3aed;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    animation: spin 1s linear infinite;
    display: inline-block;
    margin-right: 8px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Responsive adjustments */
@media (max-width: 640px) {
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

/* Link styles */
.link-documento {
    color: #2563eb;
    text-decoration: none;
}

.link-documento:hover {
    text-decoration: underline;
}

/* Empty state */
.empty-state {
    text-align: center;
    padding: 3rem;
    color: #6b7280;
}

.empty-state svg {
    width: 48px;
    height: 48px;
    margin: 0 auto 1rem;
    color: #9ca3af;
}

/* ============================================
   BOTONES DE MENÚ DE NAVEGACIÓN
   ============================================ */

.menu-btn {
    border: 2px solid transparent;
    cursor: pointer;
}

/* CARTAS NEMAEC - Amarillo/Amber */
.menu-btn-nemaec {
    background-color: #fef3c7;
    color: #92400e;
    border-color: #fcd34d;
}

.menu-btn-nemaec:hover {
    background-color: #fde68a;
}

.menu-btn-nemaec.active {
    background-color: #f59e0b;
    color: white;
    border-color: #d97706;
    box-shadow: 0 4px 6px -1px rgba(245, 158, 11, 0.4);
}

/* OFICIOS - Azul */
.menu-btn-oficios {
    background-color: #dbeafe;
    color: #1e40af;
    border-color: #93c5fd;
}

.menu-btn-oficios:hover {
    background-color: #bfdbfe;
}

.menu-btn-oficios.active {
    background-color: #2563eb;
    color: white;
    border-color: #1d4ed8;
    box-shadow: 0 4px 6px -1px rgba(37, 99, 235, 0.4);
}

/* CARTAS RECIBIDAS - Verde */
.menu-btn-recibidas {
    background-color: #dcfce7;
    color: #166534;
    border-color: #86efac;
}

.menu-btn-recibidas:hover {
    background-color: #bbf7d0;
}

.menu-btn-recibidas.active {
    background-color: #16a34a;
    color: white;
    border-color: #15803d;
    box-shadow: 0 4px 6px -1px rgba(22, 163, 74, 0.4);
}
